]> andersk Git - gssapi-openssh.git/blame - openssh/sshd_config.5
whitespace agreement with hpn patch
[gssapi-openssh.git] / openssh / sshd_config.5
CommitLineData
884dc78b 1.\" -*- nroff -*-
2.\"
3.\" Author: Tatu Ylonen <ylo@cs.hut.fi>
4.\" Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
5.\" All rights reserved
6.\"
7.\" As far as I am concerned, the code I have written for this software
8.\" can be used freely for any purpose. Any derived versions of this
9.\" software must be clearly marked as such, and if the derived work is
10.\" incompatible with the protocol description in the RFC file, it must be
11.\" called by a name other than "ssh" or "Secure Shell".
12.\"
13.\" Copyright (c) 1999,2000 Markus Friedl. All rights reserved.
14.\" Copyright (c) 1999 Aaron Campbell. All rights reserved.
15.\" Copyright (c) 1999 Theo de Raadt. All rights reserved.
16.\"
17.\" Redistribution and use in source and binary forms, with or without
18.\" modification, are permitted provided that the following conditions
19.\" are met:
20.\" 1. Redistributions of source code must retain the above copyright
21.\" notice, this list of conditions and the following disclaimer.
22.\" 2. Redistributions in binary form must reproduce the above copyright
23.\" notice, this list of conditions and the following disclaimer in the
24.\" documentation and/or other materials provided with the distribution.
25.\"
26.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
27.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
28.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
29.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
30.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
31.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
32.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
33.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
34.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
35.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36.\"
30460aeb 37.\" $OpenBSD: sshd_config.5,v 1.70 2006/08/21 08:14:01 dtucker Exp $
884dc78b 38.Dd September 25, 1999
39.Dt SSHD_CONFIG 5
40.Os
41.Sh NAME
42.Nm sshd_config
43.Nd OpenSSH SSH daemon configuration file
44.Sh SYNOPSIS
45.Bl -tag -width Ds -compact
46.It Pa /etc/ssh/sshd_config
47.El
48.Sh DESCRIPTION
30460aeb 49.Xr sshd 8
884dc78b 50reads configuration data from
51.Pa /etc/ssh/sshd_config
52(or the file specified with
53.Fl f
54on the command line).
55The file contains keyword-argument pairs, one per line.
56Lines starting with
57.Ql #
58and empty lines are interpreted as comments.
30460aeb 59Arguments may optionally be enclosed in double quotes
60.Pq \&"
61in order to represent arguments containing spaces.
884dc78b 62.Pp
63The possible
64keywords and their meanings are as follows (note that
65keywords are case-insensitive and arguments are case-sensitive):
66.Bl -tag -width Ds
7e82606e 67.It Cm AcceptEnv
68Specifies what environment variables sent by the client will be copied into
69the session's
70.Xr environ 7 .
71See
72.Cm SendEnv
73in
74.Xr ssh_config 5
75for how to configure the client.
76Note that environment passing is only supported for protocol 2.
77Variables are specified by name, which may contain the wildcard characters
30460aeb 78.Ql *
7e82606e 79and
80.Ql \&? .
81Multiple environment variables may be separated by whitespace or spread
82across multiple
83.Cm AcceptEnv
84directives.
85Be warned that some environment variables could be used to bypass restricted
86user environments.
87For this reason, care should be taken in the use of this directive.
88The default is not to accept any environment variables.
dfddba3d 89.It Cm AddressFamily
90Specifies which address family should be used by
30460aeb 91.Xr sshd 8 .
dfddba3d 92Valid arguments are
93.Dq any ,
94.Dq inet
30460aeb 95(use IPv4 only), or
dfddba3d 96.Dq inet6
97(use IPv6 only).
98The default is
99.Dq any .
884dc78b 100.It Cm AllowGroups
101This keyword can be followed by a list of group name patterns, separated
102by spaces.
103If specified, login is allowed only for users whose primary
104group or supplementary group list matches one of the patterns.
884dc78b 105Only group names are valid; a numerical group ID is not recognized.
106By default, login is allowed for all groups.
30460aeb 107The allow/deny directives are processed in the following order:
108.Cm DenyUsers ,
109.Cm AllowUsers ,
110.Cm DenyGroups ,
111and finally
112.Cm AllowGroups .
113.Pp
114See
115.Sx PATTERNS
116in
117.Xr ssh_config 5
118for more information on patterns.
884dc78b 119.It Cm AllowTcpForwarding
120Specifies whether TCP forwarding is permitted.
121The default is
122.Dq yes .
123Note that disabling TCP forwarding does not improve security unless
124users are also denied shell access, as they can always install their
125own forwarders.
884dc78b 126.It Cm AllowUsers
127This keyword can be followed by a list of user name patterns, separated
128by spaces.
bfe49944 129If specified, login is allowed only for user names that
884dc78b 130match one of the patterns.
884dc78b 131Only user names are valid; a numerical user ID is not recognized.
132By default, login is allowed for all users.
133If the pattern takes the form USER@HOST then USER and HOST
134are separately checked, restricting logins to particular
135users from particular hosts.
30460aeb 136The allow/deny directives are processed in the following order:
137.Cm DenyUsers ,
138.Cm AllowUsers ,
139.Cm DenyGroups ,
140and finally
141.Cm AllowGroups .
142.Pp
143See
144.Sx PATTERNS
145in
146.Xr ssh_config 5
147for more information on patterns.
884dc78b 148.It Cm AuthorizedKeysFile
149Specifies the file that contains the public keys that can be used
150for user authentication.
151.Cm AuthorizedKeysFile
152may contain tokens of the form %T which are substituted during connection
30460aeb 153setup.
7cac2b65 154The following tokens are defined: %% is replaced by a literal '%',
30460aeb 155%h is replaced by the home directory of the user being authenticated, and
884dc78b 156%u is replaced by the username of that user.
157After expansion,
158.Cm AuthorizedKeysFile
159is taken to be an absolute path or one relative to the user's home
160directory.
161The default is
162.Dq .ssh/authorized_keys .
163.It Cm Banner
164In some jurisdictions, sending a warning message before authentication
165may be relevant for getting legal protection.
166The contents of the specified file are sent to the remote user before
167authentication is allowed.
168This option is only available for protocol version 2.
169By default, no banner is displayed.
884dc78b 170.It Cm ChallengeResponseAuthentication
30460aeb 171Specifies whether challenge-response authentication is allowed.
884dc78b 172All authentication styles from
173.Xr login.conf 5
174are supported.
175The default is
176.Dq yes .
177.It Cm Ciphers
178Specifies the ciphers allowed for protocol version 2.
179Multiple ciphers must be comma-separated.
7e82606e 180The supported ciphers are
181.Dq 3des-cbc ,
182.Dq aes128-cbc ,
183.Dq aes192-cbc ,
184.Dq aes256-cbc ,
185.Dq aes128-ctr ,
186.Dq aes192-ctr ,
187.Dq aes256-ctr ,
2ce0bfe4 188.Dq arcfour128 ,
189.Dq arcfour256 ,
7e82606e 190.Dq arcfour ,
191.Dq blowfish-cbc ,
192and
193.Dq cast128-cbc .
30460aeb 194The default is:
195.Bd -literal -offset 3n
196aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,
197arcfour256,arcfour,aes192-cbc,aes256-cbc,aes128-ctr,
198aes192-ctr,aes256-ctr
884dc78b 199.Ed
884dc78b 200.It Cm ClientAliveCountMax
08822d99 201Sets the number of client alive messages (see below) which may be
884dc78b 202sent without
30460aeb 203.Xr sshd 8
7cac2b65 204receiving any messages back from the client.
205If this threshold is reached while client alive messages are being sent,
30460aeb 206sshd will disconnect the client, terminating the session.
7cac2b65 207It is important to note that the use of client alive messages is very
208different from
540d72c3 209.Cm TCPKeepAlive
7cac2b65 210(below).
211The client alive messages are sent through the encrypted channel
212and therefore will not be spoofable.
213The TCP keepalive option enabled by
540d72c3 214.Cm TCPKeepAlive
7cac2b65 215is spoofable.
216The client alive mechanism is valuable when the client or
884dc78b 217server depend on knowing when a connection has become inactive.
218.Pp
7cac2b65 219The default value is 3.
220If
884dc78b 221.Cm ClientAliveInterval
08822d99 222(see below) is set to 15, and
884dc78b 223.Cm ClientAliveCountMax
30460aeb 224is left at the default, unresponsive SSH clients
884dc78b 225will be disconnected after approximately 45 seconds.
30460aeb 226This option applies to protocol version 2 only.
2ce0bfe4 227.It Cm ClientAliveInterval
228Sets a timeout interval in seconds after which if no data has been received
229from the client,
30460aeb 230.Xr sshd 8
2ce0bfe4 231will send a message through the encrypted
232channel to request a response from the client.
233The default
234is 0, indicating that these messages will not be sent to the client.
235This option applies to protocol version 2 only.
884dc78b 236.It Cm Compression
2ce0bfe4 237Specifies whether compression is allowed, or delayed until
238the user has authenticated successfully.
884dc78b 239The argument must be
2ce0bfe4 240.Dq yes ,
241.Dq delayed ,
884dc78b 242or
243.Dq no .
244The default is
2ce0bfe4 245.Dq delayed .
884dc78b 246.It Cm DenyGroups
247This keyword can be followed by a list of group name patterns, separated
248by spaces.
249Login is disallowed for users whose primary group or supplementary
250group list matches one of the patterns.
884dc78b 251Only group names are valid; a numerical group ID is not recognized.
252By default, login is allowed for all groups.
30460aeb 253The allow/deny directives are processed in the following order:
254.Cm DenyUsers ,
255.Cm AllowUsers ,
256.Cm DenyGroups ,
257and finally
258.Cm AllowGroups .
259.Pp
260See
261.Sx PATTERNS
262in
263.Xr ssh_config 5
264for more information on patterns.
884dc78b 265.It Cm DenyUsers
266This keyword can be followed by a list of user name patterns, separated
267by spaces.
268Login is disallowed for user names that match one of the patterns.
884dc78b 269Only user names are valid; a numerical user ID is not recognized.
270By default, login is allowed for all users.
271If the pattern takes the form USER@HOST then USER and HOST
272are separately checked, restricting logins to particular
273users from particular hosts.
30460aeb 274The allow/deny directives are processed in the following order:
275.Cm DenyUsers ,
276.Cm AllowUsers ,
277.Cm DenyGroups ,
278and finally
279.Cm AllowGroups .
280.Pp
281See
282.Sx PATTERNS
283in
284.Xr ssh_config 5
285for more information on patterns.
286.It Cm ForceCommand
287Forces the execution of the command specified by
288.Cm ForceCommand ,
289ignoring any command supplied by the client.
290The command is invoked by using the user's login shell with the -c option.
291This applies to shell, command, or subsystem execution.
292It is most useful inside a
293.Cm Match
294block.
295The command originally supplied by the client is available in the
296.Ev SSH_ORIGINAL_COMMAND
297environment variable.
884dc78b 298.It Cm GatewayPorts
299Specifies whether remote hosts are allowed to connect to ports
300forwarded for the client.
301By default,
30460aeb 302.Xr sshd 8
bfe49944 303binds remote port forwardings to the loopback address.
304This prevents other remote hosts from connecting to forwarded ports.
884dc78b 305.Cm GatewayPorts
30460aeb 306can be used to specify that sshd
dfddba3d 307should allow remote port forwardings to bind to non-loopback addresses, thus
308allowing other hosts to connect.
309The argument may be
310.Dq no
311to force remote port forwardings to be available to the local host only,
884dc78b 312.Dq yes
dfddba3d 313to force remote port forwardings to bind to the wildcard address, or
314.Dq clientspecified
315to allow the client to select the address to which the forwarding is bound.
884dc78b 316The default is
317.Dq no .
7cac2b65 318.It Cm GSSAPIAuthentication
319Specifies whether user authentication based on GSSAPI is allowed.
540d72c3 320The default is
c5448518 321.Dq yes .
7cac2b65 322Note that this option applies to protocol version 2 only.
c5448518 323.It Cm GSSAPIKeyExchange
fe4ad273 324Specifies whether key exchange based on GSSAPI is allowed. GSSAPI key exchange
325doesn't rely on ssh keys to verify host identity.
44a053a3 326The default is
327.Dq yes .
c5448518 328Note that this option applies to protocol version 2 only.
fe4ad273 329.It Cm GSSAPICleanupCredentials
330Specifies whether to automatically destroy the user's credentials cache
331on logout.
44a053a3 332The default is
333.Dq yes .
c5448518 334Note that this option applies to protocol version 2 only.
f713db99 335.It Cm GSSAPIStrictAcceptorCheck
336Determines whether to be strict about the identity of the GSSAPI acceptor
337a client authenticates against. If
338.Dq yes
339then the client must authenticate against the
340.Pa host
341service on the current hostname. If
342.Dq no
343then the client may authenticate against any service key stored in the
344machine's default store. This facility is provided to assist with operation
345on multi homed machines.
346The default is
347.Dq yes .
348Note that this option applies only to protocol version 2 GSSAPI connections,
349and setting it to
350.Dq no
351may only work with recent Kerberos GSSAPI libraries.
ae82558b 352.It Cm GSSAPICredentialsPath
353If specified, the delegated GSSAPI credential is stored in the
354given path, overwriting any existing credentials.
355Paths can be specified with syntax similar to the AuthorizedKeysFile
356option (i.e., accepting %h and %u tokens).
357When using this option,
358setting 'GssapiCleanupCredentials no' is recommended,
359so logging out of one session
360doesn't remove the credentials in use by another session of
361the same user.
362Currently only implemented for the GSI mechanism.
826a9049 363.It Cm GSIAllowLimitedProxy
364Specifies whether to accept limited proxy credentials for
365authentication.
366The default is
367.Dq no .
c5448518 368.It Cm HostbasedAuthentication
369Specifies whether rhosts or /etc/hosts.equiv authentication together
370with successful public key client host authentication is allowed
30460aeb 371(host-based authentication).
c5448518 372This option is similar to
373.Cm RhostsRSAAuthentication
374and applies to protocol version 2 only.
52b36949 375The default is
c5448518 376.Dq no .
30460aeb 377.It Cm HostbasedUsesNameFromPacketOnly
378Specifies whether or not the server will attempt to perform a reverse
379name lookup when matching the name in the
380.Pa ~/.shosts ,
381.Pa ~/.rhosts ,
382and
383.Pa /etc/hosts.equiv
384files during
385.Cm HostbasedAuthentication .
386A setting of
387.Dq yes
388means that
389.Xr sshd 8
390uses the name supplied by the client rather than
391attempting to resolve the name from the TCP connection itself.
392The default is
393.Dq no .
884dc78b 394.It Cm HostKey
395Specifies a file containing a private host key
396used by SSH.
397The default is
398.Pa /etc/ssh/ssh_host_key
399for protocol version 1, and
400.Pa /etc/ssh/ssh_host_rsa_key
401and
402.Pa /etc/ssh/ssh_host_dsa_key
403for protocol version 2.
404Note that
30460aeb 405.Xr sshd 8
884dc78b 406will refuse to use a file if it is group/world-accessible.
407It is possible to have multiple host key files.
408.Dq rsa1
409keys are used for version 1 and
410.Dq dsa
411or
412.Dq rsa
413are used for version 2 of the SSH protocol.
414.It Cm IgnoreRhosts
415Specifies that
416.Pa .rhosts
417and
418.Pa .shosts
419files will not be used in
884dc78b 420.Cm RhostsRSAAuthentication
421or
422.Cm HostbasedAuthentication .
423.Pp
424.Pa /etc/hosts.equiv
425and
426.Pa /etc/shosts.equiv
427are still used.
428The default is
429.Dq yes .
430.It Cm IgnoreUserKnownHosts
431Specifies whether
30460aeb 432.Xr sshd 8
884dc78b 433should ignore the user's
2ce0bfe4 434.Pa ~/.ssh/known_hosts
884dc78b 435during
436.Cm RhostsRSAAuthentication
437or
438.Cm HostbasedAuthentication .
439The default is
440.Dq no .
884dc78b 441.It Cm KerberosAuthentication
7cac2b65 442Specifies whether the password provided by the user for
884dc78b 443.Cm PasswordAuthentication
7cac2b65 444will be validated through the Kerberos KDC.
884dc78b 445To use this option, the server needs a
446Kerberos servtab which allows the verification of the KDC's identity.
30460aeb 447The default is
884dc78b 448.Dq no .
12a403af 449.It Cm KerberosGetAFSToken
08822d99 450If AFS is active and the user has a Kerberos 5 TGT, attempt to acquire
12a403af 451an AFS token before accessing the user's home directory.
30460aeb 452The default is
12a403af 453.Dq no .
884dc78b 454.It Cm KerberosOrLocalPasswd
30460aeb 455If password authentication through Kerberos fails then
884dc78b 456the password will be validated via any additional local mechanism
457such as
458.Pa /etc/passwd .
30460aeb 459The default is
884dc78b 460.Dq yes .
884dc78b 461.It Cm KerberosTicketCleanup
462Specifies whether to automatically destroy the user's ticket cache
463file on logout.
30460aeb 464The default is
884dc78b 465.Dq yes .
466.It Cm KeyRegenerationInterval
467In protocol version 1, the ephemeral server key is automatically regenerated
468after this many seconds (if it has been used).
469The purpose of regeneration is to prevent
470decrypting captured sessions by later breaking into the machine and
471stealing the keys.
472The key is never stored anywhere.
473If the value is 0, the key is never regenerated.
474The default is 3600 (seconds).
475.It Cm ListenAddress
476Specifies the local addresses
30460aeb 477.Xr sshd 8
884dc78b 478should listen on.
479The following forms may be used:
480.Pp
481.Bl -item -offset indent -compact
482.It
483.Cm ListenAddress
484.Sm off
485.Ar host No | Ar IPv4_addr No | Ar IPv6_addr
486.Sm on
487.It
488.Cm ListenAddress
489.Sm off
490.Ar host No | Ar IPv4_addr No : Ar port
491.Sm on
492.It
493.Cm ListenAddress
494.Sm off
495.Oo
496.Ar host No | Ar IPv6_addr Oc : Ar port
497.Sm on
498.El
499.Pp
500If
501.Ar port
502is not specified,
30460aeb 503sshd will listen on the address and all prior
884dc78b 504.Cm Port
7cac2b65 505options specified.
506The default is to listen on all local addresses.
bfe49944 507Multiple
884dc78b 508.Cm ListenAddress
7cac2b65 509options are permitted.
510Additionally, any
884dc78b 511.Cm Port
30460aeb 512options must precede this option for non-port qualified addresses.
884dc78b 513.It Cm LoginGraceTime
514The server disconnects after this time if the user has not
515successfully logged in.
516If the value is 0, there is no time limit.
d03f4262 517The default is 120 seconds.
884dc78b 518.It Cm LogLevel
519Gives the verbosity level that is used when logging messages from
30460aeb 520.Xr sshd 8 .
884dc78b 521The possible values are:
30460aeb 522QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3.
bfe49944 523The default is INFO.
524DEBUG and DEBUG1 are equivalent.
525DEBUG2 and DEBUG3 each specify higher levels of debugging output.
526Logging with a DEBUG level violates the privacy of users and is not recommended.
884dc78b 527.It Cm MACs
528Specifies the available MAC (message authentication code) algorithms.
529The MAC algorithm is used in protocol version 2
530for data integrity protection.
531Multiple algorithms must be comma-separated.
30460aeb 532The default is:
884dc78b 533.Dq hmac-md5,hmac-sha1,hmac-ripemd160,hmac-sha1-96,hmac-md5-96 .
30460aeb 534.It Cm Match
535Introduces a conditional block.
536If all of the criteria on the
537.Cm Match
538line are satisfied, the keywords on the following lines override those
539set in the global section of the config file, until either another
540.Cm Match
541line or the end of the file.
542The arguments to
543.Cm Match
544are one or more criteria-pattern pairs.
545The available criteria are
546.Cm User ,
547.Cm Group ,
548.Cm Host ,
549and
550.Cm Address .
551Only a subset of keywords may be used on the lines following a
552.Cm Match
553keyword.
554Available keywords are
555.Cm AllowTcpForwarding ,
556.Cm ForceCommand ,
557.Cm GatewayPorts ,
558.Cm PermitOpen ,
559.Cm X11DisplayOffset ,
560.Cm X11Forwarding ,
561and
562.Cm X11UseLocalHost .
7e82606e 563.It Cm MaxAuthTries
564Specifies the maximum number of authentication attempts permitted per
565connection.
566Once the number of failures reaches half this value,
567additional failures are logged.
568The default is 6.
884dc78b 569.It Cm MaxStartups
570Specifies the maximum number of concurrent unauthenticated connections to the
30460aeb 571SSH daemon.
884dc78b 572Additional connections will be dropped until authentication succeeds or the
573.Cm LoginGraceTime
574expires for a connection.
575The default is 10.
576.Pp
577Alternatively, random early drop can be enabled by specifying
578the three colon separated values
579.Dq start:rate:full
30460aeb 580(e.g. "10:30:60").
581.Xr sshd 8
884dc78b 582will refuse connection attempts with a probability of
583.Dq rate/100
584(30%)
585if there are currently
586.Dq start
587(10)
588unauthenticated connections.
589The probability increases linearly and all connection attempts
590are refused if the number of unauthenticated connections reaches
591.Dq full
592(60).
593.It Cm PasswordAuthentication
594Specifies whether password authentication is allowed.
595The default is
596.Dq yes .
597.It Cm PermitEmptyPasswords
598When password authentication is allowed, it specifies whether the
599server allows login to accounts with empty password strings.
600The default is
601.Dq no .
30460aeb 602.It Cm PermitOpen
603Specifies the destinations to which TCP port forwarding is permitted.
604The forwarding specification must be one of the following forms:
605.Pp
606.Bl -item -offset indent -compact
607.It
608.Cm PermitOpen
609.Sm off
610.Ar host : port
611.Sm on
612.It
613.Cm PermitOpen
614.Sm off
615.Ar IPv4_addr : port
616.Sm on
617.It
618.Cm PermitOpen
619.Sm off
620.Ar \&[ IPv6_addr \&] : port
621.Sm on
622.El
623.Pp
624Multiple forwards may be specified by separating them with whitespace.
625An argument of
626.Dq any
627can be used to remove all restrictions and permit any forwarding requests.
628By default all port forwarding requests are permitted.
884dc78b 629.It Cm PermitRootLogin
dfddba3d 630Specifies whether root can log in using
884dc78b 631.Xr ssh 1 .
632The argument must be
633.Dq yes ,
634.Dq without-password ,
30460aeb 635.Dq forced-commands-only ,
884dc78b 636or
637.Dq no .
638The default is
639.Dq yes .
640.Pp
641If this option is set to
30460aeb 642.Dq without-password ,
dfddba3d 643password authentication is disabled for root.
884dc78b 644.Pp
645If this option is set to
30460aeb 646.Dq forced-commands-only ,
884dc78b 647root login with public key authentication will be allowed,
648but only if the
649.Ar command
650option has been specified
651(which may be useful for taking remote backups even if root login is
7cac2b65 652normally not allowed).
653All other authentication methods are disabled for root.
884dc78b 654.Pp
655If this option is set to
30460aeb 656.Dq no ,
dfddba3d 657root is not allowed to log in.
08822d99 658.It Cm PermitTunnel
659Specifies whether
660.Xr tun 4
661device forwarding is allowed.
662The argument must be
663.Dq yes ,
30460aeb 664.Dq point-to-point
665(layer 3),
08822d99 666.Dq ethernet
30460aeb 667(layer 2), or
08822d99 668.Dq no .
30460aeb 669Specifying
670.Dq yes
671permits both
672.Dq point-to-point
673and
674.Dq ethernet .
08822d99 675The default is
676.Dq no .
d03f4262 677.It Cm PermitUserEnvironment
678Specifies whether
679.Pa ~/.ssh/environment
680and
681.Cm environment=
682options in
683.Pa ~/.ssh/authorized_keys
684are processed by
30460aeb 685.Xr sshd 8 .
d03f4262 686The default is
687.Dq no .
688Enabling environment processing may enable users to bypass access
689restrictions in some configurations using mechanisms such as
690.Ev LD_PRELOAD .
884dc78b 691.It Cm PidFile
276b07a3 692Specifies the file that contains the process ID of the
30460aeb 693SSH daemon.
884dc78b 694The default is
695.Pa /var/run/sshd.pid .
696.It Cm Port
697Specifies the port number that
30460aeb 698.Xr sshd 8
884dc78b 699listens on.
700The default is 22.
701Multiple options of this type are permitted.
702See also
703.Cm ListenAddress .
704.It Cm PrintLastLog
705Specifies whether
30460aeb 706.Xr sshd 8
dfddba3d 707should print the date and time of the last user login when a user logs
708in interactively.
884dc78b 709The default is
710.Dq yes .
711.It Cm PrintMotd
712Specifies whether
30460aeb 713.Xr sshd 8
884dc78b 714should print
715.Pa /etc/motd
716when a user logs in interactively.
717(On some systems it is also printed by the shell,
718.Pa /etc/profile ,
719or equivalent.)
720The default is
721.Dq yes .
722.It Cm Protocol
723Specifies the protocol versions
30460aeb 724.Xr sshd 8
d03f4262 725supports.
884dc78b 726The possible values are
30460aeb 727.Sq 1
884dc78b 728and
30460aeb 729.Sq 2 .
884dc78b 730Multiple versions must be comma-separated.
731The default is
732.Dq 2,1 .
d03f4262 733Note that the order of the protocol list does not indicate preference,
734because the client selects among multiple protocol versions offered
735by the server.
736Specifying
737.Dq 2,1
738is identical to
739.Dq 1,2 .
884dc78b 740.It Cm PubkeyAuthentication
741Specifies whether public key authentication is allowed.
742The default is
743.Dq yes .
744Note that this option applies to protocol version 2 only.
884dc78b 745.It Cm RhostsRSAAuthentication
746Specifies whether rhosts or /etc/hosts.equiv authentication together
747with successful RSA host authentication is allowed.
748The default is
749.Dq no .
750This option applies to protocol version 1 only.
751.It Cm RSAAuthentication
752Specifies whether pure RSA authentication is allowed.
753The default is
754.Dq yes .
755This option applies to protocol version 1 only.
756.It Cm ServerKeyBits
757Defines the number of bits in the ephemeral protocol version 1 server key.
758The minimum value is 512, and the default is 768.
759.It Cm StrictModes
760Specifies whether
30460aeb 761.Xr sshd 8
884dc78b 762should check file modes and ownership of the
763user's files and home directory before accepting login.
764This is normally desirable because novices sometimes accidentally leave their
765directory or files world-writable.
766The default is
767.Dq yes .
768.It Cm Subsystem
30460aeb 769Configures an external subsystem (e.g. file transfer daemon).
770Arguments should be a subsystem name and a command (with optional arguments)
771to execute upon subsystem request.
884dc78b 772The command
773.Xr sftp-server 8
774implements the
775.Dq sftp
776file transfer subsystem.
777By default no subsystems are defined.
778Note that this option applies to protocol version 2 only.
779.It Cm SyslogFacility
780Gives the facility code that is used when logging messages from
30460aeb 781.Xr sshd 8 .
884dc78b 782The possible values are: DAEMON, USER, AUTH, LOCAL0, LOCAL1, LOCAL2,
783LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7.
784The default is AUTH.
540d72c3 785.It Cm TCPKeepAlive
786Specifies whether the system should send TCP keepalive messages to the
787other side.
788If they are sent, death of the connection or crash of one
789of the machines will be properly noticed.
790However, this means that
791connections will die if the route is down temporarily, and some people
792find it annoying.
793On the other hand, if TCP keepalives are not sent,
794sessions may hang indefinitely on the server, leaving
795.Dq ghost
796users and consuming server resources.
797.Pp
798The default is
799.Dq yes
800(to send TCP keepalive messages), and the server will notice
801if the network goes down or the client host crashes.
802This avoids infinitely hanging sessions.
803.Pp
804To disable TCP keepalive messages, the value should be set to
805.Dq no .
7cac2b65 806.It Cm UseDNS
807Specifies whether
30460aeb 808.Xr sshd 8
8b32eddc 809should look up the remote host name and check that
7cac2b65 810the resolved host name for the remote IP address maps back to the
811very same IP address.
812The default is
813.Dq yes .
884dc78b 814.It Cm UseLogin
815Specifies whether
816.Xr login 1
817is used for interactive login sessions.
818The default is
819.Dq no .
820Note that
821.Xr login 1
822is never used for remote command execution.
823Note also, that if this is enabled,
824.Cm X11Forwarding
825will be disabled because
826.Xr login 1
827does not know how to handle
828.Xr xauth 1
bfe49944 829cookies.
830If
884dc78b 831.Cm UsePrivilegeSeparation
832is specified, it will be disabled after authentication.
7cac2b65 833.It Cm UsePAM
7e82606e 834Enables the Pluggable Authentication Module interface.
835If set to
836.Dq yes
837this will enable PAM authentication using
838.Cm ChallengeResponseAuthentication
30460aeb 839and
840.Cm PasswordAuthentication
841in addition to PAM account and session module processing for all
842authentication types.
7e82606e 843.Pp
844Because PAM challenge-response authentication usually serves an equivalent
845role to password authentication, you should disable either
846.Cm PasswordAuthentication
847or
848.Cm ChallengeResponseAuthentication.
849.Pp
850If
851.Cm UsePAM
852is enabled, you will not be able to run
853.Xr sshd 8
854as a non-root user.
855The default is
540d72c3 856.Dq no .
884dc78b 857.It Cm UsePrivilegeSeparation
858Specifies whether
30460aeb 859.Xr sshd 8
884dc78b 860separates privileges by creating an unprivileged child process
bfe49944 861to deal with incoming network traffic.
862After successful authentication, another process will be created that has
863the privilege of the authenticated user.
864The goal of privilege separation is to prevent privilege
884dc78b 865escalation by containing any corruption within the unprivileged processes.
866The default is
867.Dq yes .
884dc78b 868.It Cm X11DisplayOffset
869Specifies the first display number available for
30460aeb 870.Xr sshd 8 Ns 's
884dc78b 871X11 forwarding.
30460aeb 872This prevents sshd from interfering with real X11 servers.
884dc78b 873The default is 10.
874.It Cm X11Forwarding
875Specifies whether X11 forwarding is permitted.
d03f4262 876The argument must be
877.Dq yes
878or
879.Dq no .
884dc78b 880The default is
881.Dq no .
d03f4262 882.Pp
883When X11 forwarding is enabled, there may be additional exposure to
884the server and to client displays if the
30460aeb 885.Xr sshd 8
d03f4262 886proxy display is configured to listen on the wildcard address (see
887.Cm X11UseLocalhost
30460aeb 888below), though this is not the default.
d03f4262 889Additionally, the authentication spoofing and authentication data
890verification and substitution occur on the client side.
891The security risk of using X11 forwarding is that the client's X11
30460aeb 892display server may be exposed to attack when the SSH client requests
d03f4262 893forwarding (see the warnings for
894.Cm ForwardX11
895in
7cac2b65 896.Xr ssh_config 5 ) .
d03f4262 897A system administrator may have a stance in which they want to
898protect clients that may expose themselves to attack by unwittingly
899requesting X11 forwarding, which can warrant a
900.Dq no
901setting.
902.Pp
903Note that disabling X11 forwarding does not prevent users from
904forwarding X11 traffic, as users can always install their own forwarders.
884dc78b 905X11 forwarding is automatically disabled if
906.Cm UseLogin
907is enabled.
908.It Cm X11UseLocalhost
909Specifies whether
30460aeb 910.Xr sshd 8
884dc78b 911should bind the X11 forwarding server to the loopback address or to
bfe49944 912the wildcard address.
913By default,
30460aeb 914sshd binds the forwarding server to the loopback address and sets the
884dc78b 915hostname part of the
916.Ev DISPLAY
917environment variable to
918.Dq localhost .
d03f4262 919This prevents remote hosts from connecting to the proxy display.
884dc78b 920However, some older X11 clients may not function with this
921configuration.
922.Cm X11UseLocalhost
923may be set to
924.Dq no
925to specify that the forwarding server should be bound to the wildcard
926address.
927The argument must be
928.Dq yes
929or
930.Dq no .
931The default is
932.Dq yes .
933.It Cm XAuthLocation
d03f4262 934Specifies the full pathname of the
884dc78b 935.Xr xauth 1
936program.
937The default is
938.Pa /usr/X11R6/bin/xauth .
939.El
30460aeb 940.Sh TIME FORMATS
941.Xr sshd 8
884dc78b 942command-line arguments and configuration file options that specify time
943may be expressed using a sequence of the form:
944.Sm off
d03f4262 945.Ar time Op Ar qualifier ,
884dc78b 946.Sm on
947where
948.Ar time
949is a positive integer value and
950.Ar qualifier
951is one of the following:
952.Pp
953.Bl -tag -width Ds -compact -offset indent
30460aeb 954.It Aq Cm none
884dc78b 955seconds
956.It Cm s | Cm S
957seconds
958.It Cm m | Cm M
959minutes
960.It Cm h | Cm H
961hours
962.It Cm d | Cm D
963days
964.It Cm w | Cm W
965weeks
966.El
967.Pp
968Each member of the sequence is added together to calculate
969the total time value.
970.Pp
971Time format examples:
972.Pp
973.Bl -tag -width Ds -compact -offset indent
974.It 600
975600 seconds (10 minutes)
976.It 10m
97710 minutes
978.It 1h30m
9791 hour 30 minutes (90 minutes)
980.El
981.Sh FILES
982.Bl -tag -width Ds
983.It Pa /etc/ssh/sshd_config
984Contains configuration data for
30460aeb 985.Xr sshd 8 .
884dc78b 986This file should be writable by root only, but it is recommended
987(though not necessary) that it be world-readable.
988.El
7cac2b65 989.Sh SEE ALSO
990.Xr sshd 8
884dc78b 991.Sh AUTHORS
992OpenSSH is a derivative of the original and free
993ssh 1.2.12 release by Tatu Ylonen.
994Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos,
995Theo de Raadt and Dug Song
996removed many bugs, re-added newer features and
997created OpenSSH.
998Markus Friedl contributed the support for SSH
999protocol versions 1.5 and 2.0.
1000Niels Provos and Markus Friedl contributed support
1001for privilege separation.
This page took 0.226498 seconds and 5 git commands to generate.