Google


     ~/.ssh/config
     /etc/ssh/ssh_config

DESCRIPTION
     ssh obtains configuration data from the following sources in
the follow-
     ing order:
           1.   command-line options
           2.   user's configuration file (~/.ssh/config)
           3.   system-wide configuration file (/etc/ssh/ssh_con-
fig)

     For each parameter, the first obtained value will  be  used.
The configu-
     ration files contain sections separated by ``Host'' specifi-
cations, and
     that section is only applied for hosts that match one of the
patterns
     given  in  the  specification.  The matched host name is the
one given on
     the command line.

     Since the first obtained value for each parameter  is  used,
more host-spe-
     cific declarations should be given near the beginning of the
file, and
     general defaults at the end.

     The configuration file has the following format:

     Empty lines and lines starting with `#' are comments.

     Otherwise a line is of  the  format  ``keyword  arguments''.
Configuration
     options  may  be  separated by whitespace or optional white-
space and exactly
     one `='; the latter format is useful to avoid  the  need  to
quote whites-
     pace  when  specifying  configuration options using the ssh,
scp and sftp -o
     option.

     The possible keywords and  their  meanings  are  as  follows
(note that key-
     words  are  case-insensitive  and  arguments are case-sensi-
tive):

     Host    Restricts the following declarations (up to the next
Host key-
             word)  to  be only for those hosts that match one of
the patterns
             given after the keyword.  `*' and `?' can be used as
             IPv6 only).

     BatchMode
             If set to ``yes'', passphrase/password querying will
be disabled.
             This  option  is  useful  in scripts and other batch
jobs where no
             user is present to supply the password.   The  argu-
ment must be
             ``yes'' or ``no''.  The default is ``no''.

     BindAddress
             Use  the  specified  address on the local machine as
the source ad-
             dress of the connection.   Only  useful  on  systems
with more than
             one address.  Note that this option does not work if
             UsePrivilegedPort is set to ``yes''.

     ChallengeResponseAuthentication
             Specifies whether to use challenge response  authen-
tication.  The
             argument  to this keyword must be ``yes'' or ``no''.
The default
             is ``yes''.

     CheckHostIP
             If this flag is set to ``yes'', ssh will additional-
ly check the
             host  IP  address in the known_hosts file.  This al-
lows ssh to de-
             tect if a host key changed due to DNS spoofing.   If
the option is
             set  to ``no'', the check will not be executed.  The
default is
             ``yes''.

     Cipher  Specifies the cipher to use for encrypting the  ses-
sion in proto-
             col  version  1.  Currently, ``blowfish'', ``3des'',
and ``des''
             are supported.  des is only  supported  in  the  ssh
client for in-
             teroperability  with  legacy  protocol 1 implementa-
tions that do not
             support the 3des cipher.  Its use is  strongly  dis-
couraged due to
             cryptographic  weaknesses.  The default is ``3des''.

     Ciphers
             Specifies the ciphers allowed for protocol version 2
in order of
                 aes192-ctr,aes256-ctr''

     ClearAllForwardings
             Specifies  that  all  local, remote and dynamic port
forwardings
             specified in the configuration files or on the  com-
mand line be
             cleared.   This option is primarily useful when used
from the ssh
             command line to clear port forwardings set  in  con-
figuration
             files,  and  is  automatically  set  by  scp(1)  and
sftp(1).  The argu-
             ment must be ``yes''  or  ``no''.   The  default  is
``no''.

     Compression
             Specifies  whether to use compression.  The argument
must be
             ``yes'' or ``no''.  The default is ``no''.

     CompressionLevel
             Specifies the compression level to use  if  compres-
sion is enabled.
             The  argument  must be an integer from 1 (fast) to 9
(slow, best).
             The default level is 6, which is good for  most  ap-
plications.  The
             meaning  of  the  values  is the same as in gzip(1).
Note that this
             option applies to protocol version 1 only.

     ConnectionAttempts
             Specifies the number of tries (one  per  second)  to
make before ex-
             iting.   The  argument must be an integer.  This may
be useful in
             scripts if the connection sometimes fails.  The  de-
fault is 1.

     ConnectTimeout
             Specifies  the  timeout  (in seconds) used when con-
necting to the
             ssh server, instead of using the default system  TCP
timeout.
             This  value  is used only when the target is down or
really un-
             reachable, not when it refuses the connection.

     ControlMaster
             Enables the sharing of multiple sessions over a sin-
gle network
             confirmation using the  SSH_ASKPASS  program  before
they are ac-
             cepted  (see  ssh-add(1)  for details).  If the Con-
trolPath can not
             be opened, ssh will continue without connecting to a
master in-
             stance.

             X11  and  ssh-agent(1)  forwarding is supported over
these multi-
             plexed connections, however the  display  and  agent
fowarded will
             be  the  one belonging to the master connection i.e.
it is not pos-
             sible to forward multiple displays or agents.

             Two additional options allow for opportunistic  mul-
tiplexing: try
             to use a master connection but fall back to creating
a new one if
             one does not  already  exist.   These  options  are:
``auto'' and
             ``autoask''.   The latter requires confirmation like
the ``ask''
             option.

     ControlPath
             Specify the path to the control socket used for con-
nection shar-
             ing  as described in the ControlMaster section above
or the string
             ``none'' to  disable  connection  sharing.   In  the
path, `%h' will
             be  substituted  by  the  target host name, `%p' the
port and `%r' by
             the remote login username.  It is  recommended  that
any
             ControlPath  used for opportunistic connection shar-
ing include all
             three of these escape sequences.  This ensures  that
shared con-
             nections are uniquely identified.

     DynamicForward
             Specifies that a TCP/IP port on the local machine be
forwarded
             over the secure channel, and the application  proto-
col is then
             used  to  determine where to connect to from the re-
mote machine.
             The argument must be a port number.   Currently  the
SOCKS4 and
argument must
             be  ``yes'' or ``no''.  The default is ``no''.  This
option should
             be placed in the non-hostspecific section.  See ssh-
keysign(8)
             for more information.

     EscapeChar
             Sets  the  escape character (default: `~').  The es-
cape character
             can also be set on the command line.   The  argument
should be a
             single  character,  `^'  followed  by  a  letter, or
``none'' to dis-
             able the escape character entirely (making the  con-
nection trans-
             parent for binary data).

     ForwardAgent
             Specifies  whether the connection to the authentica-
tion agent (if
             any) will be forwarded to the remote  machine.   The
argument must
             be ``yes'' or ``no''.  The default is ``no''.

             Agent  forwarding  should  be  enabled with caution.
Users with the
             ability to bypass file  permissions  on  the  remote
host (for the
             agent's  Unix-domain  socket)  can  access the local
agent through
             the forwarded connection.  An attacker cannot obtain
key material
             from  the agent, however they can perform operations
on the keys
             that enable them to authenticate using  the  identi-
ties loaded into
             the agent.

     ForwardX11
             Specifies  whether X11 connections will be automati-
cally redirect-
             ed over the secure channel and DISPLAY set.  The ar-
gument must be
             ``yes'' or ``no''.  The default is ``no''.

             X11  forwarding  should  be  enabled  with  caution.
Users with the
             ability to bypass file  permissions  on  the  remote
host (for the
             user's  X11  authorization  database) can access the
local X11 dis-
tampering
             with  data  belonging  to trusted X11 clients.  Fur-
thermore, the
             xauth(1) token used for the session will be  set  to
expire after
             20  minutes.   Remote clients will be refused access
after this
             time.

             The default is ``no''.

             See the X11  SECURITY  extension  specification  for
full details on
             the restrictions imposed on untrusted clients.

     GatewayPorts
             Specifies  whether  remote hosts are allowed to con-
nect to local
             forwarded ports.  By default, ssh binds  local  port
forwardings to
             the  loopback  address.   This prevents other remote
hosts from con-
             necting to forwarded  ports.   GatewayPorts  can  be
used to specify
             that  ssh  should bind local port forwardings to the
wildcard ad-
             dress, thus allowing remote hosts to connect to for-
warded ports.
             The argument must be ``yes'' or ``no''.  The default
is ``no''.

     GlobalKnownHostsFile
             Specifies a file to use  for  the  global  host  key
database instead
             of /etc/ssh/ssh_known_hosts.

     GSSAPIAuthentication
             Specifies  whether user authentication based on GSS-
API is allowed.
             The default is ``no''.  Note that  this  option  ap-
plies to protocol
             version 2 only.

     GSSAPIDelegateCredentials
             Forward  (delegate)  credentials to the server.  The
default is
             ``no''.  Note that this option applies  to  protocol
version 2 on-
             ly.

     HashKnownHosts
             Indicates  that  ssh  should hash host names and ad-
             Specifies whether to try rhosts based authentication
with public
             key authentication.  The argument must be ``yes'' or
``no''.  The
             default  is ``no''.  This option applies to protocol
version 2 on-
             ly and is similar to RhostsRSAAuthentication.

     HostKeyAlgorithms
             Specifies the protocol version 2 host key algorithms
that the
             client wants to use in order of preference.  The de-
fault for this
             option is: ``ssh-rsa,ssh-dss''.

     HostKeyAlias
             Specifies an alias that should be  used  instead  of
the real host
             name  when  looking up or saving the host key in the
host key
             database files.  This option is useful for tunneling
ssh connec-
             tions  or  for  multiple servers running on a single
host.

     HostName
             Specifies the real host name to log into.  This  can
be used to
             specify  nicknames  or abbreviations for hosts.  De-
fault is the
             name given on the command line.  Numeric IP address-
es are also
             permitted  (both on the command line and in HostName
specifica-
             tions).

     IdentityFile
             Specifies a file from which the user's  RSA  or  DSA
authentication
             identity  is  read.   The default is ~/.ssh/identity
for protocol
             version 1, and ~/.ssh/id_rsa and  ~/.ssh/id_dsa  for
protocol ver-
             sion 2.  Additionally, any identities represented by
the authen-
             tication agent will be used for authentication.  The
file name
             may  use  the tilde syntax to refer to a user's home
directory.  It
             is possible to have multiple identity  files  speci-
fied in configu-
             ration  files; all these identities will be tried in

     KbdInteractiveDevices
             Specifies the list of methods to use in keyboard-in-
teractive au-
             thentication.  Multiple method names must be  comma-
separated.
             The default is to use the server specified list.

     LocalForward
             Specifies that a TCP/IP port on the local machine be
forwarded
             over the secure channel to the  specified  host  and
port from the
             remote   machine.    The   first  argument  must  be
[bind_address:]port
             and the second argument must be host:hostport.  IPv6
addresses
             can  be  specified  by enclosing addresses in square
brackets or by
             using an alternative syntax: [bind_address/]port and
             host/hostport.   Multiple  forwardings may be speci-
fied, and addi-
             tional forwardings can be given on the command line.
Only the
             superuser can forward privileged ports.  By default,
the local
             port is bound in accordance  with  the  GatewayPorts
setting.  How-
             ever,  an  explicit bind_address may be used to bind
the connection
             to a specific address.  The bind_address of ``local-
host'' indi-
             cates that the listening port be bound for local use
only, while
             an empty address or  `*'  indicates  that  the  port
should be avail-
             able from all interfaces.

     LogLevel
             Gives  the verbosity level that is used when logging
messages from
             ssh.  The possible values are: QUIET, FATAL,  ERROR,
INFO, VER-
             BOSE, DEBUG, DEBUG1, DEBUG2 and DEBUG3.  The default
is INFO.
             DEBUG and DEBUG1 are equivalent.  DEBUG2 and  DEBUG3
each specify
             higher levels of verbose output.

     MACs     Specifies the MAC (message authentication code) al-
gorithms in or-
             der of preference.  The MAC  algorithm  is  used  in
             about changed host keys.  However, this option  dis-
ables host au-
             thentication  for  localhost.   The argument to this
keyword must be
             ``yes'' or ``no''.  The default is to check the host
key for lo-
             calhost.

     NumberOfPasswordPrompts
             Specifies the number of password prompts before giv-
ing up.  The
             argument to this keyword must be  an  integer.   De-
fault is 3.

     PasswordAuthentication
             Specifies  whether  to  use password authentication.
The argument
             to this keyword must be ``yes'' or ``no''.  The  de-
fault is
             ``yes''.

     Port     Specifies  the port number to connect on the remote
host.  Default
             is 22.

     PreferredAuthentications
             Specifies the order in which the client  should  try
protocol 2 au-
             thentication  methods.  This allows a client to pre-
fer one method
             (e.g.  keyboard-interactive)  over  another   method
(e.g. password)
             The default for this option is: ``hostbased,publick-
ey,keyboard-
             interactive,password''.

     Protocol
             Specifies the protocol versions ssh  should  support
in order of
             preference.   The  possible  values  are  ``1''  and
``2''.  Multiple
             versions must be comma-separated.   The  default  is
``2,1''.  This
             means  that  ssh  tries  version 2 and falls back to
version 1 if
             version 2 is not available.

     ProxyCommand
             Specifies the command to use to connect to the serv-
er.  The com-
             mand  string  extends to the end of the line, and is
executed with
             er).   Setting the command to ``none'' disables this
option en-
             tirely.  Note that CheckHostIP is not available  for
connects with
             a proxy command.

             This  directive  is useful in conjunction with nc(1)
and its proxy
             support.  For example, the following directive would
connect via
             an HTTP proxy at 192.0.2.0:

                ProxyCommand    /usr/bin/nc    -X    connect   -x
192.0.2.0:8080 %h %p

     PubkeyAuthentication
             Specifies whether to try public key  authentication.
The argument
             to  this keyword must be ``yes'' or ``no''.  The de-
fault is
             ``yes''.  This option applies to protocol version  2
only.

     RemoteForward
             Specifies  that  a TCP/IP port on the remote machine
be forwarded
             over the secure channel to the  specified  host  and
port from the
             local machine.  The first argument must be [bind_ad-
dress:]port
             and the second argument must be host:hostport.  IPv6
addresses
             can  be  specified  by enclosing addresses in square
brackets or by
             using an alternative syntax: [bind_address/]port and
             host/hostport.   Multiple  forwardings may be speci-
fied, and addi-
             tional forwardings can be given on the command line.
Only the
             superuser can forward privileged ports.

             If the bind_address is not specified, the default is
to only bind
             to loopback addresses.  If the bind_address  is  `*'
or an empty
             string,  then  the forwarding is requested to listen
on all inter-
             faces.  Specifying a remote bind_address  will  only
succeed if the
             server's   GatewayPorts   option   is  enabled  (see
sshd_config(5)).

             only be attempted if the identity file exists, or an
authentica-
             tion agent is  running.   The  default  is  ``yes''.
Note that this
             option applies to protocol version 1 only.

     SendEnv
             Specifies  what  variables from the local environ(7)
should be sent
             to the server.  Note that environment passing is on-
ly supported
             for protocol 2, the server must also support it, and
the server
             must be configured to accept these environment vari-
ables.  Refer
             to  AcceptEnv in sshd_config(5) for how to configure
the server.
             Variables are specified by name, which  may  contain
the wildcard
             characters  `*' and `?'.  Multiple environment vari-
ables may be
             separated by whitespace or  spread  across  multiple
SendEnv direc-
             tives.   The  default is not to send any environment
variables.

     ServerAliveInterval
             Sets a timeout interval in seconds after which if no
data has
             been  received from the server, ssh will send a mes-
sage through
             the encrypted channel to request a response from the
server.  The
             default  is  0,  indicating that these messages will
not be sent to
             the server.  This option applies to protocol version
2 only.

     ServerAliveCountMax
             Sets the number of server alive messages (see above)
which may be
             sent without ssh receiving any  messages  back  from
the server.  If
             this  threshold  is  reached while server alive mes-
sages are being
             sent, ssh will disconnect from the server, terminat-
ing the ses-
             sion.  It is important to note that the use of serv-
er alive mes-
             sages is very different from  TCPKeepAlive  (below).
The server
             alive  messages are sent through the encrypted chan-

disconnect af-
             ter approximately 45 seconds.

     SmartcardDevice
             Specifies which smartcard device to use.  The  argu-
ment to this
             keyword  is the device ssh should use to communicate
with a smart-
             card used for storing the user's  private  RSA  key.
By default, no
             device is specified and smartcard support is not ac-
tivated.

     StrictHostKeyChecking
             If this flag is set to ``yes'', ssh will never auto-
matically add
             host keys to the ~/.ssh/known_hosts file, and refus-
es to connect
             to hosts whose host key has changed.  This  provides
maximum pro-
             tection  against  trojan horse attacks, however, can
be annoying
             when the  /etc/ssh/ssh_known_hosts  file  is  poorly
maintained, or
             connections  to new hosts are frequently made.  This
option forces
             the user to manually add all  new  hosts.   If  this
flag is set to
             ``no'',  ssh will automatically add new host keys to
the user
             known hosts files.  If this flag is set to  ``ask'',
new host keys
             will  be added to the user known host files only af-
ter the user
             has confirmed that is what they really want  to  do,
and ssh will
             refuse  to  connect  to  hosts  whose  host  key has
changed.  The host
             keys of known hosts will be  verified  automatically
in all cases.
             The  argument  must  be  ``yes'', ``no'' or ``ask''.
The default is
             ``ask''.

     TCPKeepAlive
             Specifies  whether  the  system  should   send   TCP
keepalive messages
             to  the  other side.  If they are sent, death of the
connection or
             crash of one of the machines will  be  properly  no-
ticed.  However,
             this means that connections will die if the route is

     UsePrivilegedPort
             Specifies whether to use a privileged port for  out-
going connec-
             tions.  The argument must be ``yes'' or ``no''.  The
default is
             ``no''.  If set to ``yes'' ssh must be setuid  root.
Note that
             this  option must be set to ``yes'' for RhostsRSAAu-
thentication
             with older servers.

     User    Specifies the user to log in as.  This can be useful
when a dif-
             ferent  user  name  is  used  on different machines.
This saves the
             trouble of having to remember to give the user  name
on the com-
             mand line.

     UserKnownHostsFile
             Specifies  a file to use for the user host key data-
base instead of
             ~/.ssh/known_hosts.

     VerifyHostKeyDNS
             Specifies whether to verify the remote key using DNS
and SSHFP
             resource records.  If this option is set to ``yes'',
the client
             will implicitly trust keys that match a secure  fin-
gerprint from
             DNS.   Insecure  fingerprints  will be handled as if
this option was
             set to ``ask''.  If this option is set  to  ``ask'',
information on
             fingerprint  match  will  be displayed, but the user
will still need
             to confirm new host keys  according  to  the  Stric-
tHostKeyChecking
             option.   The  argument  must  be ``yes'', ``no'' or
``ask''.  The
             default is ``no''.  Note that this option applies to
protocol
             version 2 only.

     XAuthLocation
             Specifies the full pathname of the xauth(1) program.
The default
             is /usr/X11R6/bin/xauth.

FILES
     ~/.ssh/config
             file, and for those users who do not have a configu-
ration file.
             This file must be world-readable.

SEE ALSO
     ssh(1)

AUTHORS
     OpenSSH  is a derivative of the original and free ssh 1.2.12
release by
     Tatu Ylonen.  Aaron Campbell, Bob Beck, Markus Friedl, Niels
Provos, Theo
     de Raadt and Dug Song removed many bugs, re-added newer fea-
tures and cre-
     ated OpenSSH.  Markus Friedl contributed the support for SSH
protocol
     versions 1.5 and 2.0.

OpenBSD      3.8                       September     25,     1999
9

































Man(1) output converted with man2html