SSH-AGENT(1)               OpenBSD Reference Manual               SSH-AGENT(1)

NAME
     ssh-agent - authentication agent

SYNOPSIS
     ssh-agent command

DESCRIPTION
     ssh-agent is a program to hold authentication private keys.  The idea is
     that ssh-agent is started in the beginning of an X-session or a login
     session, and all other windows or programs are started as children of the
     ssh-agent program (the command normally starts X or is the user shell).
     Programs started under the agent inherit a connection to the agent, and
     the agent is automatically used for RSA authentication when logging to
     other machines using ssh(1).

     The agent initially does not have any private keys.  Keys are added using
     ssh-add(1).  When executed without arguments, ssh-add(1) adds the
     $HOME/.ssh/identity file.  If the identity has a passphrase, ssh-add(1)
     asks for the passphrase (using a small X11 application if running under
     X11, or from the terminal if running without X).  It then sends the iden-
     tity to the agent.  Several identities can be stored in the agent; the
     agent can automatically use any of these identities.  ssh-add -l displays
     the identities currently held by the agent.

     The idea is that the agent is run in the user's local PC, laptop, or ter-
     minal.  Authentication data need not be stored on any other machine, and
     authentication passphrases never go over the network.  However, the con-
     nection to the agent is forwarded over SSH remote logins, and the user
     can thus use the privileges given by the identities anywhere in the net-
     work in a secure way.

     A connection to the agent is inherited by child programs: A unix-domain
     socket is created (/tmp/ssh-XXXX/agent.<pid>), and the name of this sock-
     et is stored in the SSH_AUTH_SOCK environment variable.  The socket is
     made accessible only to the current user.  This method is easily abused
     by root or another instance of the same user.

     The agent exits automatically when the command given on the command line
     terminates.

FILES
     $HOME/.ssh/identity
             Contains the RSA authentication identity of the user.  This file
             should not be readable by anyone but the user.  It is possible to
             specify a passphrase when generating the key; that passphrase
             will be used to encrypt the private part of this file.  This file
             is not used by ssh-agent but is normally added to the agent using
             ssh-add(1) at login time.

     /tmp/ssh-XXXX/agent.<pid>,
             Unix-domain sockets used to contain the connection to the authen-
             tication agent.  These sockets should only be readable by the
             owner.  The sockets should get automatically removed when the
             agent exits.

AUTHOR
     Tatu Ylonen <ylo@cs.hut.fi>

     OpenSSH is a derivative of the original (free) ssh 1.2.12 release, but
     with bugs removed and newer features re-added.   Rapidly after the 1.2.12
     release, newer versions bore successively more restrictive licenses.


     This version of OpenSSH

     o   has all components of a restrictive nature (ie. patents, see ssl(8))
         directly removed from the source code; any licensed or patented com-
         ponents are chosen from external libraries.

     o   has been updated to support ssh protocol 1.5.

     o   contains added support for kerberos(8) authentication and ticket
         passing.

     o   supports one-time password authentication with skey(1).

     The libraries described in ssl(8) are required for proper operation.

SEE ALSO
     ssh(1),  ssh-add(1),  ssh-keygen(1),  sshd(8),  ssl(8)

OpenBSD 2.6                   September 25, 1999                             2
