mirror of
git://anongit.mindrot.org/openssh.git
synced 2024-12-16 15:14:35 +00:00
e247cc402b
- Big OpenBSD CVS update - markus@cvs.openbsd.org [clientloop.c] - typo [session.c] - update proctitle on pty alloc/dealloc, e.g. w/ windows client [session.c] - update proctitle for proto 1, too [channels.h nchan.c serverloop.c session.c sshd.c] - use c-style comments - deraadt@cvs.openbsd.org [scp.c] - more atomicio - markus@cvs.openbsd.org [channels.c] - set O_NONBLOCK [ssh.1] - update AUTHOR [readconf.c ssh-keygen.c ssh.h] - default DSA key file ~/.ssh/id_dsa [clientloop.c] - typo, rm verbose debug - deraadt@cvs.openbsd.org [ssh-keygen.1] - document DSA use of ssh-keygen [sshd.8] - a start at describing what i understand of the DSA side [ssh-keygen.1] - document -X and -x [ssh-keygen.c] - simplify usage - markus@cvs.openbsd.org [sshd.8] - there is no rhosts_dsa [ssh-keygen.1] - document -y, update -X,-x [nchan.c] - fix close for non-open ssh1 channels [servconf.c servconf.h ssh.h sshd.8 sshd.c ] - s/DsaKey/HostDSAKey/, document option [sshconnect2.c] - respect number_of_password_prompts [channels.c channels.h servconf.c servconf.h session.c sshd.8] - GatewayPorts for sshd, ok deraadt@ [ssh-add.1 ssh-agent.1 ssh.1] - more doc on: DSA, id_dsa, known_hosts2, authorized_keys2 [ssh.1] - more info on proto 2 [sshd.8] - sync AUTHOR w/ ssh.1 [key.c key.h sshconnect.c] - print key type when talking about host keys [packet.c] - clear padding in ssh2 [dsa.c key.c radix.c ssh.h sshconnect1.c uuencode.c uuencode.h] - replace broken uuencode w/ libc b64_ntop [auth2.c] - log failure before sending the reply [key.c radix.c uuencode.c] - remote trailing comments before calling __b64_pton [auth2.c readconf.c readconf.h servconf.c servconf.h ssh.1] [sshconnect2.c sshd.8] - add DSAAuthetication option to ssh/sshd, document SSH2 in sshd.8 - Bring in b64_ntop and b64_pton from OpenBSD libc (bsd-base64.[ch])
167 lines
4.5 KiB
Groff
167 lines
4.5 KiB
Groff
.\" $OpenBSD: ssh-agent.1,v 1.12 2000/05/03 18:04:39 markus Exp $
|
|
.\"
|
|
.\" -*- nroff -*-
|
|
.\"
|
|
.\" ssh-agent.1
|
|
.\"
|
|
.\" Author: Tatu Ylonen <ylo@cs.hut.fi>
|
|
.\"
|
|
.\" Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
|
|
.\" All rights reserved
|
|
.\"
|
|
.\" Created: Sat Apr 23 20:10:43 1995 ylo
|
|
.\"
|
|
.Dd September 25, 1999
|
|
.Dt SSH-AGENT 1
|
|
.Os
|
|
.Sh NAME
|
|
.Nm ssh-agent
|
|
.Nd authentication agent
|
|
.Sh SYNOPSIS
|
|
.Nm ssh-agent
|
|
.Op Fl c Li | Fl s
|
|
.Op Fl k
|
|
.Oo
|
|
.Ar command
|
|
.Op Ar args ...
|
|
.Oc
|
|
.Sh DESCRIPTION
|
|
.Nm
|
|
is a program to hold private keys used for RSA authentication.
|
|
The idea is that
|
|
.Nm
|
|
is started in the beginning of an X-session or a login session, and
|
|
all other windows or programs are started as clients to the ssh-agent
|
|
program.
|
|
Through use of environment variables the agent can be located
|
|
and automatically used for RSA authentication when logging in to other
|
|
machines using
|
|
.Xr ssh 1 .
|
|
.Pp
|
|
The options are as follows:
|
|
.Bl -tag -width Ds
|
|
.It Fl c
|
|
Generate C-shell commands on
|
|
.Dv stdout .
|
|
This is the default if
|
|
.Ev SHELL
|
|
looks like it's a csh style of shell.
|
|
.It Fl s
|
|
Generate Bourne shell commands on
|
|
.Dv stdout .
|
|
This is the default if
|
|
.Ev SHELL
|
|
does not look like it's a csh style of shell.
|
|
.It Fl k
|
|
Kill the current agent (given by the
|
|
.Ev SSH_AGENT_PID
|
|
environment variable).
|
|
.El
|
|
.Pp
|
|
If a commandline is given, this is executed as a subprocess of the agent.
|
|
When the command dies, so does the agent.
|
|
.Pp
|
|
The agent initially does not have any private keys.
|
|
Keys are added using
|
|
.Xr ssh-add 1 .
|
|
When executed without arguments,
|
|
.Xr ssh-add 1
|
|
adds the
|
|
.Pa $HOME/.ssh/identity
|
|
file.
|
|
If the identity has a passphrase,
|
|
.Xr 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 identity to the agent.
|
|
Several identities can be stored in the
|
|
agent; the agent can automatically use any of these identities.
|
|
.Ic ssh-add -l
|
|
displays the identities currently held by the agent.
|
|
.Pp
|
|
The idea is that the agent is run in the user's local PC, laptop, or
|
|
terminal.
|
|
Authentication data need not be stored on any other
|
|
machine, and authentication passphrases never go over the network.
|
|
However, the connection to the agent is forwarded over SSH
|
|
remote logins, and the user can thus use the privileges given by the
|
|
identities anywhere in the network in a secure way.
|
|
.Pp
|
|
There are two main ways to get an agent setup:
|
|
Either you let the agent
|
|
start a new subcommand into which some environment variables are exported, or
|
|
you let the agent print the needed shell commands (either
|
|
.Xr sh 1
|
|
or
|
|
.Xr csh 1
|
|
syntax can be generated) which can be evalled in the calling shell.
|
|
Later
|
|
.Xr ssh 1
|
|
look at these variables and use them to establish a connection to the agent.
|
|
.Pp
|
|
A unix-domain socket is created
|
|
.Pq Pa /tmp/ssh-XXXXXXXX/agent.<pid> ,
|
|
and the name of this socket is stored in the
|
|
.Ev 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.
|
|
.Pp
|
|
The
|
|
.Ev SSH_AGENT_PID
|
|
environment variable holds the agent's PID.
|
|
.Pp
|
|
The agent exits automatically when the command given on the command
|
|
line terminates.
|
|
.Sh FILES
|
|
.Bl -tag -width Ds
|
|
.It Pa $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
|
|
.Nm
|
|
but is normally added to the agent using
|
|
.Xr ssh-add 1
|
|
at login time.
|
|
.It Pa /tmp/ssh-XXXX/agent.<pid> ,
|
|
Unix-domain sockets used to contain the connection to the
|
|
authentication agent.
|
|
These sockets should only be readable by the owner.
|
|
The sockets should get automatically removed when the agent exits.
|
|
.Sh AUTHOR
|
|
Tatu Ylonen <ylo@cs.hut.fi>
|
|
.Pp
|
|
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
|
|
.Bl -bullet
|
|
.It
|
|
has all components of a restrictive nature (i.e., patents)
|
|
directly removed from the source code; any licensed or patented components
|
|
are chosen from
|
|
external libraries.
|
|
.It
|
|
has been updated to support ssh protocol 1.5.
|
|
.It
|
|
contains added support for
|
|
.Xr kerberos 8
|
|
authentication and ticket passing.
|
|
.It
|
|
supports one-time password authentication with
|
|
.Xr skey 1 .
|
|
.El
|
|
.Pp
|
|
.Sh SEE ALSO
|
|
.Xr ssh 1 ,
|
|
.Xr ssh-add 1 ,
|
|
.Xr ssh-keygen 1 ,
|
|
.Xr sshd 8 ,
|