1SSHD_CONFIG(5)              BSD File Formats Manual             SSHD_CONFIG(5)
2

NAME

4     sshd_config — OpenSSH daemon configuration file
5

DESCRIPTION

7     sshd(8) reads configuration data from /etc/ssh/sshd_config (or the file
8     specified with -f on the command line).  The file contains keyword-argu‐
9     ment pairs, one per line.  For each keyword, the first obtained value
10     will be used.  Lines starting with ‘#’ and empty lines are interpreted as
11     comments.  Arguments may optionally be enclosed in double quotes (") in
12     order to represent arguments containing spaces.
13
14     The possible keywords and their meanings are as follows (note that key‐
15     words are case-insensitive and arguments are case-sensitive):
16
17     AcceptEnv
18             Specifies what environment variables sent by the client will be
19             copied into the session's environ(7).  See SendEnv and SetEnv in
20             ssh_config(5) for how to configure the client.  The TERM environ‐
21             ment variable is always accepted whenever the client requests a
22             pseudo-terminal as it is required by the protocol.  Variables are
23             specified by name, which may contain the wildcard characters ‘*’
24             and ‘?’.  Multiple environment variables may be separated by
25             whitespace or spread across multiple AcceptEnv directives.  Be
26             warned that some environment variables could be used to bypass
27             restricted user environments.  For this reason, care should be
28             taken in the use of this directive.  The default is not to accept
29             any environment variables.
30
31     AddressFamily
32             Specifies which address family should be used by sshd(8).  Valid
33             arguments are any (the default), inet (use IPv4 only), or inet6
34             (use IPv6 only).
35
36     AllowAgentForwarding
37             Specifies whether ssh-agent(1) forwarding is permitted.  The de‐
38             fault is yes.  Note that disabling agent forwarding does not im‐
39             prove security unless users are also denied shell access, as they
40             can always install their own forwarders.
41
42     AllowGroups
43             This keyword can be followed by a list of group name patterns,
44             separated by spaces.  If specified, login is allowed only for
45             users whose primary group or supplementary group list matches one
46             of the patterns.  Only group names are valid; a numerical group
47             ID is not recognized.  By default, login is allowed for all
48             groups.  The allow/deny groups directives are processed in the
49             following order: DenyGroups, AllowGroups.
50
51             See PATTERNS in ssh_config(5) for more information on patterns.
52
53     AllowStreamLocalForwarding
54             Specifies whether StreamLocal (Unix-domain socket) forwarding is
55             permitted.  The available options are yes (the default) or all to
56             allow StreamLocal forwarding, no to prevent all StreamLocal for‐
57             warding, local to allow local (from the perspective of ssh(1))
58             forwarding only or remote to allow remote forwarding only.  Note
59             that disabling StreamLocal forwarding does not improve security
60             unless users are also denied shell access, as they can always in‐
61             stall their own forwarders.
62
63     AllowTcpForwarding
64             Specifies whether TCP forwarding is permitted.  The available op‐
65             tions are yes (the default) or all to allow TCP forwarding, no to
66             prevent all TCP forwarding, local to allow local (from the per‐
67             spective of ssh(1)) forwarding only or remote to allow remote
68             forwarding only.  Note that disabling TCP forwarding does not im‐
69             prove security unless users are also denied shell access, as they
70             can always install their own forwarders.
71
72     AllowUsers
73             This keyword can be followed by a list of user name patterns,
74             separated by spaces.  If specified, login is allowed only for
75             user names that match one of the patterns.  Only user names are
76             valid; a numerical user ID is not recognized.  By default, login
77             is allowed for all users.  If the pattern takes the form
78             USER@HOST then USER and HOST are separately checked, restricting
79             logins to particular users from particular hosts.  HOST criteria
80             may additionally contain addresses to match in CIDR ad‐
81             dress/masklen format.  The allow/deny users directives are pro‐
82             cessed in the following order: DenyUsers, AllowUsers.
83
84             See PATTERNS in ssh_config(5) for more information on patterns.
85
86     AuthenticationMethods
87             Specifies the authentication methods that must be successfully
88             completed for a user to be granted access.  This option must be
89             followed by one or more lists of comma-separated authentication
90             method names, or by the single string any to indicate the default
91             behaviour of accepting any single authentication method.  If the
92             default is overridden, then successful authentication requires
93             completion of every method in at least one of these lists.
94
95             For example, "publickey,password publickey,keyboard-interactive"
96             would require the user to complete public key authentication,
97             followed by either password or keyboard interactive authentica‐
98             tion.  Only methods that are next in one or more lists are of‐
99             fered at each stage, so for this example it would not be possible
100             to attempt password or keyboard-interactive authentication before
101             public key.
102
103             For keyboard interactive authentication it is also possible to
104             restrict authentication to a specific device by appending a colon
105             followed by the device identifier bsdauth or pam.  depending on
106             the server configuration.  For example,
107             "keyboard-interactive:bsdauth" would restrict keyboard interac‐
108             tive authentication to the bsdauth device.
109
110             If the publickey method is listed more than once, sshd(8) veri‐
111             fies that keys that have been used successfully are not reused
112             for subsequent authentications.  For example,
113             "publickey,publickey" requires successful authentication using
114             two different public keys.
115
116             Note that each authentication method listed should also be ex‐
117             plicitly enabled in the configuration.
118
119             The available authentication methods are: "gssapi-with-mic",
120             "hostbased", "keyboard-interactive", "none" (used for access to
121             password-less accounts when PermitEmptyPasswords is enabled),
122             "password" and "publickey".
123
124     AuthorizedKeysCommand
125             Specifies a program to be used to look up the user's public keys.
126             The program must be owned by root, not writable by group or oth‐
127             ers and specified by an absolute path.  Arguments to
128             AuthorizedKeysCommand accept the tokens described in the TOKENS
129             section.  If no arguments are specified then the username of the
130             target user is used.
131
132             The program should produce on standard output zero or more lines
133             of authorized_keys output (see AUTHORIZED_KEYS in sshd(8)).
134             AuthorizedKeysCommand is tried after the usual AuthorizedKeysFile
135             files and will not be executed if a matching key is found there.
136             By default, no AuthorizedKeysCommand is run.
137
138     AuthorizedKeysCommandUser
139             Specifies the user under whose account the AuthorizedKeysCommand
140             is run.  It is recommended to use a dedicated user that has no
141             other role on the host than running authorized keys commands.  If
142             AuthorizedKeysCommand is specified but AuthorizedKeysCommandUser
143             is not, then sshd(8) will refuse to start.
144
145     AuthorizedKeysFile
146             Specifies the file that contains the public keys used for user
147             authentication.  The format is described in the AUTHORIZED_KEYS
148             FILE FORMAT section of sshd(8).  Arguments to AuthorizedKeysFile
149             accept the tokens described in the TOKENS section.  After expan‐
150             sion, AuthorizedKeysFile is taken to be an absolute path or one
151             relative to the user's home directory.  Multiple files may be
152             listed, separated by whitespace.  Alternately this option may be
153             set to none to skip checking for user keys in files.  The default
154             is ".ssh/authorized_keys .ssh/authorized_keys2".
155
156     AuthorizedPrincipalsCommand
157             Specifies a program to be used to generate the list of allowed
158             certificate principals as per AuthorizedPrincipalsFile.  The pro‐
159             gram must be owned by root, not writable by group or others and
160             specified by an absolute path.  Arguments to
161             AuthorizedPrincipalsCommand accept the tokens described in the
162             TOKENS section.  If no arguments are specified then the username
163             of the target user is used.
164
165             The program should produce on standard output zero or more lines
166             of AuthorizedPrincipalsFile output.  If either
167             AuthorizedPrincipalsCommand or AuthorizedPrincipalsFile is speci‐
168             fied, then certificates offered by the client for authentication
169             must contain a principal that is listed.  By default, no
170             AuthorizedPrincipalsCommand is run.
171
172     AuthorizedPrincipalsCommandUser
173             Specifies the user under whose account the
174             AuthorizedPrincipalsCommand is run.  It is recommended to use a
175             dedicated user that has no other role on the host than running
176             authorized principals commands.  If AuthorizedPrincipalsCommand
177             is specified but AuthorizedPrincipalsCommandUser is not, then
178             sshd(8) will refuse to start.
179
180     AuthorizedPrincipalsFile
181             Specifies a file that lists principal names that are accepted for
182             certificate authentication.  When using certificates signed by a
183             key listed in TrustedUserCAKeys, this file lists names, one of
184             which must appear in the certificate for it to be accepted for
185             authentication.  Names are listed one per line preceded by key
186             options (as described in AUTHORIZED_KEYS FILE FORMAT in sshd(8)).
187             Empty lines and comments starting with ‘#’ are ignored.
188
189             Arguments to AuthorizedPrincipalsFile accept the tokens described
190             in the TOKENS section.  After expansion, AuthorizedPrincipalsFile
191             is taken to be an absolute path or one relative to the user's
192             home directory.  The default is none, i.e. not to use a princi‐
193             pals file – in this case, the username of the user must appear in
194             a certificate's principals list for it to be accepted.
195
196             Note that AuthorizedPrincipalsFile is only used when authentica‐
197             tion proceeds using a CA listed in TrustedUserCAKeys and is not
198             consulted for certification authorities trusted via
199             ~/.ssh/authorized_keys, though the principals= key option offers
200             a similar facility (see sshd(8) for details).
201
202     Banner  The contents of the specified file are sent to the remote user
203             before authentication is allowed.  If the argument is none then
204             no banner is displayed.  By default, no banner is displayed.
205
206     CASignatureAlgorithms
207             The default is handled system-wide by crypto-policies(7).  Infor‐
208             mation about defaults, how to modify the defaults and how to cus‐
209             tomize existing policies with sub-policies are present in manual
210             page update-crypto-policies(8).
211
212             Specifies which algorithms are allowed for signing of certifi‐
213             cates by certificate authorities (CAs).  If the specified list
214             begins with a ‘+’ character, then the specified algorithms will
215             be appended to the default set instead of replacing them.  If the
216             specified list begins with a ‘-’ character, then the specified
217             algorithms (including wildcards) will be removed from the default
218             set instead of replacing them.
219
220             Certificates signed using other algorithms will not be accepted
221             for public key or host-based authentication.
222
223     ChrootDirectory
224             Specifies the pathname of a directory to chroot(2) to after au‐
225             thentication.  At session startup sshd(8) checks that all compo‐
226             nents of the pathname are root-owned directories which are not
227             writable by any other user or group.  After the chroot, sshd(8)
228             changes the working directory to the user's home directory.  Ar‐
229             guments to ChrootDirectory accept the tokens described in the
230             TOKENS section.
231
232             The ChrootDirectory must contain the necessary files and directo‐
233             ries to support the user's session.  For an interactive session
234             this requires at least a shell, typically sh(1), and basic /dev
235             nodes such as null(4), zero(4), stdin(4), stdout(4), stderr(4),
236             and tty(4) devices.  For file transfer sessions using SFTP no ad‐
237             ditional configuration of the environment is necessary if the in-
238             process sftp-server is used, though sessions which use logging
239             may require /dev/log inside the chroot directory on some operat‐
240             ing systems (see sftp-server(8) for details).
241
242             For safety, it is very important that the directory hierarchy be
243             prevented from modification by other processes on the system (es‐
244             pecially those outside the jail).  Misconfiguration can lead to
245             unsafe environments which sshd(8) cannot detect.
246
247             The default is none, indicating not to chroot(2).
248
249     Ciphers
250             The default is handled system-wide by crypto-policies(7).  Infor‐
251             mation about defaults, how to modify the defaults and how to cus‐
252             tomize existing policies with sub-policies are present in manual
253             page update-crypto-policies(8).
254
255             Specifies the ciphers allowed.  Multiple ciphers must be comma-
256             separated.  If the specified list begins with a ‘+’ character,
257             then the specified ciphers will be appended to the built-in
258             openssh default set instead of replacing them.  If the specified
259             list begins with a ‘-’ character, then the specified ciphers (in‐
260             cluding wildcards) will be removed from the built-in openssh de‐
261             fault set instead of replacing them.  If the specified list be‐
262             gins with a ‘^’ character, then the specified ciphers will be
263             placed at the head of the built-in openssh default set.
264
265             The supported ciphers are:
266
267                   3des-cbc
268                   aes128-cbc
269                   aes192-cbc
270                   aes256-cbc
271                   aes128-ctr
272                   aes192-ctr
273                   aes256-ctr
274                   aes128-gcm@openssh.com
275                   aes256-gcm@openssh.com
276                   chacha20-poly1305@openssh.com
277
278             The list of available ciphers may also be obtained using "ssh -Q
279             cipher".
280
281     ClientAliveCountMax
282             Sets the number of client alive messages which may be sent with‐
283             out sshd(8) receiving any messages back from the client.  If this
284             threshold is reached while client alive messages are being sent,
285             sshd will disconnect the client, terminating the session.  It is
286             important to note that the use of client alive messages is very
287             different from TCPKeepAlive.  The client alive messages are sent
288             through the encrypted channel and therefore will not be spoofa‐
289             ble.  The TCP keepalive option enabled by TCPKeepAlive is spoofa‐
290             ble.  The client alive mechanism is valuable when the client or
291             server depend on knowing when a connection has become unrespon‐
292             sive.
293
294             The default value is 3.  If ClientAliveInterval is set to 15, and
295             ClientAliveCountMax is left at the default, unresponsive SSH
296             clients will be disconnected after approximately 45 seconds.
297             Setting a zero ClientAliveCountMax disables connection termina‐
298             tion.
299
300     ClientAliveInterval
301             Sets a timeout interval in seconds after which if no data has
302             been received from the client, sshd(8) will send a message
303             through the encrypted channel to request a response from the
304             client.  The default is 0, indicating that these messages will
305             not be sent to the client.
306
307     Compression
308             Specifies whether compression is enabled after the user has au‐
309             thenticated successfully.  The argument must be yes, delayed (a
310             legacy synonym for yes) or no.  The default is yes.
311
312     DenyGroups
313             This keyword can be followed by a list of group name patterns,
314             separated by spaces.  Login is disallowed for users whose primary
315             group or supplementary group list matches one of the patterns.
316             Only group names are valid; a numerical group ID is not recog‐
317             nized.  By default, login is allowed for all groups.  The al‐
318             low/deny groups directives are processed in the following order:
319             DenyGroups, AllowGroups.
320
321             See PATTERNS in ssh_config(5) for more information on patterns.
322
323     DenyUsers
324             This keyword can be followed by a list of user name patterns,
325             separated by spaces.  Login is disallowed for user names that
326             match one of the patterns.  Only user names are valid; a numeri‐
327             cal user ID is not recognized.  By default, login is allowed for
328             all users.  If the pattern takes the form USER@HOST then USER and
329             HOST are separately checked, restricting logins to particular
330             users from particular hosts.  HOST criteria may additionally con‐
331             tain addresses to match in CIDR address/masklen format.  The al‐
332             low/deny users directives are processed in the following order:
333             DenyUsers, AllowUsers.
334
335             See PATTERNS in ssh_config(5) for more information on patterns.
336
337     DisableForwarding
338             Disables all forwarding features, including X11, ssh-agent(1),
339             TCP and StreamLocal.  This option overrides all other forwarding-
340             related options and may simplify restricted configurations.
341
342     ExposeAuthInfo
343             Writes a temporary file containing a list of authentication meth‐
344             ods and public credentials (e.g. keys) used to authenticate the
345             user.  The location of the file is exposed to the user session
346             through the SSH_USER_AUTH environment variable.  The default is
347             no.
348
349     FingerprintHash
350             Specifies the hash algorithm used when logging key fingerprints.
351             Valid options are: md5 and sha256.  The default is sha256.
352
353     ForceCommand
354             Forces the execution of the command specified by ForceCommand,
355             ignoring any command supplied by the client and ~/.ssh/rc if
356             present.  The command is invoked by using the user's login shell
357             with the -c option.  This applies to shell, command, or subsystem
358             execution.  It is most useful inside a Match block.  The command
359             originally supplied by the client is available in the
360             SSH_ORIGINAL_COMMAND environment variable.  Specifying a command
361             of internal-sftp will force the use of an in-process SFTP server
362             that requires no support files when used with ChrootDirectory.
363             The default is none.
364
365     GatewayPorts
366             Specifies whether remote hosts are allowed to connect to ports
367             forwarded for the client.  By default, sshd(8) binds remote port
368             forwardings to the loopback address.  This prevents other remote
369             hosts from connecting to forwarded ports.  GatewayPorts can be
370             used to specify that sshd should allow remote port forwardings to
371             bind to non-loopback addresses, thus allowing other hosts to con‐
372             nect.  The argument may be no to force remote port forwardings to
373             be available to the local host only, yes to force remote port
374             forwardings to bind to the wildcard address, or clientspecified
375             to allow the client to select the address to which the forwarding
376             is bound.  The default is no.
377
378     GSSAPIAuthentication
379             Specifies whether user authentication based on GSSAPI is allowed.
380             The default is no.
381
382     GSSAPICleanupCredentials
383             Specifies whether to automatically destroy the user's credentials
384             cache on logout.  The default is yes.
385
386     GSSAPIEnablek5users
387             Specifies whether to look at .k5users file for GSSAPI authentica‐
388             tion access control. Further details are described in ksu(1).
389             The default is no.
390
391     GSSAPIKeyExchange
392             Specifies whether key exchange based on GSSAPI is allowed. GSSAPI
393             key exchange doesn't rely on ssh keys to verify host identity.
394             The default is no.
395
396     GSSAPIStrictAcceptorCheck
397             Determines whether to be strict about the identity of the GSSAPI
398             acceptor a client authenticates against.  If set to yes then the
399             client must authenticate against the host service on the current
400             hostname.  If set to no then the client may authenticate against
401             any service key stored in the machine's default store.  This fa‐
402             cility is provided to assist with operation on multi homed ma‐
403             chines.  The default is yes.
404
405     GSSAPIStoreCredentialsOnRekey
406             Controls whether the user's GSSAPI credentials should be updated
407             following a successful connection rekeying. This option can be
408             used to accepted renewed or updated credentials from a compatible
409             client. The default is “no”.
410
411             For this to work GSSAPIKeyExchange needs to be enabled in the
412             server and also used by the client.
413
414     GSSAPIKexAlgorithms
415             The default is handled system-wide by crypto-policies(7).  Infor‐
416             mation about defaults, how to modify the defaults and how to cus‐
417             tomize existing policies with sub-policies are present in manual
418             page update-crypto-policies(8).
419
420             The list of key exchange algorithms that are accepted by GSSAPI
421             key exchange. Possible values are
422
423                gss-gex-sha1-
424                gss-group1-sha1-
425                gss-group14-sha1-
426                gss-group14-sha256-
427                gss-group16-sha512-
428                gss-nistp256-sha256-
429                gss-curve25519-sha256-
430             This option only applies to connections using GSSAPI.
431
432     HostbasedAcceptedAlgorithms
433             Specifies the signature algorithms that will be accepted for
434             hostbased authentication as a list of comma-separated patterns.
435             Alternately if the specified list begins with a ‘+’ character,
436             then the specified signature algorithms will be appended to the
437             default set instead of replacing them.  If the specified list be‐
438             gins with a ‘-’ character, then the specified signature algo‐
439             rithms (including wildcards) will be removed from the default set
440             instead of replacing them.  If the specified list begins with a
441             ‘^’ character, then the specified signature algorithms will be
442             placed at the head of the default set.  The default for this op‐
443             tion is:
444
445                ssh-ed25519-cert-v01@openssh.com,
446                ecdsa-sha2-nistp256-cert-v01@openssh.com,
447                ecdsa-sha2-nistp384-cert-v01@openssh.com,
448                ecdsa-sha2-nistp521-cert-v01@openssh.com,
449                sk-ssh-ed25519-cert-v01@openssh.com,
450                sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,
451                rsa-sha2-512-cert-v01@openssh.com,
452                rsa-sha2-256-cert-v01@openssh.com,
453                ssh-rsa-cert-v01@openssh.com,
454                ssh-ed25519,
455                ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
456                sk-ssh-ed25519@openssh.com,
457                sk-ecdsa-sha2-nistp256@openssh.com,
458                rsa-sha2-512,rsa-sha2-256,ssh-rsa
459
460             The list of available signature algorithms may also be obtained
461             using "ssh -Q HostbasedAcceptedAlgorithms".  This was formerly
462             named HostbasedAcceptedKeyTypes.
463
464     HostbasedAuthentication
465             Specifies whether rhosts or /etc/hosts.equiv authentication to‐
466             gether with successful public key client host authentication is
467             allowed (host-based authentication).  The default is no.
468
469     HostbasedUsesNameFromPacketOnly
470             Specifies whether or not the server will attempt to perform a re‐
471             verse name lookup when matching the name in the ~/.shosts,
472             ~/.rhosts, and /etc/hosts.equiv files during
473             HostbasedAuthentication.  A setting of yes means that sshd(8)
474             uses the name supplied by the client rather than attempting to
475             resolve the name from the TCP connection itself.  The default is
476             no.
477
478     HostCertificate
479             Specifies a file containing a public host certificate.  The cer‐
480             tificate's public key must match a private host key already spec‐
481             ified by HostKey.  The default behaviour of sshd(8) is not to
482             load any certificates.
483
484     HostKey
485             Specifies a file containing a private host key used by SSH.  The
486             defaults are /etc/ssh/ssh_host_ecdsa_key,
487             /etc/ssh/ssh_host_ed25519_key and /etc/ssh/ssh_host_rsa_key.
488
489             Note that sshd(8) will refuse to use a file if it is group/world-
490             accessible and that the HostKeyAlgorithms option restricts which
491             of the keys are actually used by sshd(8).
492
493             It is possible to have multiple host key files.  It is also pos‐
494             sible to specify public host key files instead.  In this case op‐
495             erations on the private key will be delegated to an ssh-agent(1).
496
497     HostKeyAgent
498             Identifies the UNIX-domain socket used to communicate with an
499             agent that has access to the private host keys.  If the string
500             "SSH_AUTH_SOCK" is specified, the location of the socket will be
501             read from the SSH_AUTH_SOCK environment variable.
502
503     HostKeyAlgorithms
504             The default is handled system-wide by crypto-policies(7).  Infor‐
505             mation about defaults, how to modify the defaults and how to cus‐
506             tomize existing policies with sub-policies are present in manual
507             page update-crypto-policies(8).
508
509             Specifies the host key signature algorithms that the server of‐
510             fers.  The list of available signature algorithms may also be ob‐
511             tained using "ssh -Q HostKeyAlgorithms".
512
513     IgnoreRhosts
514             Specifies whether to ignore per-user .rhosts and .shosts files
515             during HostbasedAuthentication.  The system-wide /etc/hosts.equiv
516             and /etc/ssh/shosts.equiv are still used regardless of this set‐
517             ting.
518
519             Accepted values are yes (the default) to ignore all per-user
520             files, shosts-only to allow the use of .shosts but to ignore
521             .rhosts or no to allow both .shosts and rhosts.
522
523     IgnoreUserKnownHosts
524             Specifies whether sshd(8) should ignore the user's
525             ~/.ssh/known_hosts during HostbasedAuthentication and use only
526             the system-wide known hosts file /etc/ssh/known_hosts.  The de‐
527             fault is “no”.
528
529     Include
530             Include the specified configuration file(s).  Multiple pathnames
531             may be specified and each pathname may contain glob(7) wildcards
532             that will be expanded and processed in lexical order.  Files
533             without absolute paths are assumed to be in /etc/ssh.  An Include
534             directive may appear inside a Match block to perform conditional
535             inclusion.
536
537     IPQoS   Specifies the IPv4 type-of-service or DSCP class for the connec‐
538             tion.  Accepted values are af11, af12, af13, af21, af22, af23,
539             af31, af32, af33, af41, af42, af43, cs0, cs1, cs2, cs3, cs4, cs5,
540             cs6, cs7, ef, le, lowdelay, throughput, reliability, a numeric
541             value, or none to use the operating system default.  This option
542             may take one or two arguments, separated by whitespace.  If one
543             argument is specified, it is used as the packet class uncondi‐
544             tionally.  If two values are specified, the first is automati‐
545             cally selected for interactive sessions and the second for non-
546             interactive sessions.  The default is af21 (Low-Latency Data) for
547             interactive sessions and cs1 (Lower Effort) for non-interactive
548             sessions.
549
550     KbdInteractiveAuthentication
551             Specifies whether to allow keyboard-interactive authentication.
552             All authentication styles from login.conf(5) are supported.  The
553             default is yes.  The argument to this keyword must be yes or no.
554             ChallengeResponseAuthentication is a deprecated alias for this.
555
556     KerberosAuthentication
557             Specifies whether the password provided by the user for
558             PasswordAuthentication will be validated through the Kerberos
559             KDC.  To use this option, the server needs a Kerberos servtab
560             which allows the verification of the KDC's identity.  The default
561             is no.
562
563     KerberosGetAFSToken
564             If AFS is active and the user has a Kerberos 5 TGT, attempt to
565             acquire an AFS token before accessing the user's home directory.
566             The default is no.
567
568     KerberosOrLocalPasswd
569             If password authentication through Kerberos fails then the pass‐
570             word will be validated via any additional local mechanism such as
571             /etc/passwd.  The default is yes.
572
573     KerberosTicketCleanup
574             Specifies whether to automatically destroy the user's ticket
575             cache file on logout.  The default is yes.
576
577     KerberosUniqueCCache
578             Specifies whether to store the acquired tickets in the per-ses‐
579             sion credential cache under /tmp/ or whether to use per-user cre‐
580             dential cache as configured in /etc/krb5.conf.  The default value
581             no can lead to overwriting previous tickets by subseqent connec‐
582             tions to the same user account.
583
584     KerberosUseKuserok
585             Specifies whether to look at .k5login file for user's aliases.
586             The default is yes.
587
588     KexAlgorithms
589             The default is handled system-wide by crypto-policies(7).  Infor‐
590             mation about defaults, how to modify the defaults and how to cus‐
591             tomize existing policies with sub-policies are present in manual
592             page update-crypto-policies(8).
593
594             Specifies the available KEX (Key Exchange) algorithms.  Multiple
595             algorithms must be comma-separated.  Alternately if the specified
596             list begins with a ‘+’ character, then the specified methods will
597             be appended to the built-in openssh default set instead of re‐
598             placing them.  If the specified list begins with a ‘-’ character,
599             then the specified algorithms (including wildcards) will be re‐
600             moved from the built-in openssh default set instead of replacing
601             them.  If the specified list begins with a ‘^’ character, then
602             the specified algorithms will be placed at the head of the built-
603             in openssh default set.  The supported algorithms are:
604
605                   curve25519-sha256
606                   curve25519-sha256@libssh.org
607                   diffie-hellman-group1-sha1
608                   diffie-hellman-group14-sha1
609                   diffie-hellman-group14-sha256
610                   diffie-hellman-group16-sha512
611                   diffie-hellman-group18-sha512
612                   diffie-hellman-group-exchange-sha1
613                   diffie-hellman-group-exchange-sha256
614                   ecdh-sha2-nistp256
615                   ecdh-sha2-nistp384
616                   ecdh-sha2-nistp521
617                   sntrup761x25519-sha512@openssh.com
618
619             The list of available key exchange algorithms may also be ob‐
620             tained using "ssh -Q KexAlgorithms".
621
622     ListenAddress
623             Specifies the local addresses sshd(8) should listen on.  The fol‐
624             lowing forms may be used:
625
626                   ListenAddress hostname|address [rdomain domain]
627                   ListenAddress hostname:port [rdomain domain]
628                   ListenAddress IPv4_address:port [rdomain domain]
629                   ListenAddress [hostname|address]:port [rdomain domain]
630
631             The optional rdomain qualifier requests sshd(8) listen in an ex‐
632             plicit routing domain.  If port is not specified, sshd will lis‐
633             ten on the address and all Port options specified.  The default
634             is to listen on all local addresses on the current default rout‐
635             ing domain.  Multiple ListenAddress options are permitted.  For
636             more information on routing domains, see rdomain(4).
637
638     LoginGraceTime
639             The server disconnects after this time if the user has not suc‐
640             cessfully logged in.  If the value is 0, there is no time limit.
641             The default is 120 seconds.
642
643     LogLevel
644             Gives the verbosity level that is used when logging messages from
645             sshd(8).  The possible values are: QUIET, FATAL, ERROR, INFO,
646             VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3.  The default is INFO.
647             DEBUG and DEBUG1 are equivalent.  DEBUG2 and DEBUG3 each specify
648             higher levels of debugging output.  Logging with a DEBUG level
649             violates the privacy of users and is not recommended.
650
651     LogVerbose
652             Specify one or more overrides to LogLevel.  An override consists
653             of a pattern lists that matches the source file, function and
654             line number to force detailed logging for.  For example, an over‐
655             ride pattern of:
656
657                   kex.c:*:1000,*:kex_exchange_identification():*,packet.c:*
658
659             would enable detailed logging for line 1000 of kex.c, everything
660             in the kex_exchange_identification() function, and all code in
661             the packet.c file.  This option is intended for debugging and no
662             overrides are enabled by default.
663
664     MACs    The default is handled system-wide by crypto-policies(7).  Infor‐
665             mation about defaults, how to modify the defaults and how to cus‐
666             tomize existing policies with sub-policies are present in manual
667             page update-crypto-policies(8).
668
669             Specifies the available MAC (message authentication code) algo‐
670             rithms.  The MAC algorithm is used for data integrity protection.
671             Multiple algorithms must be comma-separated.  If the specified
672             list begins with a ‘+’ character, then the specified algorithms
673             will be appended to the built-in openssh default set instead of
674             replacing them.  If the specified list begins with a ‘-’ charac‐
675             ter, then the specified algorithms (including wildcards) will be
676             removed from the built-in openssh default set instead of replac‐
677             ing them.  If the specified list begins with a ‘^’ character,
678             then the specified algorithms will be placed at the head of the
679             built-in openssh default set.
680
681             The algorithms that contain "-etm" calculate the MAC after en‐
682             cryption (encrypt-then-mac).  These are considered safer and
683             their use recommended.  The supported MACs are:
684
685                   hmac-md5
686                   hmac-md5-96
687                   hmac-sha1
688                   hmac-sha1-96
689                   hmac-sha2-256
690                   hmac-sha2-512
691                   umac-64@openssh.com
692                   umac-128@openssh.com
693                   hmac-md5-etm@openssh.com
694                   hmac-md5-96-etm@openssh.com
695                   hmac-sha1-etm@openssh.com
696                   hmac-sha1-96-etm@openssh.com
697                   hmac-sha2-256-etm@openssh.com
698                   hmac-sha2-512-etm@openssh.com
699                   umac-64-etm@openssh.com
700                   umac-128-etm@openssh.com
701
702             The list of available MAC algorithms may also be obtained using
703             "ssh -Q mac".
704
705     Match   Introduces a conditional block.  If all of the criteria on the
706             Match line are satisfied, the keywords on the following lines
707             override those set in the global section of the config file, un‐
708             til either another Match line or the end of the file.  If a key‐
709             word appears in multiple Match blocks that are satisfied, only
710             the first instance of the keyword is applied.
711
712             The arguments to Match are one or more criteria-pattern pairs or
713             the single token All which matches all criteria.  The available
714             criteria are User, Group, Host, LocalAddress, LocalPort, RDomain,
715             and Address (with RDomain representing the rdomain(4) on which
716             the connection was received).
717
718             The match patterns may consist of single entries or comma-sepa‐
719             rated lists and may use the wildcard and negation operators de‐
720             scribed in the PATTERNS section of ssh_config(5).
721
722             The patterns in an Address criteria may additionally contain ad‐
723             dresses to match in CIDR address/masklen format, such as
724             192.0.2.0/24 or 2001:db8::/32.  Note that the mask length pro‐
725             vided must be consistent with the address - it is an error to
726             specify a mask length that is too long for the address or one
727             with bits set in this host portion of the address.  For example,
728             192.0.2.0/33 and 192.0.2.0/8, respectively.
729
730             Only a subset of keywords may be used on the lines following a
731             Match keyword.  Available keywords are AcceptEnv,
732             AllowAgentForwarding, AllowGroups, AllowStreamLocalForwarding,
733             AllowTcpForwarding, AllowUsers, AuthenticationMethods,
734             AuthorizedKeysCommand, AuthorizedKeysCommandUser,
735             AuthorizedKeysFile, AuthorizedPrincipalsCommand,
736             AuthorizedPrincipalsCommandUser, AuthorizedPrincipalsFile,
737             Banner, ChrootDirectory, ClientAliveCountMax,
738             ClientAliveInterval, DenyGroups, DenyUsers, DisableForwarding,
739             ForceCommand, GatewayPorts, GSSAPIAuthentication,
740             HostbasedAcceptedAlgorithms, HostbasedAuthentication,
741             HostbasedUsesNameFromPacketOnly, IgnoreRhosts, Include, IPQoS,
742             KbdInteractiveAuthentication, KerberosAuthentication,
743             KerberosUseKuserok, LogLevel, MaxAuthTries, MaxSessions,
744             PasswordAuthentication, PermitEmptyPasswords, PermitListen,
745             PermitOpen, PermitRootLogin, PermitTTY, PermitTunnel,
746             PermitUserRC, PubkeyAcceptedAlgorithms, PubkeyAuthentication,
747             RekeyLimit, RevokedKeys, RDomain, SetEnv, StreamLocalBindMask,
748             StreamLocalBindUnlink, TrustedUserCAKeys, X11DisplayOffset,
749             X11MaxDisplays, X11Forwarding and X11UseLocalhost.
750
751     MaxAuthTries
752             Specifies the maximum number of authentication attempts permitted
753             per connection.  Once the number of failures reaches half this
754             value, additional failures are logged.  The default is 6.
755
756     MaxSessions
757             Specifies the maximum number of open shell, login or subsystem
758             (e.g. sftp) sessions permitted per network connection.  Multiple
759             sessions may be established by clients that support connection
760             multiplexing.  Setting MaxSessions to 1 will effectively disable
761             session multiplexing, whereas setting it to 0 will prevent all
762             shell, login and subsystem sessions while still permitting for‐
763             warding.  The default is 10.
764
765     MaxStartups
766             Specifies the maximum number of concurrent unauthenticated con‐
767             nections to the SSH daemon.  Additional connections will be
768             dropped until authentication succeeds or the LoginGraceTime ex‐
769             pires for a connection.  The default is 10:30:100.
770
771             Alternatively, random early drop can be enabled by specifying the
772             three colon separated values start:rate:full (e.g. "10:30:60").
773             sshd(8) will refuse connection attempts with a probability of
774             rate/100 (30%) if there are currently start (10) unauthenticated
775             connections.  The probability increases linearly and all connec‐
776             tion attempts are refused if the number of unauthenticated con‐
777             nections reaches full (60).
778
779     ModuliFile
780             Specifies the moduli(5) file that contains the Diffie-Hellman
781             groups used for the “diffie-hellman-group-exchange-sha1” and
782             “diffie-hellman-group-exchange-sha256” key exchange methods.  The
783             default is /etc/ssh/moduli.
784
785     PasswordAuthentication
786             Specifies whether password authentication is allowed.  The de‐
787             fault is yes.
788
789     PermitEmptyPasswords
790             When password authentication is allowed, it specifies whether the
791             server allows login to accounts with empty password strings.  The
792             default is no.
793
794     PermitListen
795             Specifies the addresses/ports on which a remote TCP port forward‐
796             ing may listen.  The listen specification must be one of the fol‐
797             lowing forms:
798
799                   PermitListen port
800                   PermitListen host:port
801
802             Multiple permissions may be specified by separating them with
803             whitespace.  An argument of any can be used to remove all re‐
804             strictions and permit any listen requests.  An argument of none
805             can be used to prohibit all listen requests.  The host name may
806             contain wildcards as described in the PATTERNS section in
807             ssh_config(5).  The wildcard ‘*’ can also be used in place of a
808             port number to allow all ports.  By default all port forwarding
809             listen requests are permitted.  Note that the GatewayPorts option
810             may further restrict which addresses may be listened on.  Note
811             also that ssh(1) will request a listen host of “localhost” if no
812             listen host was specifically requested, and this name is treated
813             differently to explicit localhost addresses of “127.0.0.1” and
814             “::1”.
815
816     PermitOpen
817             Specifies the destinations to which TCP port forwarding is per‐
818             mitted.  The forwarding specification must be one of the follow‐
819             ing forms:
820
821                   PermitOpen host:port
822                   PermitOpen IPv4_addr:port
823                   PermitOpen [IPv6_addr]:port
824
825             Multiple forwards may be specified by separating them with white‐
826             space.  An argument of any can be used to remove all restrictions
827             and permit any forwarding requests.  An argument of none can be
828             used to prohibit all forwarding requests.  The wildcard ‘*’ can
829             be used for host or port to allow all hosts or ports respec‐
830             tively.  Otherwise, no pattern matching or address lookups are
831             performed on supplied names.  By default all port forwarding re‐
832             quests are permitted.
833
834     PermitRootLogin
835             Specifies whether root can log in using ssh(1).  The argument
836             must be yes, prohibit-password, forced-commands-only, or no.  The
837             default is prohibit-password.
838
839             If this option is set to prohibit-password (or its deprecated
840             alias, without-password), password and keyboard-interactive au‐
841             thentication are disabled for root.
842
843             If this option is set to forced-commands-only, root login with
844             public key authentication will be allowed, but only if the
845             command option has been specified (which may be useful for taking
846             remote backups even if root login is normally not allowed).  All
847             other authentication methods are disabled for root.
848
849             If this option is set to no, root is not allowed to log in.
850
851     PermitTTY
852             Specifies whether pty(4) allocation is permitted.  The default is
853             yes.
854
855     PermitTunnel
856             Specifies whether tun(4) device forwarding is allowed.  The argu‐
857             ment must be yes, point-to-point (layer 3), ethernet (layer 2),
858             or no.  Specifying yes permits both point-to-point and ethernet.
859             The default is no.
860
861             Independent of this setting, the permissions of the selected
862             tun(4) device must allow access to the user.
863
864     PermitUserEnvironment
865             Specifies whether ~/.ssh/environment and environment= options in
866             ~/.ssh/authorized_keys are processed by sshd(8).  Valid options
867             are yes, no or a pattern-list specifying which environment vari‐
868             able names to accept (for example "LANG,LC_*").  The default is
869             no.  Enabling environment processing may enable users to bypass
870             access restrictions in some configurations using mechanisms such
871             as LD_PRELOAD.
872
873     PermitUserRC
874             Specifies whether any ~/.ssh/rc file is executed.  The default is
875             yes.
876
877     PerSourceMaxStartups
878             Specifies the number of unauthenticated connections allowed from
879             a given source address, or “none” if there is no limit.  This
880             limit is applied in addition to MaxStartups, whichever is lower.
881             The default is none.
882
883     PerSourceNetBlockSize
884             Specifies the number of bits of source address that are grouped
885             together for the purposes of applying PerSourceMaxStartups lim‐
886             its.  Values for IPv4 and optionally IPv6 may be specified, sepa‐
887             rated by a colon.  The default is 32:128, which means each ad‐
888             dress is considered individually.
889
890     PidFile
891             Specifies the file that contains the process ID of the SSH dae‐
892             mon, or none to not write one.  The default is /var/run/sshd.pid.
893
894     Port    Specifies the port number that sshd(8) listens on.  The default
895             is 22.  Multiple options of this type are permitted.  See also
896             ListenAddress.
897
898     PrintLastLog
899             Specifies whether sshd(8) should print the date and time of the
900             last user login when a user logs in interactively.  The default
901             is yes.
902
903     PrintMotd
904             Specifies whether sshd(8) should print /etc/motd when a user logs
905             in interactively.  (On some systems it is also printed by the
906             shell, /etc/profile, or equivalent.)  The default is yes.
907
908     PubkeyAcceptedAlgorithms
909             The default is handled system-wide by crypto-policies(7).  Infor‐
910             mation about defaults, how to modify the defaults and how to cus‐
911             tomize existing policies with sub-policies are present in manual
912             page update-crypto-policies(8).
913
914             Specifies the signature algorithms that will be accepted for pub‐
915             lic key authentication as a list of comma-separated patterns.
916             Alternately if the specified list begins with a ‘+’ character,
917             then the specified algorithms will be appended to the built-in
918             openssh default set instead of replacing them.  If the specified
919             list begins with a ‘-’ character, then the specified algorithms
920             (including wildcards) will be removed from the built-in openssh
921             default set instead of replacing them.  If the specified list be‐
922             gins with a ‘^’ character, then the specified algorithms will be
923             placed at the head of the built-in openssh default set.
924
925             The list of available signature algorithms may also be obtained
926             using "ssh -Q PubkeyAcceptedAlgorithms".
927
928     PubkeyAuthOptions
929             Sets one or more public key authentication options.  The sup‐
930             ported keywords are: none (the default; indicating no additional
931             options are enabled), touch-required and verify-required.
932
933             The touch-required option causes public key authentication using
934             a FIDO authenticator algorithm (i.e. ecdsa-sk or ed25519-sk) to
935             always require the signature to attest that a physically present
936             user explicitly confirmed the authentication (usually by touching
937             the authenticator).  By default, sshd(8) requires user presence
938             unless overridden with an authorized_keys option.  The
939             touch-required flag disables this override.
940
941             The verify-required option requires a FIDO key signature attest
942             that the user was verified, e.g. via a PIN.
943
944             Neither the touch-required or verify-required options have any
945             effect for other, non-FIDO, public key types.
946
947     PubkeyAuthentication
948             Specifies whether public key authentication is allowed.  The de‐
949             fault is yes.
950
951     RekeyLimit
952             Specifies the maximum amount of data that may be transmitted be‐
953             fore the session key is renegotiated, optionally followed by a
954             maximum amount of time that may pass before the session key is
955             renegotiated.  The first argument is specified in bytes and may
956             have a suffix of ‘K’, ‘M’, or ‘G’ to indicate Kilobytes,
957             Megabytes, or Gigabytes, respectively.  The default is between
958             ‘1G’ and ‘4G’, depending on the cipher.  The optional second
959             value is specified in seconds and may use any of the units docu‐
960             mented in the TIME FORMATS section.  The default value for
961             RekeyLimit is default none, which means that rekeying is per‐
962             formed after the cipher's default amount of data has been sent or
963             received and no time based rekeying is done.
964
965     RequiredRSASize
966             Specifies the minimum RSA key size (in bits) that sshd(8) will
967             accept.  User and host-based authentication keys smaller than
968             this limit will be refused.  The default is 1024 bits.  Note that
969             this limit may only be raised from the default.
970
971     RevokedKeys
972             Specifies revoked public keys file, or none to not use one.  Keys
973             listed in this file will be refused for public key authentica‐
974             tion.  Note that if this file is not readable, then public key
975             authentication will be refused for all users.  Keys may be speci‐
976             fied as a text file, listing one public key per line, or as an
977             OpenSSH Key Revocation List (KRL) as generated by ssh-keygen(1).
978             For more information on KRLs, see the KEY REVOCATION LISTS sec‐
979             tion in ssh-keygen(1).
980
981     RDomain
982             Specifies an explicit routing domain that is applied after au‐
983             thentication has completed.  The user session, as well as any
984             forwarded or listening IP sockets, will be bound to this
985             rdomain(4).  If the routing domain is set to %D, then the domain
986             in which the incoming connection was received will be applied.
987
988     SecurityKeyProvider
989             Specifies a path to a library that will be used when loading FIDO
990             authenticator-hosted keys, overriding the default of using the
991             built-in USB HID support.
992
993     SetEnv  Specifies one or more environment variables to set in child ses‐
994             sions started by sshd(8) as “NAME=VALUE”.  The environment value
995             may be quoted (e.g. if it contains whitespace characters).  Envi‐
996             ronment variables set by SetEnv override the default environment
997             and any variables specified by the user via AcceptEnv or
998             PermitUserEnvironment.
999
1000     StreamLocalBindMask
1001             Sets the octal file creation mode mask (umask) used when creating
1002             a Unix-domain socket file for local or remote port forwarding.
1003             This option is only used for port forwarding to a Unix-domain
1004             socket file.
1005
1006             The default value is 0177, which creates a Unix-domain socket
1007             file that is readable and writable only by the owner.  Note that
1008             not all operating systems honor the file mode on Unix-domain
1009             socket files.
1010
1011     StreamLocalBindUnlink
1012             Specifies whether to remove an existing Unix-domain socket file
1013             for local or remote port forwarding before creating a new one.
1014             If the socket file already exists and StreamLocalBindUnlink is
1015             not enabled, sshd will be unable to forward the port to the Unix-
1016             domain socket file.  This option is only used for port forwarding
1017             to a Unix-domain socket file.
1018
1019             The argument must be yes or no.  The default is no.
1020
1021     StrictModes
1022             Specifies whether sshd(8) should check file modes and ownership
1023             of the user's files and home directory before accepting login.
1024             This is normally desirable because novices sometimes accidentally
1025             leave their directory or files world-writable.  The default is
1026             yes.  Note that this does not apply to ChrootDirectory, whose
1027             permissions and ownership are checked unconditionally.
1028
1029     Subsystem
1030             Configures an external subsystem (e.g. file transfer daemon).
1031             Arguments should be a subsystem name and a command (with optional
1032             arguments) to execute upon subsystem request.
1033
1034             The command sftp-server implements the SFTP file transfer subsys‐
1035             tem.
1036
1037             Alternately the name internal-sftp implements an in-process SFTP
1038             server.  This may simplify configurations using ChrootDirectory
1039             to force a different filesystem root on clients.
1040
1041             By default no subsystems are defined.
1042
1043     SyslogFacility
1044             Gives the facility code that is used when logging messages from
1045             sshd(8).  The possible values are: DAEMON, USER, AUTH, AUTHPRIV,
1046             LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7.
1047             The default is AUTH.
1048
1049     TCPKeepAlive
1050             Specifies whether the system should send TCP keepalive messages
1051             to the other side.  If they are sent, death of the connection or
1052             crash of one of the machines will be properly noticed.  However,
1053             this means that connections will die if the route is down tempo‐
1054             rarily, and some people find it annoying.  On the other hand, if
1055             TCP keepalives are not sent, sessions may hang indefinitely on
1056             the server, leaving "ghost" users and consuming server resources.
1057
1058             The default is yes (to send TCP keepalive messages), and the
1059             server will notice if the network goes down or the client host
1060             crashes.  This avoids infinitely hanging sessions.
1061
1062             To disable TCP keepalive messages, the value should be set to no.
1063
1064     TrustedUserCAKeys
1065             Specifies a file containing public keys of certificate authori‐
1066             ties that are trusted to sign user certificates for authentica‐
1067             tion, or none to not use one.  Keys are listed one per line;
1068             empty lines and comments starting with ‘#’ are allowed.  If a
1069             certificate is presented for authentication and has its signing
1070             CA key listed in this file, then it may be used for authentica‐
1071             tion for any user listed in the certificate's principals list.
1072             Note that certificates that lack a list of principals will not be
1073             permitted for authentication using TrustedUserCAKeys.  For more
1074             details on certificates, see the CERTIFICATES section in
1075             ssh-keygen(1).
1076
1077     UseDNS  Specifies whether sshd(8) should look up the remote host name,
1078             and to check that the resolved host name for the remote IP ad‐
1079             dress maps back to the very same IP address.
1080
1081             If this option is set to no (the default) then only addresses and
1082             not host names may be used in ~/.ssh/authorized_keys from and
1083             sshd_config Match Host directives.
1084
1085     UsePAM  Enables the Pluggable Authentication Module interface.  If set to
1086             yes this will enable PAM authentication using
1087             KbdInteractiveAuthentication and PasswordAuthentication in addi‐
1088             tion to PAM account and session module processing for all authen‐
1089             tication types.
1090
1091             Because PAM keyboard-interactive authentication usually serves an
1092             equivalent role to password authentication, you should disable
1093             either PasswordAuthentication or KbdInteractiveAuthentication.
1094
1095             If UsePAM is enabled, you will not be able to run sshd(8) as a
1096             non-root user.  The default is no.
1097
1098     VersionAddendum
1099             Optionally specifies additional text to append to the SSH proto‐
1100             col banner sent by the server upon connection.  The default is
1101             none.
1102
1103     X11DisplayOffset
1104             Specifies the first display number available for sshd(8)'s X11
1105             forwarding.  This prevents sshd from interfering with real X11
1106             servers.  The default is 10.
1107
1108     X11MaxDisplays
1109             Specifies the maximum number of displays available for sshd(8)'s
1110             X11 forwarding.  This prevents sshd from exhausting local ports.
1111             The default is 1000.
1112
1113     X11Forwarding
1114             Specifies whether X11 forwarding is permitted.  The argument must
1115             be yes or no.  The default is no.
1116
1117             When X11 forwarding is enabled, there may be additional exposure
1118             to the server and to client displays if the sshd(8) proxy display
1119             is configured to listen on the wildcard address (see
1120             X11UseLocalhost), though this is not the default.  Additionally,
1121             the authentication spoofing and authentication data verification
1122             and substitution occur on the client side.  The security risk of
1123             using X11 forwarding is that the client's X11 display server may
1124             be exposed to attack when the SSH client requests forwarding (see
1125             the warnings for ForwardX11 in ssh_config(5)).  A system adminis‐
1126             trator may have a stance in which they want to protect clients
1127             that may expose themselves to attack by unwittingly requesting
1128             X11 forwarding, which can warrant a no setting.
1129
1130             Note that disabling X11 forwarding does not prevent users from
1131             forwarding X11 traffic, as users can always install their own
1132             forwarders.
1133
1134     X11UseLocalhost
1135             Specifies whether sshd(8) should bind the X11 forwarding server
1136             to the loopback address or to the wildcard address.  By default,
1137             sshd binds the forwarding server to the loopback address and sets
1138             the hostname part of the DISPLAY environment variable to
1139             localhost.  This prevents remote hosts from connecting to the
1140             proxy display.  However, some older X11 clients may not function
1141             with this configuration.  X11UseLocalhost may be set to no to
1142             specify that the forwarding server should be bound to the wild‐
1143             card address.  The argument must be yes or no.  The default is
1144             yes.
1145
1146     XAuthLocation
1147             Specifies the full pathname of the xauth(1) program, or none to
1148             not use one.  The default is /usr/bin/xauth.
1149

TIME FORMATS

1151     sshd(8) command-line arguments and configuration file options that spec‐
1152     ify time may be expressed using a sequence of the form: time[qualifier],
1153     where time is a positive integer value and qualifier is one of the fol‐
1154     lowing:
1155
1156none⟩  seconds
1157           s | S   seconds
1158           m | M   minutes
1159           h | H   hours
1160           d | D   days
1161           w | W   weeks
1162
1163     Each member of the sequence is added together to calculate the total time
1164     value.
1165
1166     Time format examples:
1167
1168           600     600 seconds (10 minutes)
1169           10m     10 minutes
1170           1h30m   1 hour 30 minutes (90 minutes)
1171

TOKENS

1173     Arguments to some keywords can make use of tokens, which are expanded at
1174     runtime:
1175
1176           %%    A literal ‘%’.
1177           %D    The routing domain in which the incoming connection was re‐
1178                 ceived.
1179           %F    The fingerprint of the CA key.
1180           %f    The fingerprint of the key or certificate.
1181           %h    The home directory of the user.
1182           %i    The key ID in the certificate.
1183           %K    The base64-encoded CA key.
1184           %k    The base64-encoded key or certificate for authentication.
1185           %s    The serial number of the certificate.
1186           %T    The type of the CA key.
1187           %t    The key or certificate type.
1188           %U    The numeric user ID of the target user.
1189           %u    The username.
1190
1191     AuthorizedKeysCommand accepts the tokens %%, %f, %h, %k, %t, %U, and %u.
1192
1193     AuthorizedKeysFile accepts the tokens %%, %h, %U, and %u.
1194
1195     AuthorizedPrincipalsCommand accepts the tokens %%, %F, %f, %h, %i, %K,
1196     %k, %s, %T, %t, %U, and %u.
1197
1198     AuthorizedPrincipalsFile accepts the tokens %%, %h, %U, and %u.
1199
1200     ChrootDirectory accepts the tokens %%, %h, %U, and %u.
1201
1202     RoutingDomain accepts the token %D.
1203

FILES

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

SEE ALSO

1211     sftp-server(8), sshd(8)
1212

AUTHORS

1214     OpenSSH is a derivative of the original and free ssh 1.2.12 release by
1215     Tatu Ylonen.  Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
1216     de Raadt and Dug Song removed many bugs, re-added newer features and cre‐
1217     ated OpenSSH.  Markus Friedl contributed the support for SSH protocol
1218     versions 1.5 and 2.0.  Niels Provos and Markus Friedl contributed support
1219     for privilege separation.
1220
1221BSD                            September 3, 2021                           BSD
Impressum