1SSHD_CONFIG(5) BSD File Formats Manual SSHD_CONFIG(5)
2
4 sshd_config — OpenSSH daemon configuration file
5
7 sshd(8) reads configuration data from /etc/gsissh/sshd_config (or the
8 file specified with -f on the command line). The file contains keyword-
9 argument 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 GSIAllowLimitedProxy
379 Specifies whether to accept limited proxy credentials for authen‐
380 tication. The default is no.
381
382 GSSAPIAuthentication
383 Specifies whether user authentication based on GSSAPI is allowed.
384 The default is yes.
385
386 GSSAPICleanupCredentials
387 Specifies whether to automatically destroy the user's credentials
388 cache on logout. The default is yes.
389
390 GSSAPICredentialsPath
391 If specified, the delegated GSSAPI credential is stored in the
392 given path, overwriting any existing credentials. Paths can be
393 specified with syntax similar to the AuthorizedKeysFile option
394 (i.e., accepting %h and %u tokens). When using this option, set‐
395 ting 'GssapiCleanupCredentials no' is recommended, so logging out
396 of one session doesn't remove the credentials in use by another
397 session of the same user. Currently only implemented for the GSI
398 mechanism.
399
400 GSSAPIDelegateCredentials
401 Specifies whether delegated credentials are stored in the user's
402 environment. The default is yes.
403
404 GSSAPIEnablek5users
405 Specifies whether to look at .k5users file for GSSAPI authentica‐
406 tion access control. Further details are described in ksu(1).
407 The default is no.
408
409 GSSAPIKeyExchange
410 Specifies whether key exchange based on GSSAPI is allowed. GSSAPI
411 key exchange doesn't rely on ssh keys to verify host identity.
412 The default is yes.
413
414 GSSAPIStrictAcceptorCheck
415 Determines whether to be strict about the identity of the GSSAPI
416 acceptor a client authenticates against. If set to yes then the
417 client must authenticate against the host service on the current
418 hostname. If set to no then the client may authenticate against
419 any service key stored in the machine's default store. This fa‐
420 cility is provided to assist with operation on multi homed ma‐
421 chines. The default is yes.
422
423 GSSAPIStoreCredentialsOnRekey
424 Controls whether the user's GSSAPI credentials should be updated
425 following a successful connection rekeying. This option can be
426 used to accepted renewed or updated credentials from a compatible
427 client. The default is “no”.
428
429 For this to work GSSAPIKeyExchange needs to be enabled in the
430 server and also used by the client.
431
432 GSSAPIKexAlgorithms
433 The default is handled system-wide by crypto-policies(7). Infor‐
434 mation about defaults, how to modify the defaults and how to cus‐
435 tomize existing policies with sub-policies are present in manual
436 page update-crypto-policies(8).
437
438 The list of key exchange algorithms that are accepted by GSSAPI
439 key exchange. Possible values are
440
441 gss-gex-sha1-
442 gss-group1-sha1-
443 gss-group14-sha1-
444 gss-group14-sha256-
445 gss-group16-sha512-
446 gss-nistp256-sha256-
447 gss-curve25519-sha256-
448 This option only applies to connections using GSSAPI.
449
450 HostbasedAcceptedAlgorithms
451 Specifies the signature algorithms that will be accepted for
452 hostbased authentication as a list of comma-separated patterns.
453 Alternately if the specified list begins with a ‘+’ character,
454 then the specified signature algorithms will be appended to the
455 default set instead of replacing them. If the specified list be‐
456 gins with a ‘-’ character, then the specified signature algo‐
457 rithms (including wildcards) will be removed from the default set
458 instead of replacing them. If the specified list begins with a
459 ‘^’ character, then the specified signature algorithms will be
460 placed at the head of the default set. The default for this op‐
461 tion is:
462
463 ssh-ed25519-cert-v01@openssh.com,
464 ecdsa-sha2-nistp256-cert-v01@openssh.com,
465 ecdsa-sha2-nistp384-cert-v01@openssh.com,
466 ecdsa-sha2-nistp521-cert-v01@openssh.com,
467 sk-ssh-ed25519-cert-v01@openssh.com,
468 sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,
469 rsa-sha2-512-cert-v01@openssh.com,
470 rsa-sha2-256-cert-v01@openssh.com,
471 ssh-rsa-cert-v01@openssh.com,
472 ssh-ed25519,
473 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
474 sk-ssh-ed25519@openssh.com,
475 sk-ecdsa-sha2-nistp256@openssh.com,
476 rsa-sha2-512,rsa-sha2-256,ssh-rsa
477
478 The list of available signature algorithms may also be obtained
479 using "ssh -Q HostbasedAcceptedAlgorithms". This was formerly
480 named HostbasedAcceptedKeyTypes.
481
482 HostbasedAuthentication
483 Specifies whether rhosts or /etc/hosts.equiv authentication to‐
484 gether with successful public key client host authentication is
485 allowed (host-based authentication). The default is no.
486
487 HostbasedUsesNameFromPacketOnly
488 Specifies whether or not the server will attempt to perform a re‐
489 verse name lookup when matching the name in the ~/.shosts,
490 ~/.rhosts, and /etc/hosts.equiv files during
491 HostbasedAuthentication. A setting of yes means that sshd(8)
492 uses the name supplied by the client rather than attempting to
493 resolve the name from the TCP connection itself. The default is
494 no.
495
496 HostCertificate
497 Specifies a file containing a public host certificate. The cer‐
498 tificate's public key must match a private host key already spec‐
499 ified by HostKey. The default behaviour of sshd(8) is not to
500 load any certificates.
501
502 HostKey
503 Specifies a file containing a private host key used by SSH. The
504 defaults are /etc/gsissh/ssh_host_ecdsa_key,
505 /etc/gsissh/ssh_host_ed25519_key and
506 /etc/gsissh/ssh_host_rsa_key.
507
508 Note that sshd(8) will refuse to use a file if it is group/world-
509 accessible and that the HostKeyAlgorithms option restricts which
510 of the keys are actually used by sshd(8).
511
512 It is possible to have multiple host key files. It is also pos‐
513 sible to specify public host key files instead. In this case op‐
514 erations on the private key will be delegated to an ssh-agent(1).
515
516 HostKeyAgent
517 Identifies the UNIX-domain socket used to communicate with an
518 agent that has access to the private host keys. If the string
519 "SSH_AUTH_SOCK" is specified, the location of the socket will be
520 read from the SSH_AUTH_SOCK environment variable.
521
522 HostKeyAlgorithms
523 The default is handled system-wide by crypto-policies(7). Infor‐
524 mation about defaults, how to modify the defaults and how to cus‐
525 tomize existing policies with sub-policies are present in manual
526 page update-crypto-policies(8).
527
528 Specifies the host key signature algorithms that the server of‐
529 fers. The list of available signature algorithms may also be ob‐
530 tained using "ssh -Q HostKeyAlgorithms".
531
532 IgnoreRhosts
533 Specifies whether to ignore per-user .rhosts and .shosts files
534 during HostbasedAuthentication. The system-wide /etc/hosts.equiv
535 and /etc/gsissh/shosts.equiv are still used regardless of this
536 setting.
537
538 Accepted values are yes (the default) to ignore all per-user
539 files, shosts-only to allow the use of .shosts but to ignore
540 .rhosts or no to allow both .shosts and rhosts.
541
542 IgnoreUserKnownHosts
543 Specifies whether sshd(8) should ignore the user's
544 ~/.ssh/known_hosts during HostbasedAuthentication and use only
545 the system-wide known hosts file /etc/ssh/known_hosts. The de‐
546 fault is “no”.
547
548 Include
549 Include the specified configuration file(s). Multiple pathnames
550 may be specified and each pathname may contain glob(7) wildcards
551 that will be expanded and processed in lexical order. Files
552 without absolute paths are assumed to be in /etc/ssh. An Include
553 directive may appear inside a Match block to perform conditional
554 inclusion.
555
556 IPQoS Specifies the IPv4 type-of-service or DSCP class for the connec‐
557 tion. Accepted values are af11, af12, af13, af21, af22, af23,
558 af31, af32, af33, af41, af42, af43, cs0, cs1, cs2, cs3, cs4, cs5,
559 cs6, cs7, ef, le, lowdelay, throughput, reliability, a numeric
560 value, or none to use the operating system default. This option
561 may take one or two arguments, separated by whitespace. If one
562 argument is specified, it is used as the packet class uncondi‐
563 tionally. If two values are specified, the first is automati‐
564 cally selected for interactive sessions and the second for non-
565 interactive sessions. The default is af21 (Low-Latency Data) for
566 interactive sessions and cs1 (Lower Effort) for non-interactive
567 sessions.
568
569 KbdInteractiveAuthentication
570 Specifies whether to allow keyboard-interactive authentication.
571 All authentication styles from login.conf(5) are supported. The
572 default is yes. The argument to this keyword must be yes or no.
573 ChallengeResponseAuthentication is a deprecated alias for this.
574
575 KerberosAuthentication
576 Specifies whether the password provided by the user for
577 PasswordAuthentication will be validated through the Kerberos
578 KDC. To use this option, the server needs a Kerberos servtab
579 which allows the verification of the KDC's identity. The default
580 is no.
581
582 KerberosGetAFSToken
583 If AFS is active and the user has a Kerberos 5 TGT, attempt to
584 acquire an AFS token before accessing the user's home directory.
585 The default is no.
586
587 KerberosOrLocalPasswd
588 If password authentication through Kerberos fails then the pass‐
589 word will be validated via any additional local mechanism such as
590 /etc/passwd. The default is yes.
591
592 KerberosTicketCleanup
593 Specifies whether to automatically destroy the user's ticket
594 cache file on logout. The default is yes.
595
596 KerberosUniqueCCache
597 Specifies whether to store the acquired tickets in the per-ses‐
598 sion credential cache under /tmp/ or whether to use per-user cre‐
599 dential cache as configured in /etc/krb5.conf. The default value
600 no can lead to overwriting previous tickets by subseqent connec‐
601 tions to the same user account.
602
603 KerberosUseKuserok
604 Specifies whether to look at .k5login file for user's aliases.
605 The default is yes.
606
607 KexAlgorithms
608 The default is handled system-wide by crypto-policies(7). Infor‐
609 mation about defaults, how to modify the defaults and how to cus‐
610 tomize existing policies with sub-policies are present in manual
611 page update-crypto-policies(8).
612
613 Specifies the available KEX (Key Exchange) algorithms. Multiple
614 algorithms must be comma-separated. Alternately if the specified
615 list begins with a ‘+’ character, then the specified methods will
616 be appended to the built-in openssh default set instead of re‐
617 placing them. If the specified list begins with a ‘-’ character,
618 then the specified algorithms (including wildcards) will be re‐
619 moved from the built-in openssh default set instead of replacing
620 them. If the specified list begins with a ‘^’ character, then
621 the specified algorithms will be placed at the head of the built-
622 in openssh default set. The supported algorithms are:
623
624 curve25519-sha256
625 curve25519-sha256@libssh.org
626 diffie-hellman-group1-sha1
627 diffie-hellman-group14-sha1
628 diffie-hellman-group14-sha256
629 diffie-hellman-group16-sha512
630 diffie-hellman-group18-sha512
631 diffie-hellman-group-exchange-sha1
632 diffie-hellman-group-exchange-sha256
633 ecdh-sha2-nistp256
634 ecdh-sha2-nistp384
635 ecdh-sha2-nistp521
636 sntrup761x25519-sha512@openssh.com
637
638 The list of available key exchange algorithms may also be ob‐
639 tained using "ssh -Q KexAlgorithms".
640
641 ListenAddress
642 Specifies the local addresses sshd(8) should listen on. The fol‐
643 lowing forms may be used:
644
645 ListenAddress hostname|address [rdomain domain]
646 ListenAddress hostname:port [rdomain domain]
647 ListenAddress IPv4_address:port [rdomain domain]
648 ListenAddress [hostname|address]:port [rdomain domain]
649
650 The optional rdomain qualifier requests sshd(8) listen in an ex‐
651 plicit routing domain. If port is not specified, sshd will lis‐
652 ten on the address and all Port options specified. The default
653 is to listen on all local addresses on the current default rout‐
654 ing domain. Multiple ListenAddress options are permitted. For
655 more information on routing domains, see rdomain(4).
656
657 LoginGraceTime
658 The server disconnects after this time if the user has not suc‐
659 cessfully logged in. If the value is 0, there is no time limit.
660 The default is 120 seconds.
661
662 LogLevel
663 Gives the verbosity level that is used when logging messages from
664 sshd(8). The possible values are: QUIET, FATAL, ERROR, INFO,
665 VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. The default is INFO.
666 DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify
667 higher levels of debugging output. Logging with a DEBUG level
668 violates the privacy of users and is not recommended.
669
670 LogVerbose
671 Specify one or more overrides to LogLevel. An override consists
672 of a pattern lists that matches the source file, function and
673 line number to force detailed logging for. For example, an over‐
674 ride pattern of:
675
676 kex.c:*:1000,*:kex_exchange_identification():*,packet.c:*
677
678 would enable detailed logging for line 1000 of kex.c, everything
679 in the kex_exchange_identification() function, and all code in
680 the packet.c file. This option is intended for debugging and no
681 overrides are enabled by default.
682
683 MACs The default is handled system-wide by crypto-policies(7). Infor‐
684 mation about defaults, how to modify the defaults and how to cus‐
685 tomize existing policies with sub-policies are present in manual
686 page update-crypto-policies(8).
687
688 Specifies the available MAC (message authentication code) algo‐
689 rithms. The MAC algorithm is used for data integrity protection.
690 Multiple algorithms must be comma-separated. If the specified
691 list begins with a ‘+’ character, then the specified algorithms
692 will be appended to the built-in openssh default set instead of
693 replacing them. If the specified list begins with a ‘-’ charac‐
694 ter, then the specified algorithms (including wildcards) will be
695 removed from the built-in openssh default set instead of replac‐
696 ing them. If the specified list begins with a ‘^’ character,
697 then the specified algorithms will be placed at the head of the
698 built-in openssh default set.
699
700 The algorithms that contain "-etm" calculate the MAC after en‐
701 cryption (encrypt-then-mac). These are considered safer and
702 their use recommended. The supported MACs are:
703
704 hmac-md5
705 hmac-md5-96
706 hmac-sha1
707 hmac-sha1-96
708 hmac-sha2-256
709 hmac-sha2-512
710 umac-64@openssh.com
711 umac-128@openssh.com
712 hmac-md5-etm@openssh.com
713 hmac-md5-96-etm@openssh.com
714 hmac-sha1-etm@openssh.com
715 hmac-sha1-96-etm@openssh.com
716 hmac-sha2-256-etm@openssh.com
717 hmac-sha2-512-etm@openssh.com
718 umac-64-etm@openssh.com
719 umac-128-etm@openssh.com
720
721 The list of available MAC algorithms may also be obtained using
722 "ssh -Q mac".
723
724 Match Introduces a conditional block. If all of the criteria on the
725 Match line are satisfied, the keywords on the following lines
726 override those set in the global section of the config file, un‐
727 til either another Match line or the end of the file. If a key‐
728 word appears in multiple Match blocks that are satisfied, only
729 the first instance of the keyword is applied.
730
731 The arguments to Match are one or more criteria-pattern pairs or
732 the single token All which matches all criteria. The available
733 criteria are User, Group, Host, LocalAddress, LocalPort, RDomain,
734 and Address (with RDomain representing the rdomain(4) on which
735 the connection was received).
736
737 The match patterns may consist of single entries or comma-sepa‐
738 rated lists and may use the wildcard and negation operators de‐
739 scribed in the PATTERNS section of ssh_config(5).
740
741 The patterns in an Address criteria may additionally contain ad‐
742 dresses to match in CIDR address/masklen format, such as
743 192.0.2.0/24 or 2001:db8::/32. Note that the mask length pro‐
744 vided must be consistent with the address - it is an error to
745 specify a mask length that is too long for the address or one
746 with bits set in this host portion of the address. For example,
747 192.0.2.0/33 and 192.0.2.0/8, respectively.
748
749 Only a subset of keywords may be used on the lines following a
750 Match keyword. Available keywords are AcceptEnv,
751 AllowAgentForwarding, AllowGroups, AllowStreamLocalForwarding,
752 AllowTcpForwarding, AllowUsers, AuthenticationMethods,
753 AuthorizedKeysCommand, AuthorizedKeysCommandUser,
754 AuthorizedKeysFile, AuthorizedPrincipalsCommand,
755 AuthorizedPrincipalsCommandUser, AuthorizedPrincipalsFile,
756 Banner, ChrootDirectory, ClientAliveCountMax,
757 ClientAliveInterval, DenyGroups, DenyUsers, DisableForwarding,
758 ForceCommand, GatewayPorts, GSSAPIAuthentication,
759 HostbasedAcceptedAlgorithms, HostbasedAuthentication,
760 HostbasedUsesNameFromPacketOnly, IgnoreRhosts, Include, IPQoS,
761 KbdInteractiveAuthentication, KerberosAuthentication,
762 KerberosUseKuserok, LogLevel, MaxAuthTries, MaxSessions,
763 PasswordAuthentication, PermitEmptyPasswords, PermitListen,
764 PermitOpen, PermitRootLogin, PermitTTY, PermitTunnel,
765 PermitUserRC, PubkeyAcceptedAlgorithms, PubkeyAuthentication,
766 RekeyLimit, RevokedKeys, RDomain, SetEnv, StreamLocalBindMask,
767 StreamLocalBindUnlink, TrustedUserCAKeys, X11DisplayOffset,
768 X11MaxDisplays, X11Forwarding and X11UseLocalhost.
769
770 MaxAuthTries
771 Specifies the maximum number of authentication attempts permitted
772 per connection. Once the number of failures reaches half this
773 value, additional failures are logged. The default is 6.
774
775 MaxSessions
776 Specifies the maximum number of open shell, login or subsystem
777 (e.g. sftp) sessions permitted per network connection. Multiple
778 sessions may be established by clients that support connection
779 multiplexing. Setting MaxSessions to 1 will effectively disable
780 session multiplexing, whereas setting it to 0 will prevent all
781 shell, login and subsystem sessions while still permitting for‐
782 warding. The default is 10.
783
784 MaxStartups
785 Specifies the maximum number of concurrent unauthenticated con‐
786 nections to the SSH daemon. Additional connections will be
787 dropped until authentication succeeds or the LoginGraceTime ex‐
788 pires for a connection. The default is 10:30:100.
789
790 Alternatively, random early drop can be enabled by specifying the
791 three colon separated values start:rate:full (e.g. "10:30:60").
792 sshd(8) will refuse connection attempts with a probability of
793 rate/100 (30%) if there are currently start (10) unauthenticated
794 connections. The probability increases linearly and all connec‐
795 tion attempts are refused if the number of unauthenticated con‐
796 nections reaches full (60).
797
798 ModuliFile
799 Specifies the moduli(5) file that contains the Diffie-Hellman
800 groups used for the “diffie-hellman-group-exchange-sha1” and
801 “diffie-hellman-group-exchange-sha256” key exchange methods. The
802 default is /etc/gsissh/moduli.
803
804 PasswordAuthentication
805 Specifies whether password authentication is allowed. The de‐
806 fault is yes.
807
808 PermitEmptyPasswords
809 When password authentication is allowed, it specifies whether the
810 server allows login to accounts with empty password strings. The
811 default is no.
812
813 PermitListen
814 Specifies the addresses/ports on which a remote TCP port forward‐
815 ing may listen. The listen specification must be one of the fol‐
816 lowing forms:
817
818 PermitListen port
819 PermitListen host:port
820
821 Multiple permissions may be specified by separating them with
822 whitespace. An argument of any can be used to remove all re‐
823 strictions and permit any listen requests. An argument of none
824 can be used to prohibit all listen requests. The host name may
825 contain wildcards as described in the PATTERNS section in
826 ssh_config(5). The wildcard ‘*’ can also be used in place of a
827 port number to allow all ports. By default all port forwarding
828 listen requests are permitted. Note that the GatewayPorts option
829 may further restrict which addresses may be listened on. Note
830 also that ssh(1) will request a listen host of “localhost” if no
831 listen host was specifically requested, and this name is treated
832 differently to explicit localhost addresses of “127.0.0.1” and
833 “::1”.
834
835 PermitOpen
836 Specifies the destinations to which TCP port forwarding is per‐
837 mitted. The forwarding specification must be one of the follow‐
838 ing forms:
839
840 PermitOpen host:port
841 PermitOpen IPv4_addr:port
842 PermitOpen [IPv6_addr]:port
843
844 Multiple forwards may be specified by separating them with white‐
845 space. An argument of any can be used to remove all restrictions
846 and permit any forwarding requests. An argument of none can be
847 used to prohibit all forwarding requests. The wildcard ‘*’ can
848 be used for host or port to allow all hosts or ports respec‐
849 tively. Otherwise, no pattern matching or address lookups are
850 performed on supplied names. By default all port forwarding re‐
851 quests are permitted.
852
853 PermitRootLogin
854 Specifies whether root can log in using ssh(1). The argument
855 must be yes, prohibit-password, forced-commands-only, or no. The
856 default is prohibit-password.
857
858 If this option is set to prohibit-password (or its deprecated
859 alias, without-password), password and keyboard-interactive au‐
860 thentication are disabled for root.
861
862 If this option is set to forced-commands-only, root login with
863 public key authentication will be allowed, but only if the
864 command option has been specified (which may be useful for taking
865 remote backups even if root login is normally not allowed). All
866 other authentication methods are disabled for root.
867
868 If this option is set to no, root is not allowed to log in.
869
870 PermitTTY
871 Specifies whether pty(4) allocation is permitted. The default is
872 yes.
873
874 PermitTunnel
875 Specifies whether tun(4) device forwarding is allowed. The argu‐
876 ment must be yes, point-to-point (layer 3), ethernet (layer 2),
877 or no. Specifying yes permits both point-to-point and ethernet.
878 The default is no.
879
880 Independent of this setting, the permissions of the selected
881 tun(4) device must allow access to the user.
882
883 PermitUserEnvironment
884 Specifies whether ~/.ssh/environment and environment= options in
885 ~/.ssh/authorized_keys are processed by sshd(8). Valid options
886 are yes, no or a pattern-list specifying which environment vari‐
887 able names to accept (for example "LANG,LC_*"). The default is
888 no. Enabling environment processing may enable users to bypass
889 access restrictions in some configurations using mechanisms such
890 as LD_PRELOAD.
891
892 PermitUserRC
893 Specifies whether any ~/.ssh/rc file is executed. The default is
894 yes.
895
896 PerSourceMaxStartups
897 Specifies the number of unauthenticated connections allowed from
898 a given source address, or “none” if there is no limit. This
899 limit is applied in addition to MaxStartups, whichever is lower.
900 The default is none.
901
902 PerSourceNetBlockSize
903 Specifies the number of bits of source address that are grouped
904 together for the purposes of applying PerSourceMaxStartups lim‐
905 its. Values for IPv4 and optionally IPv6 may be specified, sepa‐
906 rated by a colon. The default is 32:128, which means each ad‐
907 dress is considered individually.
908
909 PidFile
910 Specifies the file that contains the process ID of the SSH dae‐
911 mon, or none to not write one. The default is
912 /var/run/gsisshd.pid.
913
914 Port Specifies the port number that sshd(8) listens on. The default
915 is 22. Multiple options of this type are permitted. See also
916 ListenAddress.
917
918 PrintLastLog
919 Specifies whether sshd(8) should print the date and time of the
920 last user login when a user logs in interactively. The default
921 is yes.
922
923 PrintMotd
924 Specifies whether sshd(8) should print /etc/motd when a user logs
925 in interactively. (On some systems it is also printed by the
926 shell, /etc/profile, or equivalent.) The default is yes.
927
928 PubkeyAcceptedAlgorithms
929 The default is handled system-wide by crypto-policies(7). Infor‐
930 mation about defaults, how to modify the defaults and how to cus‐
931 tomize existing policies with sub-policies are present in manual
932 page update-crypto-policies(8).
933
934 Specifies the signature algorithms that will be accepted for pub‐
935 lic key authentication as a list of comma-separated patterns.
936 Alternately if the specified list begins with a ‘+’ character,
937 then the specified algorithms will be appended to the built-in
938 openssh default set instead of replacing them. If the specified
939 list begins with a ‘-’ character, then the specified algorithms
940 (including wildcards) will be removed from the built-in openssh
941 default set instead of replacing them. If the specified list be‐
942 gins with a ‘^’ character, then the specified algorithms will be
943 placed at the head of the built-in openssh default set.
944
945 The list of available signature algorithms may also be obtained
946 using "ssh -Q PubkeyAcceptedAlgorithms".
947
948 PubkeyAuthOptions
949 Sets one or more public key authentication options. The sup‐
950 ported keywords are: none (the default; indicating no additional
951 options are enabled), touch-required and verify-required.
952
953 The touch-required option causes public key authentication using
954 a FIDO authenticator algorithm (i.e. ecdsa-sk or ed25519-sk) to
955 always require the signature to attest that a physically present
956 user explicitly confirmed the authentication (usually by touching
957 the authenticator). By default, sshd(8) requires user presence
958 unless overridden with an authorized_keys option. The
959 touch-required flag disables this override.
960
961 The verify-required option requires a FIDO key signature attest
962 that the user was verified, e.g. via a PIN.
963
964 Neither the touch-required or verify-required options have any
965 effect for other, non-FIDO, public key types.
966
967 PubkeyAuthentication
968 Specifies whether public key authentication is allowed. The de‐
969 fault is yes.
970
971 RekeyLimit
972 Specifies the maximum amount of data that may be transmitted be‐
973 fore the session key is renegotiated, optionally followed by a
974 maximum amount of time that may pass before the session key is
975 renegotiated. The first argument is specified in bytes and may
976 have a suffix of ‘K’, ‘M’, or ‘G’ to indicate Kilobytes,
977 Megabytes, or Gigabytes, respectively. The default is between
978 ‘1G’ and ‘4G’, depending on the cipher. The optional second
979 value is specified in seconds and may use any of the units docu‐
980 mented in the TIME FORMATS section. The default value for
981 RekeyLimit is default none, which means that rekeying is per‐
982 formed after the cipher's default amount of data has been sent or
983 received and no time based rekeying is done.
984
985 RequiredRSASize
986 Specifies the minimum RSA key size (in bits) that sshd(8) will
987 accept. User and host-based authentication keys smaller than
988 this limit will be refused. The default is 1024 bits. Note that
989 this limit may only be raised from the default.
990
991 RevokedKeys
992 Specifies revoked public keys file, or none to not use one. Keys
993 listed in this file will be refused for public key authentica‐
994 tion. Note that if this file is not readable, then public key
995 authentication will be refused for all users. Keys may be speci‐
996 fied as a text file, listing one public key per line, or as an
997 OpenSSH Key Revocation List (KRL) as generated by ssh-keygen(1).
998 For more information on KRLs, see the KEY REVOCATION LISTS sec‐
999 tion in ssh-keygen(1).
1000
1001 RDomain
1002 Specifies an explicit routing domain that is applied after au‐
1003 thentication has completed. The user session, as well as any
1004 forwarded or listening IP sockets, will be bound to this
1005 rdomain(4). If the routing domain is set to %D, then the domain
1006 in which the incoming connection was received will be applied.
1007
1008 SecurityKeyProvider
1009 Specifies a path to a library that will be used when loading FIDO
1010 authenticator-hosted keys, overriding the default of using the
1011 built-in USB HID support.
1012
1013 SetEnv Specifies one or more environment variables to set in child ses‐
1014 sions started by sshd(8) as “NAME=VALUE”. The environment value
1015 may be quoted (e.g. if it contains whitespace characters). Envi‐
1016 ronment variables set by SetEnv override the default environment
1017 and any variables specified by the user via AcceptEnv or
1018 PermitUserEnvironment.
1019
1020 StreamLocalBindMask
1021 Sets the octal file creation mode mask (umask) used when creating
1022 a Unix-domain socket file for local or remote port forwarding.
1023 This option is only used for port forwarding to a Unix-domain
1024 socket file.
1025
1026 The default value is 0177, which creates a Unix-domain socket
1027 file that is readable and writable only by the owner. Note that
1028 not all operating systems honor the file mode on Unix-domain
1029 socket files.
1030
1031 StreamLocalBindUnlink
1032 Specifies whether to remove an existing Unix-domain socket file
1033 for local or remote port forwarding before creating a new one.
1034 If the socket file already exists and StreamLocalBindUnlink is
1035 not enabled, sshd will be unable to forward the port to the Unix-
1036 domain socket file. This option is only used for port forwarding
1037 to a Unix-domain socket file.
1038
1039 The argument must be yes or no. The default is no.
1040
1041 StrictModes
1042 Specifies whether sshd(8) should check file modes and ownership
1043 of the user's files and home directory before accepting login.
1044 This is normally desirable because novices sometimes accidentally
1045 leave their directory or files world-writable. The default is
1046 yes. Note that this does not apply to ChrootDirectory, whose
1047 permissions and ownership are checked unconditionally.
1048
1049 Subsystem
1050 Configures an external subsystem (e.g. file transfer daemon).
1051 Arguments should be a subsystem name and a command (with optional
1052 arguments) to execute upon subsystem request.
1053
1054 The command sftp-server implements the SFTP file transfer subsys‐
1055 tem.
1056
1057 Alternately the name internal-sftp implements an in-process SFTP
1058 server. This may simplify configurations using ChrootDirectory
1059 to force a different filesystem root on clients.
1060
1061 By default no subsystems are defined.
1062
1063 SyslogFacility
1064 Gives the facility code that is used when logging messages from
1065 sshd(8). The possible values are: DAEMON, USER, AUTH, AUTHPRIV,
1066 LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7.
1067 The default is AUTH.
1068
1069 TCPKeepAlive
1070 Specifies whether the system should send TCP keepalive messages
1071 to the other side. If they are sent, death of the connection or
1072 crash of one of the machines will be properly noticed. However,
1073 this means that connections will die if the route is down tempo‐
1074 rarily, and some people find it annoying. On the other hand, if
1075 TCP keepalives are not sent, sessions may hang indefinitely on
1076 the server, leaving "ghost" users and consuming server resources.
1077
1078 The default is yes (to send TCP keepalive messages), and the
1079 server will notice if the network goes down or the client host
1080 crashes. This avoids infinitely hanging sessions.
1081
1082 To disable TCP keepalive messages, the value should be set to no.
1083
1084 TrustedUserCAKeys
1085 Specifies a file containing public keys of certificate authori‐
1086 ties that are trusted to sign user certificates for authentica‐
1087 tion, or none to not use one. Keys are listed one per line;
1088 empty lines and comments starting with ‘#’ are allowed. If a
1089 certificate is presented for authentication and has its signing
1090 CA key listed in this file, then it may be used for authentica‐
1091 tion for any user listed in the certificate's principals list.
1092 Note that certificates that lack a list of principals will not be
1093 permitted for authentication using TrustedUserCAKeys. For more
1094 details on certificates, see the CERTIFICATES section in
1095 ssh-keygen(1).
1096
1097 UseDNS Specifies whether sshd(8) should look up the remote host name,
1098 and to check that the resolved host name for the remote IP ad‐
1099 dress maps back to the very same IP address.
1100
1101 If this option is set to no (the default) then only addresses and
1102 not host names may be used in ~/.ssh/authorized_keys from and
1103 sshd_config Match Host directives.
1104
1105 UsePAM Enables the Pluggable Authentication Module interface. If set to
1106 yes this will enable PAM authentication using
1107 KbdInteractiveAuthentication and PasswordAuthentication in addi‐
1108 tion to PAM account and session module processing for all authen‐
1109 tication types.
1110
1111 Because PAM keyboard-interactive authentication usually serves an
1112 equivalent role to password authentication, you should disable
1113 either PasswordAuthentication or KbdInteractiveAuthentication.
1114
1115 If UsePAM is enabled, you will not be able to run sshd(8) as a
1116 non-root user. The default is no.
1117
1118 PermitPAMUserChange
1119 If set to yes this will enable PAM authentication to change the
1120 name of the user being authenticated. The default is no.
1121
1122 VersionAddendum
1123 Optionally specifies additional text to append to the SSH proto‐
1124 col banner sent by the server upon connection. The default is
1125 none.
1126
1127 X11DisplayOffset
1128 Specifies the first display number available for sshd(8)'s X11
1129 forwarding. This prevents sshd from interfering with real X11
1130 servers. The default is 10.
1131
1132 X11MaxDisplays
1133 Specifies the maximum number of displays available for sshd(8)'s
1134 X11 forwarding. This prevents sshd from exhausting local ports.
1135 The default is 1000.
1136
1137 X11Forwarding
1138 Specifies whether X11 forwarding is permitted. The argument must
1139 be yes or no. The default is no.
1140
1141 When X11 forwarding is enabled, there may be additional exposure
1142 to the server and to client displays if the sshd(8) proxy display
1143 is configured to listen on the wildcard address (see
1144 X11UseLocalhost), though this is not the default. Additionally,
1145 the authentication spoofing and authentication data verification
1146 and substitution occur on the client side. The security risk of
1147 using X11 forwarding is that the client's X11 display server may
1148 be exposed to attack when the SSH client requests forwarding (see
1149 the warnings for ForwardX11 in ssh_config(5)). A system adminis‐
1150 trator may have a stance in which they want to protect clients
1151 that may expose themselves to attack by unwittingly requesting
1152 X11 forwarding, which can warrant a no setting.
1153
1154 Note that disabling X11 forwarding does not prevent users from
1155 forwarding X11 traffic, as users can always install their own
1156 forwarders.
1157
1158 X11UseLocalhost
1159 Specifies whether sshd(8) should bind the X11 forwarding server
1160 to the loopback address or to the wildcard address. By default,
1161 sshd binds the forwarding server to the loopback address and sets
1162 the hostname part of the DISPLAY environment variable to
1163 localhost. This prevents remote hosts from connecting to the
1164 proxy display. However, some older X11 clients may not function
1165 with this configuration. X11UseLocalhost may be set to no to
1166 specify that the forwarding server should be bound to the wild‐
1167 card address. The argument must be yes or no. The default is
1168 yes.
1169
1170 XAuthLocation
1171 Specifies the full pathname of the xauth(1) program, or none to
1172 not use one. The default is /usr/bin/xauth.
1173
1175 sshd(8) command-line arguments and configuration file options that spec‐
1176 ify time may be expressed using a sequence of the form: time[qualifier],
1177 where time is a positive integer value and qualifier is one of the fol‐
1178 lowing:
1179
1180 ⟨none⟩ seconds
1181 s | S seconds
1182 m | M minutes
1183 h | H hours
1184 d | D days
1185 w | W weeks
1186
1187 Each member of the sequence is added together to calculate the total time
1188 value.
1189
1190 Time format examples:
1191
1192 600 600 seconds (10 minutes)
1193 10m 10 minutes
1194 1h30m 1 hour 30 minutes (90 minutes)
1195
1197 Arguments to some keywords can make use of tokens, which are expanded at
1198 runtime:
1199
1200 %% A literal ‘%’.
1201 %D The routing domain in which the incoming connection was re‐
1202 ceived.
1203 %F The fingerprint of the CA key.
1204 %f The fingerprint of the key or certificate.
1205 %h The home directory of the user.
1206 %i The key ID in the certificate.
1207 %K The base64-encoded CA key.
1208 %k The base64-encoded key or certificate for authentication.
1209 %s The serial number of the certificate.
1210 %T The type of the CA key.
1211 %t The key or certificate type.
1212 %U The numeric user ID of the target user.
1213 %u The username.
1214
1215 AuthorizedKeysCommand accepts the tokens %%, %f, %h, %k, %t, %U, and %u.
1216
1217 AuthorizedKeysFile accepts the tokens %%, %h, %U, and %u.
1218
1219 AuthorizedPrincipalsCommand accepts the tokens %%, %F, %f, %h, %i, %K,
1220 %k, %s, %T, %t, %U, and %u.
1221
1222 AuthorizedPrincipalsFile accepts the tokens %%, %h, %U, and %u.
1223
1224 ChrootDirectory accepts the tokens %%, %h, %U, and %u.
1225
1226 RoutingDomain accepts the token %D.
1227
1229 /etc/gsissh/sshd_config
1230 Contains configuration data for sshd(8). This file should be
1231 writable by root only, but it is recommended (though not neces‐
1232 sary) that it be world-readable.
1233
1235 sftp-server(8), sshd(8)
1236
1238 OpenSSH is a derivative of the original and free ssh 1.2.12 release by
1239 Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
1240 de Raadt and Dug Song removed many bugs, re-added newer features and cre‐
1241 ated OpenSSH. Markus Friedl contributed the support for SSH protocol
1242 versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support
1243 for privilege separation.
1244
1245BSD September 3, 2021 BSD