Google


     /etc/ssh/sshd_config

DESCRIPTION
     sshd reads configuration data from /etc/ssh/sshd_config  (or
the file
     specified  with  -f on the command line).  The file contains
keyword-argu-
     ment pairs, one per line.  Lines starting with `#' and empty
lines are
     interpreted as comments.

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

     AcceptEnv
             Specifies  what  environment  variables  sent by the
client will be
             copied into the session's environ(7).   See  SendEnv
in
             ssh_config(5) for how to configure the client.  Note
that envi-
             ronment passing is only supported  for  protocol  2.
Variables are
             specified  by  name,  which may contain the wildcard
characters `*'
             and `?'.  Multiple environment variables may be sep-
arated by
             whitespace  or  spread across multiple AcceptEnv di-
rectives.  Be
             warned that some environment variables could be used
to bypass
             restricted user environments.  For this reason, care
should be
             taken in the use of this directive.  The default  is
not to accept
             any environment variables.

     AddressFamily
             Specifies  which  address  family  should be used by
sshd.  Valid ar-
             guments are ``any'', ``inet''  (use  IPv4  only)  or
``inet6'' (use
             IPv6 only).  The default is ``any''.

     AllowGroups
             This keyword can be followed by a list of group name
patterns,
             separated by spaces.  If specified, login is allowed
only for
             users  whose  primary  group  or supplementary group

they can al-
             ways install their own forwarders.

     AllowUsers
             This keyword can be followed by a list of user  name
patterns,
             separated by spaces.  If specified, login is allowed
only for us-
             er names that match one of the  patterns.   `*'  and
`?' can be used
             as  wildcards  in the patterns.  Only user names are
valid; a nu-
             merical user ID is not recognized.  By default,  lo-
gin is allowed
             for  all  users.   If the pattern takes the form US-
ER@HOST then USER
             and HOST are separately checked, restricting  logins
to particular
             users from particular hosts.

     AuthorizedKeysFile
             Specifies  the  file  that  contains the public keys
that can be used
             for  user  authentication.   AuthorizedKeysFile  may
contain tokens
             of  the form %T which are substituted during connec-
tion set-up.
             The following tokens are defined: %% is replaced  by
a literal
             '%', %h is replaced by the home directory of the us-
er being au-
             thenticated and %u is replaced by  the  username  of
that user.  Af-
             ter  expansion, AuthorizedKeysFile is taken to be an
absolute path
             or one relative to the user's home  directory.   The
default is
             ``.ssh/authorized_keys''.

     Banner  In some jurisdictions, sending a warning message be-
fore authenti-
             cation may be relevant for getting legal protection.
The con-
             tents  of  the specified file are sent to the remote
user before
             authentication is  allowed.   This  option  is  only
available for
             protocol  version  2.  By default, no banner is dis-
played.

     ChallengeResponseAuthentication
             Specifies whether challenge response  authentication
             ``arcfour256'', ``arcfour'', ``blowfish-cbc'', and
             ``cast128-cbc''.  The default is

               ``aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,ar-
cfour128,
                 arcfour256,arc-
four,aes192-cbc,aes256-cbc,aes128-ctr,
                 aes192-ctr,aes256-ctr''

     ClientAliveCountMax
             Sets the number of client alive messages (see above)
which may be
             sent  without  sshd receiving any messages back from
the client.
             If this threshold is reached while client alive mes-
sages are be-
             ing sent, sshd will disconnect the client, terminat-
ing the ses-
             sion.  It is important  to  note  that  the  use  of
client alive mes-
             sages  is  very different from TCPKeepAlive (below).
The client
             alive messages are sent through the encrypted  chan-
nel and there-
             fore  will  not be spoofable.  The TCP keepalive op-
tion enabled by
             TCPKeepAlive is spoofable.  The client alive  mecha-
nism is valu-
             able  when  the  client  or server depend on knowing
when a connec-
             tion has become inactive.

             The default  value  is  3.   If  ClientAliveInterval
(above) is set to
             15,  and ClientAliveCountMax is left at the default,
unresponsive
             ssh clients will be disconnected after approximately
45 seconds.

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

     Compression
             `*' and `?' can be used as  wildcards  in  the  pat-
terns.  Only group
             names  are valid; a numerical group ID is not recog-
nized.  By de-
             fault, login is allowed for all groups.

     DenyUsers
             This keyword can be followed by a list of user  name
patterns,
             separated  by  spaces.  Login is disallowed for user
names that
             match one of the patterns.  `*' and `?' can be  used
as wildcards
             in  the  patterns.  Only user names are valid; a nu-
merical user ID
             is not recognized.  By default, login is allowed for
all users.
             If  the  pattern  takes the form USER@HOST then USER
and HOST are
             separately checked, restricting logins to particular
users from
             particular hosts.

     GatewayPorts
             Specifies  whether  remote hosts are allowed to con-
nect to ports
             forwarded for the client.  By  default,  sshd  binds
remote port
             forwardings  to the loopback address.  This prevents
other remote
             hosts from connecting to forwarded ports.   Gateway-
Ports can be
             used  to  specify that sshd should allow remote port
forwardings to
             bind to non-loopback addresses, thus allowing  other
hosts to con-
             nect.   The  argument  may be ``no'' to force remote
port forward-
             ings to be available to the local host only, ``yes''
to force re-
             mote  port  forwardings  to bind to the wildcard ad-
dress, or
             ``clientspecified'' to allow the  client  to  select
the address to
             which  the  forwarding  is  bound.   The  default is
``no''.

     GSSAPIAuthentication
             Specifies whether user authentication based on  GSS-
API is allowed.
             The  default  is  ``no''.  Note that this option ap-
plies to protocol
             allowed (hostbased authentication).  This option  is
similar to
             RhostsRSAAuthentication and applies to protocol ver-
sion 2 only.
             The default is ``no''.

     HostKey
             Specifies a file containing a private host key  used
by SSH.  The
             default  is  /etc/ssh/ssh_host_key for protocol ver-
sion 1, and
             /etc/ssh/ssh_host_rsa_key                        and
/etc/ssh/ssh_host_dsa_key for pro-
             tocol  version 2.  Note that sshd will refuse to use
a file if it
             is group/world-accessible.  It is possible  to  have
multiple host
             key files.  ``rsa1'' keys are used for version 1 and
``dsa'' or
             ``rsa'' are used for version 2 of the SSH  protocol.

     IgnoreRhosts
             Specifies that .rhosts and .shosts files will not be
used in
             RhostsRSAAuthentication or  HostbasedAuthentication.

             /etc/hosts.equiv  and  /etc/shosts.equiv  are  still
used.  The de-
             fault is ``yes''.

     IgnoreUserKnownHosts
             Specifies whether sshd should ignore the user's
             ~/.ssh/known_hosts during RhostsRSAAuthentication or
             HostbasedAuthentication.  The default is ``no''.

     KerberosAuthentication
             Specifies  whether the password provided by the user
for
             PasswordAuthentication will be validated through the
Kerberos
             KDC.   To  use  this option, the server needs a Ker-
beros servtab
             which allows the verification of the KDC's identity.
Default is
             ``no''.

     KerberosGetAFSToken
             If  AFS is active and the user has a Kerberos 5 TGT,
attempt to
             aquire an AFS token before accessing the user's home
directory.
             Default is ``no''.
             In  protocol  version 1, the ephemeral server key is
automatically
             regenerated after this many seconds (if it has  been
used).  The
             purpose  of  regeneration  is  to prevent decrypting
captured ses-
             sions by later breaking into the machine and  steal-
ing the keys.
             The  key  is never stored anywhere.  If the value is
0, the key is
             never regenerated.  The default is 3600 (seconds).

     ListenAddress
             Specifies the local addresses sshd should listen on.
The follow-
             ing forms may be used:

                   ListenAddress host|IPv4_addr|IPv6_addr
                   ListenAddress host|IPv4_addr:port
                   ListenAddress [host|IPv6_addr]:port

             If  port  is  not specified, sshd will listen on the
address and all
             prior Port options specified.   The  default  is  to
listen on all
             local addresses.  Multiple ListenAddress options are
permitted.
             Additionally, any Port options must precede this op-
tion for non
             port qualified addresses.

     LoginGraceTime
             The  server  disconnects after this time if the user
has not suc-
             cessfully logged in.  If the value is 0, there is no
time limit.
             The default is 120 seconds.

     LogLevel
             Gives  the verbosity level that is used when logging
messages from
             sshd.  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 debugging output.  Logging with a
DEBUG level
             violates the privacy of users and is not  recommend-
ed.

half this
             value,  additional failures are logged.  The default
is 6.

     MaxStartups
             Specifies the maximum number of concurrent unauthen-
ticated con-
             nections to the sshd daemon.  Additional connections
will be
             dropped until authentication succeeds or the  Login-
GraceTime ex-
             pires for a connection.  The default is 10.

             Alternatively,  random  early drop can be enabled by
specifying the
             three  colon  separated  values  ``start:rate:full''
(e.g.,
             "10:30:60").   sshd  will refuse connection attempts
with a proba-
             bility of ``rate/100'' (30%) if there are  currently
``start''
             (10)  unauthenticated  connections.  The probability
increases lin-
             early and all connection attempts are refused if the
number of
             unauthenticated connections reaches ``full'' (60).

     PasswordAuthentication
             Specifies  whether  password  authentication  is al-
lowed.  The de-
             fault is ``yes''.

     PermitEmptyPasswords
             When password authentication is allowed,  it  speci-
fies whether the
             server  allows login to accounts with empty password
strings.  The
             default is ``no''.

     PermitRootLogin
             Specifies whether root can log in using ssh(1).  The
argument
             must be ``yes'', ``without-password'', ``forced-com-
mands-only''
             or ``no''.  The default is ``yes''.

             If this option is set to ``without-password''  pass-
word authenti-
             cation is disabled for root.

             If  this  option  is set to ``forced-commands-only''
root login with
             ~/.ssh/authorized_keys are processed by  sshd.   The
default is
             ``no''.   Enabling environment processing may enable
users to by-
             pass access restrictions in some configurations  us-
ing mechanisms
             such as LD_PRELOAD.

     PidFile
             Specifies  the  file that contains the process ID of
the sshd dae-
             mon.  The default is /var/run/sshd.pid.

     Port    Specifies the port number that sshd listens on.  The
default is
             22.   Multiple  options  of this type are permitted.
See also
             ListenAddress.

     PrintLastLog
             Specifies whether sshd should  print  the  date  and
time of the last
             user  login  when a user logs in interactively.  The
default is
             ``yes''.

     PrintMotd
             Specifies whether sshd should print /etc/motd when a
user logs in
             interactively.   (On some systems it is also printed
by the shell,
             /etc/profile,  or  equivalent.)   The   default   is
``yes''.

     Protocol
             Specifies  the protocol versions sshd supports.  The
possible val-
             ues are ``1'' and ``2''.  Multiple versions must  be
comma-sepa-
             rated.  The default is ``2,1''.  Note that the order
of the pro-
             tocol list does not indicate preference, because the
client se-
             lects  among  multiple  protocol versions offered by
the server.
             Specifying ``2,1'' is identical to ``1,2''.

     PubkeyAuthentication
             Specifies whether public key authentication  is  al-
lowed.  The de-
             fault  is ``yes''.  Note that this option applies to
protocol ver-
             fault is ``yes''.  This option applies  to  protocol
version 1 on-
             ly.

     ServerKeyBits
             Defines the number of bits in the ephemeral protocol
version 1
             server key.  The minimum value is 512, and  the  de-
fault is 768.

     StrictModes
             Specifies  whether  sshd should check file modes and
ownership of
             the user's files and home directory before accepting
login.  This
             is  normally desirable because novices sometimes ac-
cidentally
             leave their directory or files world-writable.   The
default is
             ``yes''.

     Subsystem
             Configures  an external subsystem (e.g., file trans-
fer daemon).
             Arguments should be a subsystem name and  a  command
to execute up-
             on  subsystem  request.   The command sftp-server(8)
implements the
             ``sftp'' file transfer  subsystem.   By  default  no
subsystems are
             defined.   Note that this option applies to protocol
version 2 on-
             ly.

     SyslogFacility
             Gives the facility code that is  used  when  logging
messages from
             sshd.   The possible values are: DAEMON, USER, AUTH,
LOCAL0, LO-
             CAL1, LOCAL2, LOCAL3, LOCAL4,  LOCAL5,  LOCAL6,  LO-
CAL7.  The de-
             fault is AUTH.

     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
down tem-
             To disable TCP keepalive messages, the value  should
be set to
             ``no''.

     UseDNS   Specifies  whether  sshd  should look up the remote
host name and
             check that the resolved host name for the remote  IP
address maps
             back  to  the  very same IP address.  The default is
``yes''.

     UseLogin
             Specifies whether login(1) is used  for  interactive
login ses-
             sions.   The  default is ``no''.  Note that login(1)
is never used
             for remote command execution.  Note  also,  that  if
this is en-
             abled,  X11Forwarding  will  be disabled because lo-
gin(1) does not
             know how to handle xauth(1) cookies.   If  UsePrivi-
legeSeparation
             is  specified, it will be disabled after authentica-
tion.

     UsePAM  Enables the Pluggable Authentication  Module  inter-
face.  If set to
             ``yes'' this will enable PAM authentication using
             ChallengeResponseAuthentication  and PAM account and
session mod-
             ule processing for all authentication types.

             Because PAM challenge-response authentication usual-
ly serves an
             equivalent  role  to  password  authentication,  you
should disable
             either  PasswordAuthentication  or  ChallengeRespon-
seAuthentication.

             If  UsePAM  is  enabled, you will not be able to run
sshd(8) as a
             non-root user.  The default is ``no''.

     UsePrivilegeSeparation
             Specifies whether sshd separates privileges by  cre-
ating an un-
             privileged  child process to deal with incoming net-
work traffic.
             After  successful  authentication,  another  process
will be created
             that  has  the  privilege of the authenticated user.
The goal of
             Specifies whether X11 forwarding is permitted.   The
argument must
             be ``yes'' or ``no''.  The default is ``no''.

             When  X11  forwarding is enabled, there may be addi-
tional exposure
             to the server and to client  displays  if  the  sshd
proxy display is
             configured  to  listen  on the wildcard address (see
X11UseLocalhost
             below), however this is not the default.   Addition-
ally, the au-
             thentication  spoofing and authentication data veri-
fication and
             substitution occur on the client side.  The security
risk of us-
             ing  X11 forwarding is that the client's X11 display
server may be
             exposed to attack when the ssh client requests  for-
warding (see
             the  warnings  for  ForwardX11 in ssh_config(5)).  A
system adminis-
             trator may have a stance in which they want to  pro-
tect clients
             that  may expose themselves to attack by unwittingly
requesting
             X11 forwarding, which can warrant a ``no''  setting.

             Note  that disabling X11 forwarding does not prevent
users from
             forwarding X11 traffic, as users can always  install
their own
             forwarders.   X11  forwarding  is automatically dis-
abled if UseLogin
             is enabled.

     X11UseLocalhost
             Specifies whether sshd should bind the X11  forward-
ing server to
             the loopback address or to the wildcard address.  By
default,
             sshd binds the forwarding server to the loopback ad-
dress and sets
             the  hostname  part of the DISPLAY environment vari-
able to
             ``localhost''.  This prevents remote hosts from con-
necting to the
             proxy  display.  However, some older X11 clients may
not function
             with this configuration.  X11UseLocalhost may be set
to ``no'' to
             specify  that  the forwarding server should be bound

time[qualifier],
     where time is a positive integer value and qualifier is  one
of the fol-
     lowing:

           <none>  seconds
           s | S   seconds
           m | M   minutes
           h | H   hours
           d | D   days
           w | W   weeks

     Each  member  of the sequence is added together to calculate
the total time
     value.

     Time format examples:

           600     600 seconds (10 minutes)
           10m     10 minutes
           1h30m   1 hour 30 minutes (90 minutes)

FILES
     /etc/ssh/sshd_config
             Contains configuration data  for  sshd.   This  file
should be
             writable by root only, but it is recommended (though
not neces-
             sary) that it be world-readable.

SEE ALSO
     sshd(8)

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.  Niels Provos and Markus  Friedl  con-
tributed support
     for privilege separation.

OpenBSD      3.8                       September     25,     1999
8





Man(1) output converted with man2html