1 c9d04e09 2005-02-14 devnull .TH SSH-AGENT 1
3 c9d04e09 2005-02-14 devnull ssh-agent \- SSH authentication agent
4 c9d04e09 2005-02-14 devnull .SH SYNOPSIS
5 c9d04e09 2005-02-14 devnull .B ssh-agent
9 c9d04e09 2005-02-14 devnull .I factotum-service
10 c9d04e09 2005-02-14 devnull .SH DESCRIPTION
11 c9d04e09 2005-02-14 devnull .I Ssh-agent
13 c9d04e09 2005-02-14 devnull .IR factotum (4)
14 c9d04e09 2005-02-14 devnull using the interface that
15 c9d04e09 2005-02-14 devnull .IR ssh (1)
16 c9d04e09 2005-02-14 devnull requires.
19 c9d04e09 2005-02-14 devnull .I ssh-agent
21 c9d04e09 2005-02-14 devnull .I factotum
22 c9d04e09 2005-02-14 devnull are running, the standard Unix SSH client
24 c9d04e09 2005-02-14 devnull .I ssh-agent
25 c9d04e09 2005-02-14 devnull (and, indirectly,
26 c9d04e09 2005-02-14 devnull .IR factotum )
27 c9d04e09 2005-02-14 devnull to authenticate to remote systems using RSA or DSA keys.
31 c9d04e09 2005-02-14 devnull .I ssh-agent
32 24a84948 2005-03-21 devnull via a Unix socket named
33 24a84948 2005-03-21 devnull .B ssh-agent.socket
34 24a84948 2005-03-21 devnull in the name space directory
36 24a84948 2005-03-21 devnull .IR intro (4)).
37 24a84948 2005-03-21 devnull Note that although the socket is posted in the name space
38 24a84948 2005-03-21 devnull directory, it is not for 9P conversations.
40 24a84948 2005-03-21 devnull expects the name of this socket to be in the environment as
41 c9d04e09 2005-02-14 devnull .BR $SSH_AGENT_SOCK ,
42 c9d04e09 2005-02-14 devnull and expects the agent to be running with process id
43 c9d04e09 2005-02-14 devnull .BR $SSH_AGENT_PID .
44 c9d04e09 2005-02-14 devnull .I Ssh-agent
45 c9d04e09 2005-02-14 devnull prints shell commands to set these two variables
46 c9d04e09 2005-02-14 devnull before forking itself into the background.
47 c9d04e09 2005-02-14 devnull It is typically invoked inside a shell
49 c9d04e09 2005-02-14 devnull construct; see the examples below.
52 c9d04e09 2005-02-14 devnull option causes
53 c9d04e09 2005-02-14 devnull .I ssh-agent
54 c9d04e09 2005-02-14 devnull to include
55 c9d04e09 2005-02-14 devnull .B export
56 c9d04e09 2005-02-14 devnull commands to put the variables into the environment of future programs.
60 c9d04e09 2005-02-14 devnull option is given,
61 c9d04e09 2005-02-14 devnull .I ssh-agent
62 c9d04e09 2005-02-14 devnull lists the usable
63 c9d04e09 2005-02-14 devnull .I factotum
64 c9d04e09 2005-02-14 devnull keys in the standard SSH format, suitable for creating an
65 c9d04e09 2005-02-14 devnull .B authorized_keys
68 c9d04e09 2005-02-14 devnull .I Ssh-agent
69 c9d04e09 2005-02-14 devnull connects to
70 c9d04e09 2005-02-14 devnull .I factotum
71 c9d04e09 2005-02-14 devnull by accessing
72 c9d04e09 2005-02-14 devnull .I factotum-service
74 c9d04e09 2005-02-14 devnull .RB ` factotum ')
75 c9d04e09 2005-02-14 devnull in the current name space.
77 c9d04e09 2005-02-14 devnull There is a Unix program called
78 c9d04e09 2005-02-14 devnull .I ssh-agent
79 c9d04e09 2005-02-14 devnull that manages SSH keys itself.
80 c9d04e09 2005-02-14 devnull Invoke this one with
82 c9d04e09 2005-02-14 devnull .BR ssh-agent ;
84 c9d04e09 2005-02-14 devnull .IR 9 (1).
85 c9d04e09 2005-02-14 devnull .SH EXAMPLES
87 c9d04e09 2005-02-14 devnull .IR factotum (4)
88 c9d04e09 2005-02-14 devnull is already running and initialized with keys.
90 c9d04e09 2005-02-14 devnull Start a new agent, copying the commands by hand:
93 c9d04e09 2005-02-14 devnull $ 9 ssh-agent -e
94 c9d04e09 2005-02-14 devnull SSH_AUTH_SOCK=/tmp/ssh-405795003d7ee27a/agent.4233;
95 c9d04e09 2005-02-14 devnull export SSH_AUTH_SOCK;
96 c9d04e09 2005-02-14 devnull SSH_AGENT_PID=4233;
97 c9d04e09 2005-02-14 devnull export SSH_AGENT_PID;
98 c9d04e09 2005-02-14 devnull $ SSH_AUTH_SOCK=/tmp/ssh-405795003d7ee27a/agent.4233;
99 c9d04e09 2005-02-14 devnull $ export SSH_AUTH_SOCK;
100 c9d04e09 2005-02-14 devnull $ SSH_AGENT_PID=4233;
101 c9d04e09 2005-02-14 devnull $ export SSH_AGENT_PID;
105 c9d04e09 2005-02-14 devnull Start the agent from
106 c9d04e09 2005-02-14 devnull .IR sh (1):
109 c9d04e09 2005-02-14 devnull $ eval `9 ssh-agent -e`
113 c9d04e09 2005-02-14 devnull Start the agent from
114 c9d04e09 2005-02-14 devnull .IR rc (1):
117 c9d04e09 2005-02-14 devnull % eval `{9 ssh-agent}
121 c9d04e09 2005-02-14 devnull Use the agent to connect to a remote system:
124 c9d04e09 2005-02-14 devnull % ssh tux
128 c9d04e09 2005-02-14 devnull .SH SOURCE
129 c9d04e09 2005-02-14 devnull .B \*9/src/cmd/auth/ssh-agent.c
130 c9d04e09 2005-02-14 devnull .SH SEE ALSO
131 c9d04e09 2005-02-14 devnull .IR ssh (1),
132 c9d04e09 2005-02-14 devnull .IR rsa (1),
133 c9d04e09 2005-02-14 devnull .IR factotum (4)
134 c9d04e09 2005-02-14 devnull .SH BUGS
135 c9d04e09 2005-02-14 devnull A surprise rather than a bug:
136 c9d04e09 2005-02-14 devnull .I ssh-agent
137 c9d04e09 2005-02-14 devnull connects to factotum on demand, so it can be
138 c9d04e09 2005-02-14 devnull started before
139 c9d04e09 2005-02-14 devnull .I factotum
140 c9d04e09 2005-02-14 devnull is running and need not be restarted just because
141 c9d04e09 2005-02-14 devnull .I factotum