82.2 SSH Agent
20211005
Entering the passphrase every time you want to do a remote copy or make a remote connection can be tiring. There is a simple mechanism provided to avoid this. by starting up a shell that runs an agent or by informing the current shell to run an agent (ssh-agent) and inform the agent of the passphrase using ssh-add.
An example of starting up a shell with an agent:
Or else simply start the agent within the current shell:
Then inform the agent of the passphrase just once:
$ ssh-add
Need passphrase for .ssh/id_dsa
Enter passphrase for .ssh/id_dsa
Identity added: .ssh/id_dsa (.ssh/id_dsa)
The ssh-add command takes an optional argument to name the file containing the private key.
The -l
option of ssh-add lists the key(s)
currently kept in memory for this ssh-agent. The
-d
option removes an identity from memory, named by its file.
When connecting to a remote server over a terminal you can include the
following in ~/.profile
or ~/.bash_profile
to run the agent and
prompt for your GitHub key, for example:
The -t
for the test command ([
) tests if the
file descriptor 0 (stdin) is open on a terminal, which it will be for
an interactive terminal.
Note that r_linux_command("ssh-agent")
is usually run automatically
for a remote desktop X11 connection, and so only
ssh-add will be required. See Section
82.10 for details.
Your donation will support ongoing availability and give you access to the PDF version of this book. Desktop Survival Guides include Data Science, GNU/Linux, and MLHub. Books available on Amazon include Data Mining with Rattle and Essentials of Data Science. Popular open source software includes rattle, wajig, and mlhub. Hosted by Togaware, a pioneer of free and open source software since 1984. Copyright © 1995-2022 Graham.Williams@togaware.com Creative Commons Attribution-ShareAlike 4.0