summaryrefslogtreecommitdiff
path: root/sshd_config.0
diff options
context:
space:
mode:
Diffstat (limited to 'sshd_config.0')
-rw-r--r--sshd_config.0578
1 files changed, 267 insertions, 311 deletions
diff --git a/sshd_config.0 b/sshd_config.0
index 85379dca5..022c05226 100644
--- a/sshd_config.0
+++ b/sshd_config.0
@@ -32,12 +32,12 @@ DESCRIPTION
32 32
33 AddressFamily 33 AddressFamily
34 Specifies which address family should be used by sshd(8). Valid 34 Specifies which address family should be used by sshd(8). Valid
35 arguments are M-bM-^@M-^\anyM-bM-^@M-^], M-bM-^@M-^\inetM-bM-^@M-^] (use IPv4 only), or M-bM-^@M-^\inet6M-bM-^@M-^] (use IPv6 35 arguments are any (the default), inet (use IPv4 only), or inet6
36 only). The default is M-bM-^@M-^\anyM-bM-^@M-^]. 36 (use IPv6 only).
37 37
38 AllowAgentForwarding 38 AllowAgentForwarding
39 Specifies whether ssh-agent(1) forwarding is permitted. The 39 Specifies whether ssh-agent(1) forwarding is permitted. The
40 default is M-bM-^@M-^\yesM-bM-^@M-^]. Note that disabling agent forwarding does not 40 default is yes. Note that disabling agent forwarding does not
41 improve security unless users are also denied shell access, as 41 improve security unless users are also denied shell access, as
42 they can always install their own forwarders. 42 they can always install their own forwarders.
43 43
@@ -53,25 +53,24 @@ DESCRIPTION
53 53
54 See PATTERNS in ssh_config(5) for more information on patterns. 54 See PATTERNS in ssh_config(5) for more information on patterns.
55 55
56 AllowTcpForwarding
57 Specifies whether TCP forwarding is permitted. The available
58 options are M-bM-^@M-^\yesM-bM-^@M-^] or M-bM-^@M-^\allM-bM-^@M-^] to allow TCP forwarding, M-bM-^@M-^\noM-bM-^@M-^] to
59 prevent all TCP forwarding, M-bM-^@M-^\localM-bM-^@M-^] to allow local (from the
60 perspective of ssh(1)) forwarding only or M-bM-^@M-^\remoteM-bM-^@M-^] to allow
61 remote forwarding only. The default is M-bM-^@M-^\yesM-bM-^@M-^]. Note that
62 disabling TCP forwarding does not improve security unless users
63 are also denied shell access, as they can always install their
64 own forwarders.
65
66 AllowStreamLocalForwarding 56 AllowStreamLocalForwarding
67 Specifies whether StreamLocal (Unix-domain socket) forwarding is 57 Specifies whether StreamLocal (Unix-domain socket) forwarding is
68 permitted. The available options are M-bM-^@M-^\yesM-bM-^@M-^] or M-bM-^@M-^\allM-bM-^@M-^] to allow 58 permitted. The available options are yes (the default) or all to
69 StreamLocal forwarding, M-bM-^@M-^\noM-bM-^@M-^] to prevent all StreamLocal 59 allow StreamLocal forwarding, no to prevent all StreamLocal
70 forwarding, M-bM-^@M-^\localM-bM-^@M-^] to allow local (from the perspective of 60 forwarding, local to allow local (from the perspective of ssh(1))
71 ssh(1)) forwarding only or M-bM-^@M-^\remoteM-bM-^@M-^] to allow remote forwarding 61 forwarding only or remote to allow remote forwarding only. Note
72 only. The default is M-bM-^@M-^\yesM-bM-^@M-^]. Note that disabling StreamLocal 62 that disabling StreamLocal forwarding does not improve security
73 forwarding does not improve security unless users are also denied 63 unless users are also denied shell access, as they can always
74 shell access, as they can always install their own forwarders. 64 install their own forwarders.
65
66 AllowTcpForwarding
67 Specifies whether TCP forwarding is permitted. The available
68 options are yes (the default) or all to allow TCP forwarding, no
69 to prevent all TCP forwarding, local to allow local (from the
70 perspective of ssh(1)) forwarding only or remote to allow remote
71 forwarding only. Note that disabling TCP forwarding does not
72 improve security unless users are also denied shell access, as
73 they can always install their own forwarders.
75 74
76 AllowUsers 75 AllowUsers
77 This keyword can be followed by a list of user name patterns, 76 This keyword can be followed by a list of user name patterns,
@@ -92,53 +91,42 @@ DESCRIPTION
92 Specifies the authentication methods that must be successfully 91 Specifies the authentication methods that must be successfully
93 completed for a user to be granted access. This option must be 92 completed for a user to be granted access. This option must be
94 followed by one or more comma-separated lists of authentication 93 followed by one or more comma-separated lists of authentication
95 method names, or by the single string M-bM-^@M-^\anyM-bM-^@M-^] to indicate the 94 method names, or by the single string any to indicate the default
96 default behaviour of accepting any single authentication method. 95 behaviour of accepting any single authentication method. If the
97 if the default is overridden, then successful authentication 96 default is overridden, then successful authentication requires
98 requires completion of every method in at least one of these 97 completion of every method in at least one of these lists.
99 lists. 98
100 99 For example, "publickey,password publickey,keyboard-interactive"
101 For example, an argument of M-bM-^@M-^\publickey,password 100 would require the user to complete public key authentication,
102 publickey,keyboard-interactiveM-bM-^@M-^] would require the user to 101 followed by either password or keyboard interactive
103 complete public key authentication, followed by either password 102 authentication. Only methods that are next in one or more lists
104 or keyboard interactive authentication. Only methods that are 103 are offered at each stage, so for this example it would not be
105 next in one or more lists are offered at each stage, so for this 104 possible to attempt password or keyboard-interactive
106 example, it would not be possible to attempt password or 105 authentication before public key.
107 keyboard-interactive authentication before public key.
108 106
109 For keyboard interactive authentication it is also possible to 107 For keyboard interactive authentication it is also possible to
110 restrict authentication to a specific device by appending a colon 108 restrict authentication to a specific device by appending a colon
111 followed by the device identifier M-bM-^@M-^\bsdauthM-bM-^@M-^], M-bM-^@M-^\pamM-bM-^@M-^], or M-bM-^@M-^\skeyM-bM-^@M-^], 109 followed by the device identifier bsdauth, pam, or skey,
112 depending on the server configuration. For example, 110 depending on the server configuration. For example,
113 M-bM-^@M-^\keyboard-interactive:bsdauthM-bM-^@M-^] would restrict keyboard 111 "keyboard-interactive:bsdauth" would restrict keyboard
114 interactive authentication to the M-bM-^@M-^\bsdauthM-bM-^@M-^] device. 112 interactive authentication to the bsdauth device.
115 113
116 If the M-bM-^@M-^\publickeyM-bM-^@M-^] method is listed more than once, sshd(8) 114 If the publickey method is listed more than once, sshd(8)
117 verifies that keys that have been used successfully are not 115 verifies that keys that have been used successfully are not
118 reused for subsequent authentications. For example, an 116 reused for subsequent authentications. For example,
119 AuthenticationMethods of M-bM-^@M-^\publickey,publickeyM-bM-^@M-^] will require 117 "publickey,publickey" requires successful authentication using
120 successful authentication using two different public keys. 118 two different public keys.
121 119
122 This option will yield a fatal error if enabled if protocol 1 is 120 Note that each authentication method listed should also be
123 also enabled. Note that each authentication method listed should 121 explicitly enabled in the configuration.
124 also be explicitly enabled in the configuration. The default
125 M-bM-^@M-^\anyM-bM-^@M-^] is not to require multiple authentication; successful
126 completion of a single authentication method is sufficient.
127 122
128 AuthorizedKeysCommand 123 AuthorizedKeysCommand
129 Specifies a program to be used to look up the user's public keys. 124 Specifies a program to be used to look up the user's public keys.
130 The program must be owned by root, not writable by group or 125 The program must be owned by root, not writable by group or
131 others and specified by an absolute path. 126 others and specified by an absolute path. Arguments to
132 127 AuthorizedKeysCommand accept the tokens described in the TOKENS
133 Arguments to AuthorizedKeysCommand may be provided using the 128 section. If no arguments are specified then the username of the
134 following tokens, which will be expanded at runtime: %% is 129 target user is used.
135 replaced by a literal '%', %u is replaced by the username being
136 authenticated, %h is replaced by the home directory of the user
137 being authenticated, %t is replaced with the key type offered for
138 authentication, %f is replaced with the fingerprint of the key,
139 and %k is replaced with the key being offered for authentication.
140 If no arguments are specified then the username of the target
141 user will be supplied.
142 130
143 The program should produce on standard output zero or more lines 131 The program should produce on standard output zero or more lines
144 of authorized_keys output (see AUTHORIZED_KEYS in sshd(8)). If a 132 of authorized_keys output (see AUTHORIZED_KEYS in sshd(8)). If a
@@ -155,31 +143,24 @@ DESCRIPTION
155 is not, then sshd(8) will refuse to start. 143 is not, then sshd(8) will refuse to start.
156 144
157 AuthorizedKeysFile 145 AuthorizedKeysFile
158 Specifies the file that contains the public keys that can be used 146 Specifies the file that contains the public keys used for user
159 for user authentication. The format is described in the 147 authentication. The format is described in the AUTHORIZED_KEYS
160 AUTHORIZED_KEYS FILE FORMAT section of sshd(8). 148 FILE FORMAT section of sshd(8). Arguments to AuthorizedKeysFile
161 AuthorizedKeysFile may contain tokens of the form %T which are 149 accept the tokens described in the TOKENS section. After
162 substituted during connection setup. The following tokens are 150 expansion, AuthorizedKeysFile is taken to be an absolute path or
163 defined: %% is replaced by a literal '%', %h is replaced by the 151 one relative to the user's home directory. Multiple files may be
164 home directory of the user being authenticated, and %u is
165 replaced by the username of that user. After expansion,
166 AuthorizedKeysFile is taken to be an absolute path or one
167 relative to the user's home directory. Multiple files may be
168 listed, separated by whitespace. Alternately this option may be 152 listed, separated by whitespace. Alternately this option may be
169 set to M-bM-^@M-^\noneM-bM-^@M-^] to skip checking for user keys in files. The 153 set to none to skip checking for user keys in files. The default
170 default is M-bM-^@M-^\.ssh/authorized_keys .ssh/authorized_keys2M-bM-^@M-^]. 154 is ".ssh/authorized_keys .ssh/authorized_keys2".
171 155
172 AuthorizedPrincipalsCommand 156 AuthorizedPrincipalsCommand
173 Specifies a program to be used to generate the list of allowed 157 Specifies a program to be used to generate the list of allowed
174 certificate principals as per AuthorizedPrincipalsFile. The 158 certificate principals as per AuthorizedPrincipalsFile. The
175 program must be owned by root, not writable by group or others 159 program must be owned by root, not writable by group or others
176 and specified by an absolute path. 160 and specified by an absolute path. Arguments to
177 161 AuthorizedPrincipalsCommand accept the tokens described in the
178 Arguments to AuthorizedPrincipalsCommand may be provided using 162 TOKENS section. If no arguments are specified then the username
179 the following tokens, which will be expanded at runtime: %% is 163 of the target user is used.
180 replaced by a literal '%', %u is replaced by the username being
181 authenticated and %h is replaced by the home directory of the
182 user being authenticated.
183 164
184 The program should produce on standard output zero or more lines 165 The program should produce on standard output zero or more lines
185 of AuthorizedPrincipalsFile output. If either 166 of AuthorizedPrincipalsFile output. If either
@@ -205,31 +186,27 @@ DESCRIPTION
205 options (as described in AUTHORIZED_KEYS FILE FORMAT in sshd(8)). 186 options (as described in AUTHORIZED_KEYS FILE FORMAT in sshd(8)).
206 Empty lines and comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are ignored. 187 Empty lines and comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are ignored.
207 188
208 AuthorizedPrincipalsFile may contain tokens of the form %T which 189 Arguments to AuthorizedPrincipalsFile accept the tokens described
209 are substituted during connection setup. The following tokens 190 in the TOKENS section. After expansion, AuthorizedPrincipalsFile
210 are defined: %% is replaced by a literal '%', %h is replaced by 191 is taken to be an absolute path or one relative to the user's
211 the home directory of the user being authenticated, and %u is 192 home directory. The default is none, i.e. not to use a
212 replaced by the username of that user. After expansion, 193 principals file M-bM-^@M-^S in this case, the username of the user must
213 AuthorizedPrincipalsFile is taken to be an absolute path or one 194 appear in a certificate's principals list for it to be accepted.
214 relative to the user's home directory. 195
215 196 Note that AuthorizedPrincipalsFile is only used when
216 The default is M-bM-^@M-^\noneM-bM-^@M-^], i.e. not to use a principals file M-bM-^@M-^S in 197 authentication proceeds using a CA listed in TrustedUserCAKeys
217 this case, the username of the user must appear in a 198 and is not consulted for certification authorities trusted via
218 certificate's principals list for it to be accepted. Note that
219 AuthorizedPrincipalsFile is only used when authentication
220 proceeds using a CA listed in TrustedUserCAKeys and is not
221 consulted for certification authorities trusted via
222 ~/.ssh/authorized_keys, though the principals= key option offers 199 ~/.ssh/authorized_keys, though the principals= key option offers
223 a similar facility (see sshd(8) for details). 200 a similar facility (see sshd(8) for details).
224 201
225 Banner The contents of the specified file are sent to the remote user 202 Banner The contents of the specified file are sent to the remote user
226 before authentication is allowed. If the argument is M-bM-^@M-^\noneM-bM-^@M-^] then 203 before authentication is allowed. If the argument is none then
227 no banner is displayed. By default, no banner is displayed. 204 no banner is displayed. By default, no banner is displayed.
228 205
229 ChallengeResponseAuthentication 206 ChallengeResponseAuthentication
230 Specifies whether challenge-response authentication is allowed 207 Specifies whether challenge-response authentication is allowed
231 (e.g. via PAM or through authentication styles supported in 208 (e.g. via PAM or through authentication styles supported in
232 login.conf(5)) The default is M-bM-^@M-^\yesM-bM-^@M-^]. 209 login.conf(5)) The default is yes.
233 210
234 ChrootDirectory 211 ChrootDirectory
235 Specifies the pathname of a directory to chroot(2) to after 212 Specifies the pathname of a directory to chroot(2) to after
@@ -237,31 +214,25 @@ DESCRIPTION
237 components of the pathname are root-owned directories which are 214 components of the pathname are root-owned directories which are
238 not writable by any other user or group. After the chroot, 215 not writable by any other user or group. After the chroot,
239 sshd(8) changes the working directory to the user's home 216 sshd(8) changes the working directory to the user's home
240 directory. 217 directory. Arguments to ChrootDirectory accept the tokens
241 218 described in the TOKENS section.
242 The pathname may contain the following tokens that are expanded
243 at runtime once the connecting user has been authenticated: %% is
244 replaced by a literal '%', %h is replaced by the home directory
245 of the user being authenticated, and %u is replaced by the
246 username of that user.
247 219
248 The ChrootDirectory must contain the necessary files and 220 The ChrootDirectory must contain the necessary files and
249 directories to support the user's session. For an interactive 221 directories to support the user's session. For an interactive
250 session this requires at least a shell, typically sh(1), and 222 session this requires at least a shell, typically sh(1), and
251 basic /dev nodes such as null(4), zero(4), stdin(4), stdout(4), 223 basic /dev nodes such as null(4), zero(4), stdin(4), stdout(4),
252 stderr(4), and tty(4) devices. For file transfer sessions using 224 stderr(4), and tty(4) devices. For file transfer sessions using
253 M-bM-^@M-^\sftpM-bM-^@M-^], no additional configuration of the environment is 225 SFTP no additional configuration of the environment is necessary
254 necessary if the in-process sftp server is used, though sessions 226 if the in-process sftp-server is used, though sessions which use
255 which use logging may require /dev/log inside the chroot 227 logging may require /dev/log inside the chroot directory on some
256 directory on some operating systems (see sftp-server(8) for 228 operating systems (see sftp-server(8) for details).
257 details).
258 229
259 For safety, it is very important that the directory hierarchy be 230 For safety, it is very important that the directory hierarchy be
260 prevented from modification by other processes on the system 231 prevented from modification by other processes on the system
261 (especially those outside the jail). Misconfiguration can lead 232 (especially those outside the jail). Misconfiguration can lead
262 to unsafe environments which sshd(8) cannot detect. 233 to unsafe environments which sshd(8) cannot detect.
263 234
264 The default is M-bM-^@M-^\noneM-bM-^@M-^], indicating not to chroot(2). 235 The default is none, indicating not to chroot(2).
265 236
266 Ciphers 237 Ciphers
267 Specifies the ciphers allowed. Multiple ciphers must be comma- 238 Specifies the ciphers allowed. Multiple ciphers must be comma-
@@ -293,26 +264,25 @@ DESCRIPTION
293 aes128-ctr,aes192-ctr,aes256-ctr, 264 aes128-ctr,aes192-ctr,aes256-ctr,
294 aes128-gcm@openssh.com,aes256-gcm@openssh.com 265 aes128-gcm@openssh.com,aes256-gcm@openssh.com
295 266
296 The list of available ciphers may also be obtained using the -Q 267 The list of available ciphers may also be obtained using "ssh -Q
297 option of ssh(1) with an argument of M-bM-^@M-^\cipherM-bM-^@M-^]. 268 cipher".
298 269
299 ClientAliveCountMax 270 ClientAliveCountMax
300 Sets the number of client alive messages (see below) which may be 271 Sets the number of client alive messages which may be sent
301 sent without sshd(8) receiving any messages back from the client. 272 without sshd(8) receiving any messages back from the client. If
302 If this threshold is reached while client alive messages are 273 this threshold is reached while client alive messages are being
303 being sent, sshd will disconnect the client, terminating the 274 sent, sshd will disconnect the client, terminating the session.
304 session. It is important to note that the use of client alive 275 It is important to note that the use of client alive messages is
305 messages is very different from TCPKeepAlive (below). The client 276 very different from TCPKeepAlive. The client alive messages are
306 alive messages are sent through the encrypted channel and 277 sent through the encrypted channel and therefore will not be
307 therefore will not be spoofable. The TCP keepalive option 278 spoofable. The TCP keepalive option enabled by TCPKeepAlive is
308 enabled by TCPKeepAlive is spoofable. The client alive mechanism 279 spoofable. The client alive mechanism is valuable when the
309 is valuable when the client or server depend on knowing when a 280 client or server depend on knowing when a connection has become
310 connection has become inactive. 281 inactive.
311 282
312 The default value is 3. If ClientAliveInterval (see below) is 283 The default value is 3. If ClientAliveInterval is set to 15, and
313 set to 15, and ClientAliveCountMax is left at the default, 284 ClientAliveCountMax is left at the default, unresponsive SSH
314 unresponsive SSH clients will be disconnected after approximately 285 clients will be disconnected after approximately 45 seconds.
315 45 seconds.
316 286
317 ClientAliveInterval 287 ClientAliveInterval
318 Sets a timeout interval in seconds after which if no data has 288 Sets a timeout interval in seconds after which if no data has
@@ -322,9 +292,9 @@ DESCRIPTION
322 not be sent to the client. 292 not be sent to the client.
323 293
324 Compression 294 Compression
325 Specifies whether compression is allowed, or delayed until the 295 Specifies whether compression is enabled after the user has
326 user has authenticated successfully. The argument must be M-bM-^@M-^\yesM-bM-^@M-^], 296 authenticated successfully. The argument must be yes, delayed (a
327 M-bM-^@M-^\delayedM-bM-^@M-^], or M-bM-^@M-^\noM-bM-^@M-^]. The default is M-bM-^@M-^\delayedM-bM-^@M-^]. 297 legacy synonym for yes) or no. The default is yes.
328 298
329 DenyGroups 299 DenyGroups
330 This keyword can be followed by a list of group name patterns, 300 This keyword can be followed by a list of group name patterns,
@@ -352,9 +322,14 @@ DESCRIPTION
352 322
353 See PATTERNS in ssh_config(5) for more information on patterns. 323 See PATTERNS in ssh_config(5) for more information on patterns.
354 324
325 DisableForwarding
326 Disables all forwarding features, including X11, ssh-agent(1),
327 TCP and StreamLocal. This option overrides all other forwarding-
328 related options and may simplify restricted configurations.
329
355 FingerprintHash 330 FingerprintHash
356 Specifies the hash algorithm used when logging key fingerprints. 331 Specifies the hash algorithm used when logging key fingerprints.
357 Valid options are: M-bM-^@M-^\md5M-bM-^@M-^] and M-bM-^@M-^\sha256M-bM-^@M-^]. The default is M-bM-^@M-^\sha256M-bM-^@M-^]. 332 Valid options are: md5 and sha256. The default is sha256.
358 333
359 ForceCommand 334 ForceCommand
360 Forces the execution of the command specified by ForceCommand, 335 Forces the execution of the command specified by ForceCommand,
@@ -364,9 +339,9 @@ DESCRIPTION
364 execution. It is most useful inside a Match block. The command 339 execution. It is most useful inside a Match block. The command
365 originally supplied by the client is available in the 340 originally supplied by the client is available in the
366 SSH_ORIGINAL_COMMAND environment variable. Specifying a command 341 SSH_ORIGINAL_COMMAND environment variable. Specifying a command
367 of M-bM-^@M-^\internal-sftpM-bM-^@M-^] will force the use of an in-process sftp 342 of internal-sftp will force the use of an in-process SFTP server
368 server that requires no support files when used with 343 that requires no support files when used with ChrootDirectory.
369 ChrootDirectory. The default is M-bM-^@M-^\noneM-bM-^@M-^]. 344 The default is none.
370 345
371 GatewayPorts 346 GatewayPorts
372 Specifies whether remote hosts are allowed to connect to ports 347 Specifies whether remote hosts are allowed to connect to ports
@@ -375,28 +350,28 @@ DESCRIPTION
375 hosts from connecting to forwarded ports. GatewayPorts can be 350 hosts from connecting to forwarded ports. GatewayPorts can be
376 used to specify that sshd should allow remote port forwardings to 351 used to specify that sshd should allow remote port forwardings to
377 bind to non-loopback addresses, thus allowing other hosts to 352 bind to non-loopback addresses, thus allowing other hosts to
378 connect. The argument may be M-bM-^@M-^\noM-bM-^@M-^] to force remote port 353 connect. The argument may be no to force remote port forwardings
379 forwardings to be available to the local host only, M-bM-^@M-^\yesM-bM-^@M-^] to 354 to be available to the local host only, yes to force remote port
380 force remote port forwardings to bind to the wildcard address, or 355 forwardings to bind to the wildcard address, or clientspecified
381 M-bM-^@M-^\clientspecifiedM-bM-^@M-^] to allow the client to select the address to 356 to allow the client to select the address to which the forwarding
382 which the forwarding is bound. The default is M-bM-^@M-^\noM-bM-^@M-^]. 357 is bound. The default is no.
383 358
384 GSSAPIAuthentication 359 GSSAPIAuthentication
385 Specifies whether user authentication based on GSSAPI is allowed. 360 Specifies whether user authentication based on GSSAPI is allowed.
386 The default is M-bM-^@M-^\noM-bM-^@M-^]. 361 The default is no.
387 362
388 GSSAPICleanupCredentials 363 GSSAPICleanupCredentials
389 Specifies whether to automatically destroy the user's credentials 364 Specifies whether to automatically destroy the user's credentials
390 cache on logout. The default is M-bM-^@M-^\yesM-bM-^@M-^]. 365 cache on logout. The default is yes.
391 366
392 GSSAPIStrictAcceptorCheck 367 GSSAPIStrictAcceptorCheck
393 Determines whether to be strict about the identity of the GSSAPI 368 Determines whether to be strict about the identity of the GSSAPI
394 acceptor a client authenticates against. If set to M-bM-^@M-^\yesM-bM-^@M-^] then 369 acceptor a client authenticates against. If set to yes then the
395 the client must authenticate against the host service on the 370 client must authenticate against the host service on the current
396 current hostname. If set to M-bM-^@M-^\noM-bM-^@M-^] then the client may 371 hostname. If set to no then the client may authenticate against
397 authenticate against any service key stored in the machine's 372 any service key stored in the machine's default store. This
398 default store. This facility is provided to assist with 373 facility is provided to assist with operation on multi homed
399 operation on multi homed machines. The default is M-bM-^@M-^\yesM-bM-^@M-^]. 374 machines. The default is yes.
400 375
401 HostbasedAcceptedKeyTypes 376 HostbasedAcceptedKeyTypes
402 Specifies the key types that will be accepted for hostbased 377 Specifies the key types that will be accepted for hostbased
@@ -413,21 +388,22 @@ DESCRIPTION
413 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, 388 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
414 ssh-ed25519,ssh-rsa 389 ssh-ed25519,ssh-rsa
415 390
416 The -Q option of ssh(1) may be used to list supported key types. 391 The list of available key types may also be obtained using "ssh
392 -Q key".
417 393
418 HostbasedAuthentication 394 HostbasedAuthentication
419 Specifies whether rhosts or /etc/hosts.equiv authentication 395 Specifies whether rhosts or /etc/hosts.equiv authentication
420 together with successful public key client host authentication is 396 together with successful public key client host authentication is
421 allowed (host-based authentication). The default is M-bM-^@M-^\noM-bM-^@M-^]. 397 allowed (host-based authentication). The default is no.
422 398
423 HostbasedUsesNameFromPacketOnly 399 HostbasedUsesNameFromPacketOnly
424 Specifies whether or not the server will attempt to perform a 400 Specifies whether or not the server will attempt to perform a
425 reverse name lookup when matching the name in the ~/.shosts, 401 reverse name lookup when matching the name in the ~/.shosts,
426 ~/.rhosts, and /etc/hosts.equiv files during 402 ~/.rhosts, and /etc/hosts.equiv files during
427 HostbasedAuthentication. A setting of M-bM-^@M-^\yesM-bM-^@M-^] means that sshd(8) 403 HostbasedAuthentication. A setting of yes means that sshd(8)
428 uses the name supplied by the client rather than attempting to 404 uses the name supplied by the client rather than attempting to
429 resolve the name from the TCP connection itself. The default is 405 resolve the name from the TCP connection itself. The default is
430 M-bM-^@M-^\noM-bM-^@M-^]. 406 no.
431 407
432 HostCertificate 408 HostCertificate
433 Specifies a file containing a public host certificate. The 409 Specifies a file containing a public host certificate. The
@@ -437,25 +413,23 @@ DESCRIPTION
437 413
438 HostKey 414 HostKey
439 Specifies a file containing a private host key used by SSH. The 415 Specifies a file containing a private host key used by SSH. The
440 default is /etc/ssh/ssh_host_key for protocol version 1, and 416 defaults are /etc/ssh/ssh_host_dsa_key,
441 /etc/ssh/ssh_host_dsa_key, /etc/ssh/ssh_host_ecdsa_key, 417 /etc/ssh/ssh_host_ecdsa_key, /etc/ssh/ssh_host_ed25519_key and
442 /etc/ssh/ssh_host_ed25519_key and /etc/ssh/ssh_host_rsa_key for 418 /etc/ssh/ssh_host_rsa_key.
443 protocol version 2.
444 419
445 Note that sshd(8) will refuse to use a file if it is group/world- 420 Note that sshd(8) will refuse to use a file if it is group/world-
446 accessible and that the HostKeyAlgorithms option restricts which 421 accessible and that the HostKeyAlgorithms option restricts which
447 of the keys are actually used by sshd(8). 422 of the keys are actually used by sshd(8).
448 423
449 It is possible to have multiple host key files. M-bM-^@M-^\rsa1M-bM-^@M-^] keys are 424 It is possible to have multiple host key files. It is also
450 used for version 1 and M-bM-^@M-^\dsaM-bM-^@M-^], M-bM-^@M-^\ecdsaM-bM-^@M-^], M-bM-^@M-^\ed25519M-bM-^@M-^] or M-bM-^@M-^\rsaM-bM-^@M-^] are 425 possible to specify public host key files instead. In this case
451 used for version 2 of the SSH protocol. It is also possible to 426 operations on the private key will be delegated to an
452 specify public host key files instead. In this case operations 427 ssh-agent(1).
453 on the private key will be delegated to an ssh-agent(1).
454 428
455 HostKeyAgent 429 HostKeyAgent
456 Identifies the UNIX-domain socket used to communicate with an 430 Identifies the UNIX-domain socket used to communicate with an
457 agent that has access to the private host keys. If the string 431 agent that has access to the private host keys. If the string
458 M-bM-^@M-^\SSH_AUTH_SOCKM-bM-^@M-^] is specified, the location of the socket will be 432 "SSH_AUTH_SOCK" is specified, the location of the socket will be
459 read from the SSH_AUTH_SOCK environment variable. 433 read from the SSH_AUTH_SOCK environment variable.
460 434
461 HostKeyAlgorithms 435 HostKeyAlgorithms
@@ -470,60 +444,59 @@ DESCRIPTION
470 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, 444 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
471 ssh-ed25519,ssh-rsa 445 ssh-ed25519,ssh-rsa
472 446
473 The list of available key types may also be obtained using the -Q 447 The list of available key types may also be obtained using "ssh
474 option of ssh(1) with an argument of M-bM-^@M-^\keyM-bM-^@M-^]. 448 -Q key".
475 449
476 IgnoreRhosts 450 IgnoreRhosts
477 Specifies that .rhosts and .shosts files will not be used in 451 Specifies that .rhosts and .shosts files will not be used in
478 RhostsRSAAuthentication or HostbasedAuthentication. 452 HostbasedAuthentication.
479 453
480 /etc/hosts.equiv and /etc/shosts.equiv are still used. The 454 /etc/hosts.equiv and /etc/shosts.equiv are still used. The
481 default is M-bM-^@M-^\yesM-bM-^@M-^]. 455 default is yes.
482 456
483 IgnoreUserKnownHosts 457 IgnoreUserKnownHosts
484 Specifies whether sshd(8) should ignore the user's 458 Specifies whether sshd(8) should ignore the user's
485 ~/.ssh/known_hosts during RhostsRSAAuthentication or 459 ~/.ssh/known_hosts during HostbasedAuthentication. The default
486 HostbasedAuthentication. The default is M-bM-^@M-^\noM-bM-^@M-^]. 460 is no.
487 461
488 IPQoS Specifies the IPv4 type-of-service or DSCP class for the 462 IPQoS Specifies the IPv4 type-of-service or DSCP class for the
489 connection. Accepted values are M-bM-^@M-^\af11M-bM-^@M-^], M-bM-^@M-^\af12M-bM-^@M-^], M-bM-^@M-^\af13M-bM-^@M-^], M-bM-^@M-^\af21M-bM-^@M-^], 463 connection. Accepted values are af11, af12, af13, af21, af22,
490 M-bM-^@M-^\af22M-bM-^@M-^], M-bM-^@M-^\af23M-bM-^@M-^], M-bM-^@M-^\af31M-bM-^@M-^], M-bM-^@M-^\af32M-bM-^@M-^], M-bM-^@M-^\af33M-bM-^@M-^], M-bM-^@M-^\af41M-bM-^@M-^], M-bM-^@M-^\af42M-bM-^@M-^], M-bM-^@M-^\af43M-bM-^@M-^], 464 af23, af31, af32, af33, af41, af42, af43, cs0, cs1, cs2, cs3,
491 M-bM-^@M-^\cs0M-bM-^@M-^], M-bM-^@M-^\cs1M-bM-^@M-^], M-bM-^@M-^\cs2M-bM-^@M-^], M-bM-^@M-^\cs3M-bM-^@M-^], M-bM-^@M-^\cs4M-bM-^@M-^], M-bM-^@M-^\cs5M-bM-^@M-^], M-bM-^@M-^\cs6M-bM-^@M-^], M-bM-^@M-^\cs7M-bM-^@M-^], M-bM-^@M-^\efM-bM-^@M-^], 465 cs4, cs5, cs6, cs7, ef, lowdelay, throughput, reliability, or a
492 M-bM-^@M-^\lowdelayM-bM-^@M-^], M-bM-^@M-^\throughputM-bM-^@M-^], M-bM-^@M-^\reliabilityM-bM-^@M-^], or a numeric value. 466 numeric value. This option may take one or two arguments,
493 This option may take one or two arguments, separated by 467 separated by whitespace. If one argument is specified, it is
494 whitespace. If one argument is specified, it is used as the 468 used as the packet class unconditionally. If two values are
495 packet class unconditionally. If two values are specified, the 469 specified, the first is automatically selected for interactive
496 first is automatically selected for interactive sessions and the 470 sessions and the second for non-interactive sessions. The
497 second for non-interactive sessions. The default is M-bM-^@M-^\lowdelayM-bM-^@M-^] 471 default is lowdelay for interactive sessions and throughput for
498 for interactive sessions and M-bM-^@M-^\throughputM-bM-^@M-^] for non-interactive 472 non-interactive sessions.
499 sessions.
500 473
501 KbdInteractiveAuthentication 474 KbdInteractiveAuthentication
502 Specifies whether to allow keyboard-interactive authentication. 475 Specifies whether to allow keyboard-interactive authentication.
503 The argument to this keyword must be M-bM-^@M-^\yesM-bM-^@M-^] or M-bM-^@M-^\noM-bM-^@M-^]. The default 476 The argument to this keyword must be yes or no. The default is
504 is to use whatever value ChallengeResponseAuthentication is set 477 to use whatever value ChallengeResponseAuthentication is set to
505 to (by default M-bM-^@M-^\yesM-bM-^@M-^]). 478 (by default yes).
506 479
507 KerberosAuthentication 480 KerberosAuthentication
508 Specifies whether the password provided by the user for 481 Specifies whether the password provided by the user for
509 PasswordAuthentication will be validated through the Kerberos 482 PasswordAuthentication will be validated through the Kerberos
510 KDC. To use this option, the server needs a Kerberos servtab 483 KDC. To use this option, the server needs a Kerberos servtab
511 which allows the verification of the KDC's identity. The default 484 which allows the verification of the KDC's identity. The default
512 is M-bM-^@M-^\noM-bM-^@M-^]. 485 is no.
513 486
514 KerberosGetAFSToken 487 KerberosGetAFSToken
515 If AFS is active and the user has a Kerberos 5 TGT, attempt to 488 If AFS is active and the user has a Kerberos 5 TGT, attempt to
516 acquire an AFS token before accessing the user's home directory. 489 acquire an AFS token before accessing the user's home directory.
517 The default is M-bM-^@M-^\noM-bM-^@M-^]. 490 The default is no.
518 491
519 KerberosOrLocalPasswd 492 KerberosOrLocalPasswd
520 If password authentication through Kerberos fails then the 493 If password authentication through Kerberos fails then the
521 password will be validated via any additional local mechanism 494 password will be validated via any additional local mechanism
522 such as /etc/passwd. The default is M-bM-^@M-^\yesM-bM-^@M-^]. 495 such as /etc/passwd. The default is yes.
523 496
524 KerberosTicketCleanup 497 KerberosTicketCleanup
525 Specifies whether to automatically destroy the user's ticket 498 Specifies whether to automatically destroy the user's ticket
526 cache file on logout. The default is M-bM-^@M-^\yesM-bM-^@M-^]. 499 cache file on logout. The default is yes.
527 500
528 KexAlgorithms 501 KexAlgorithms
529 Specifies the available KEX (Key Exchange) algorithms. Multiple 502 Specifies the available KEX (Key Exchange) algorithms. Multiple
@@ -532,6 +505,7 @@ DESCRIPTION
532 will be appended to the default set instead of replacing them. 505 will be appended to the default set instead of replacing them.
533 The supported algorithms are: 506 The supported algorithms are:
534 507
508 curve25519-sha256
535 curve25519-sha256@libssh.org 509 curve25519-sha256@libssh.org
536 diffie-hellman-group1-sha1 510 diffie-hellman-group1-sha1
537 diffie-hellman-group14-sha1 511 diffie-hellman-group14-sha1
@@ -543,21 +517,13 @@ DESCRIPTION
543 517
544 The default is: 518 The default is:
545 519
546 curve25519-sha256@libssh.org, 520 curve25519-sha256,curve25519-sha256@libssh.org,
547 ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, 521 ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,
548 diffie-hellman-group-exchange-sha256, 522 diffie-hellman-group-exchange-sha256,
549 diffie-hellman-group14-sha1 523 diffie-hellman-group14-sha1
550 524
551 The list of available key exchange algorithms may also be 525 The list of available key exchange algorithms may also be
552 obtained using the -Q option of ssh(1) with an argument of M-bM-^@M-^\kexM-bM-^@M-^]. 526 obtained using "ssh -Q kex".
553
554 KeyRegenerationInterval
555 In protocol version 1, the ephemeral server key is automatically
556 regenerated after this many seconds (if it has been used). The
557 purpose of regeneration is to prevent decrypting captured
558 sessions by later breaking into the machine and stealing the
559 keys. The key is never stored anywhere. If the value is 0, the
560 key is never regenerated. The default is 3600 (seconds).
561 527
562 ListenAddress 528 ListenAddress
563 Specifies the local addresses sshd(8) should listen on. The 529 Specifies the local addresses sshd(8) should listen on. The
@@ -591,7 +557,7 @@ DESCRIPTION
591 algorithms will be appended to the default set instead of 557 algorithms will be appended to the default set instead of
592 replacing them. 558 replacing them.
593 559
594 The algorithms that contain M-bM-^@M-^\-etmM-bM-^@M-^] calculate the MAC after 560 The algorithms that contain "-etm" calculate the MAC after
595 encryption (encrypt-then-mac). These are considered safer and 561 encryption (encrypt-then-mac). These are considered safer and
596 their use recommended. The supported MACs are: 562 their use recommended. The supported MACs are:
597 563
@@ -623,7 +589,7 @@ DESCRIPTION
623 hmac-sha2-256,hmac-sha2-512,hmac-sha1 589 hmac-sha2-256,hmac-sha2-512,hmac-sha1
624 590
625 The list of available MAC algorithms may also be obtained using 591 The list of available MAC algorithms may also be obtained using
626 the -Q option of ssh(1) with an argument of M-bM-^@M-^\macM-bM-^@M-^]. 592 "ssh -Q mac".
627 593
628 Match Introduces a conditional block. If all of the criteria on the 594 Match Introduces a conditional block. If all of the criteria on the
629 Match line are satisfied, the keywords on the following lines 595 Match line are satisfied, the keywords on the following lines
@@ -640,12 +606,12 @@ DESCRIPTION
640 operators described in the PATTERNS section of ssh_config(5). 606 operators described in the PATTERNS section of ssh_config(5).
641 607
642 The patterns in an Address criteria may additionally contain 608 The patterns in an Address criteria may additionally contain
643 addresses to match in CIDR address/masklen format, e.g. 609 addresses to match in CIDR address/masklen format, such as
644 M-bM-^@M-^\192.0.2.0/24M-bM-^@M-^] or M-bM-^@M-^\3ffe:ffff::/32M-bM-^@M-^]. Note that the mask length 610 192.0.2.0/24 or 2001:db8::/32. Note that the mask length
645 provided must be consistent with the address - it is an error to 611 provided must be consistent with the address - it is an error to
646 specify a mask length that is too long for the address or one 612 specify a mask length that is too long for the address or one
647 with bits set in this host portion of the address. For example, 613 with bits set in this host portion of the address. For example,
648 M-bM-^@M-^\192.0.2.0/33M-bM-^@M-^] and M-bM-^@M-^\192.0.2.0/8M-bM-^@M-^] respectively. 614 192.0.2.0/33 and 192.0.2.0/8, respectively.
649 615
650 Only a subset of keywords may be used on the lines following a 616 Only a subset of keywords may be used on the lines following a
651 Match keyword. Available keywords are AcceptEnv, 617 Match keyword. Available keywords are AcceptEnv,
@@ -654,7 +620,8 @@ DESCRIPTION
654 AuthorizedKeysCommand, AuthorizedKeysCommandUser, 620 AuthorizedKeysCommand, AuthorizedKeysCommandUser,
655 AuthorizedKeysFile, AuthorizedPrincipalsCommand, 621 AuthorizedKeysFile, AuthorizedPrincipalsCommand,
656 AuthorizedPrincipalsCommandUser, AuthorizedPrincipalsFile, 622 AuthorizedPrincipalsCommandUser, AuthorizedPrincipalsFile,
657 Banner, ChrootDirectory, DenyGroups, DenyUsers, ForceCommand, 623 Banner, ChrootDirectory, ClientAliveCountMax,
624 ClientAliveInterval, DenyGroups, DenyUsers, ForceCommand,
658 GatewayPorts, GSSAPIAuthentication, HostbasedAcceptedKeyTypes, 625 GatewayPorts, GSSAPIAuthentication, HostbasedAcceptedKeyTypes,
659 HostbasedAuthentication, HostbasedUsesNameFromPacketOnly, IPQoS, 626 HostbasedAuthentication, HostbasedUsesNameFromPacketOnly, IPQoS,
660 KbdInteractiveAuthentication, KerberosAuthentication, 627 KbdInteractiveAuthentication, KerberosAuthentication,
@@ -662,9 +629,8 @@ DESCRIPTION
662 PermitEmptyPasswords, PermitOpen, PermitRootLogin, PermitTTY, 629 PermitEmptyPasswords, PermitOpen, PermitRootLogin, PermitTTY,
663 PermitTunnel, PermitUserRC, PubkeyAcceptedKeyTypes, 630 PermitTunnel, PermitUserRC, PubkeyAcceptedKeyTypes,
664 PubkeyAuthentication, RekeyLimit, RevokedKeys, 631 PubkeyAuthentication, RekeyLimit, RevokedKeys,
665 RhostsRSAAuthentication, RSAAuthentication, StreamLocalBindMask, 632 StreamLocalBindMask, StreamLocalBindUnlink, TrustedUserCAKeys,
666 StreamLocalBindUnlink, TrustedUserCAKeys, X11DisplayOffset, 633 X11DisplayOffset, X11Forwarding and X11UseLocalHost.
667 X11Forwarding and X11UseLocalHost.
668 634
669 MaxAuthTries 635 MaxAuthTries
670 Specifies the maximum number of authentication attempts permitted 636 Specifies the maximum number of authentication attempts permitted
@@ -687,21 +653,21 @@ DESCRIPTION
687 expires for a connection. The default is 10:30:100. 653 expires for a connection. The default is 10:30:100.
688 654
689 Alternatively, random early drop can be enabled by specifying the 655 Alternatively, random early drop can be enabled by specifying the
690 three colon separated values M-bM-^@M-^\start:rate:fullM-bM-^@M-^] (e.g. "10:30:60"). 656 three colon separated values start:rate:full (e.g. "10:30:60").
691 sshd(8) will refuse connection attempts with a probability of 657 sshd(8) will refuse connection attempts with a probability of
692 M-bM-^@M-^\rate/100M-bM-^@M-^] (30%) if there are currently M-bM-^@M-^\startM-bM-^@M-^] (10) 658 rate/100 (30%) if there are currently start (10) unauthenticated
693 unauthenticated connections. The probability increases linearly 659 connections. The probability increases linearly and all
694 and all connection attempts are refused if the number of 660 connection attempts are refused if the number of unauthenticated
695 unauthenticated connections reaches M-bM-^@M-^\fullM-bM-^@M-^] (60). 661 connections reaches full (60).
696 662
697 PasswordAuthentication 663 PasswordAuthentication
698 Specifies whether password authentication is allowed. The 664 Specifies whether password authentication is allowed. The
699 default is M-bM-^@M-^\yesM-bM-^@M-^]. 665 default is yes.
700 666
701 PermitEmptyPasswords 667 PermitEmptyPasswords
702 When password authentication is allowed, it specifies whether the 668 When password authentication is allowed, it specifies whether the
703 server allows login to accounts with empty password strings. The 669 server allows login to accounts with empty password strings. The
704 default is M-bM-^@M-^\noM-bM-^@M-^]. 670 default is no.
705 671
706 PermitOpen 672 PermitOpen
707 Specifies the destinations to which TCP port forwarding is 673 Specifies the destinations to which TCP port forwarding is
@@ -713,58 +679,57 @@ DESCRIPTION
713 PermitOpen [IPv6_addr]:port 679 PermitOpen [IPv6_addr]:port
714 680
715 Multiple forwards may be specified by separating them with 681 Multiple forwards may be specified by separating them with
716 whitespace. An argument of M-bM-^@M-^\anyM-bM-^@M-^] can be used to remove all 682 whitespace. An argument of any can be used to remove all
717 restrictions and permit any forwarding requests. An argument of 683 restrictions and permit any forwarding requests. An argument of
718 M-bM-^@M-^\noneM-bM-^@M-^] can be used to prohibit all forwarding requests. The 684 none can be used to prohibit all forwarding requests. The
719 wildcard M-bM-^@M-^\*M-bM-^@M-^] can be used for host or port to allow all hosts or 685 wildcard M-bM-^@M-^X*M-bM-^@M-^Y can be used for host or port to allow all hosts or
720 ports, respectively. By default all port forwarding requests are 686 ports, respectively. By default all port forwarding requests are
721 permitted. 687 permitted.
722 688
723 PermitRootLogin 689 PermitRootLogin
724 Specifies whether root can log in using ssh(1). The argument 690 Specifies whether root can log in using ssh(1). The argument
725 must be M-bM-^@M-^\yesM-bM-^@M-^], M-bM-^@M-^\prohibit-passwordM-bM-^@M-^], M-bM-^@M-^\without-passwordM-bM-^@M-^], 691 must be yes, prohibit-password, without-password,
726 M-bM-^@M-^\forced-commands-onlyM-bM-^@M-^], or M-bM-^@M-^\noM-bM-^@M-^]. The default is 692 forced-commands-only, or no. The default is prohibit-password.
727 M-bM-^@M-^\prohibit-passwordM-bM-^@M-^].
728 693
729 If this option is set to M-bM-^@M-^\prohibit-passwordM-bM-^@M-^] or 694 If this option is set to prohibit-password or without-password,
730 M-bM-^@M-^\without-passwordM-bM-^@M-^], password and keyboard-interactive 695 password and keyboard-interactive authentication are disabled for
731 authentication are disabled for root. 696 root.
732 697
733 If this option is set to M-bM-^@M-^\forced-commands-onlyM-bM-^@M-^], root login with 698 If this option is set to forced-commands-only, root login with
734 public key authentication will be allowed, but only if the 699 public key authentication will be allowed, but only if the
735 command option has been specified (which may be useful for taking 700 command option has been specified (which may be useful for taking
736 remote backups even if root login is normally not allowed). All 701 remote backups even if root login is normally not allowed). All
737 other authentication methods are disabled for root. 702 other authentication methods are disabled for root.
738 703
739 If this option is set to M-bM-^@M-^\noM-bM-^@M-^], root is not allowed to log in. 704 If this option is set to no, root is not allowed to log in.
705
706 PermitTTY
707 Specifies whether pty(4) allocation is permitted. The default is
708 yes.
740 709
741 PermitTunnel 710 PermitTunnel
742 Specifies whether tun(4) device forwarding is allowed. The 711 Specifies whether tun(4) device forwarding is allowed. The
743 argument must be M-bM-^@M-^\yesM-bM-^@M-^], M-bM-^@M-^\point-to-pointM-bM-^@M-^] (layer 3), M-bM-^@M-^\ethernetM-bM-^@M-^] 712 argument must be yes, point-to-point (layer 3), ethernet (layer
744 (layer 2), or M-bM-^@M-^\noM-bM-^@M-^]. Specifying M-bM-^@M-^\yesM-bM-^@M-^] permits both 713 2), or no. Specifying yes permits both point-to-point and
745 M-bM-^@M-^\point-to-pointM-bM-^@M-^] and M-bM-^@M-^\ethernetM-bM-^@M-^]. The default is M-bM-^@M-^\noM-bM-^@M-^]. 714 ethernet. The default is no.
746 715
747 Independent of this setting, the permissions of the selected 716 Independent of this setting, the permissions of the selected
748 tun(4) device must allow access to the user. 717 tun(4) device must allow access to the user.
749 718
750 PermitTTY
751 Specifies whether pty(4) allocation is permitted. The default is
752 M-bM-^@M-^\yesM-bM-^@M-^].
753
754 PermitUserEnvironment 719 PermitUserEnvironment
755 Specifies whether ~/.ssh/environment and environment= options in 720 Specifies whether ~/.ssh/environment and environment= options in
756 ~/.ssh/authorized_keys are processed by sshd(8). The default is 721 ~/.ssh/authorized_keys are processed by sshd(8). The default is
757 M-bM-^@M-^\noM-bM-^@M-^]. Enabling environment processing may enable users to bypass 722 no. Enabling environment processing may enable users to bypass
758 access restrictions in some configurations using mechanisms such 723 access restrictions in some configurations using mechanisms such
759 as LD_PRELOAD. 724 as LD_PRELOAD.
760 725
761 PermitUserRC 726 PermitUserRC
762 Specifies whether any ~/.ssh/rc file is executed. The default is 727 Specifies whether any ~/.ssh/rc file is executed. The default is
763 M-bM-^@M-^\yesM-bM-^@M-^]. 728 yes.
764 729
765 PidFile 730 PidFile
766 Specifies the file that contains the process ID of the SSH 731 Specifies the file that contains the process ID of the SSH
767 daemon, or M-bM-^@M-^\noneM-bM-^@M-^] to not write one. The default is 732 daemon, or none to not write one. The default is
768 /var/run/sshd.pid. 733 /var/run/sshd.pid.
769 734
770 Port Specifies the port number that sshd(8) listens on. The default 735 Port Specifies the port number that sshd(8) listens on. The default
@@ -774,24 +739,12 @@ DESCRIPTION
774 PrintLastLog 739 PrintLastLog
775 Specifies whether sshd(8) should print the date and time of the 740 Specifies whether sshd(8) should print the date and time of the
776 last user login when a user logs in interactively. The default 741 last user login when a user logs in interactively. The default
777 is M-bM-^@M-^\yesM-bM-^@M-^]. 742 is yes.
778 743
779 PrintMotd 744 PrintMotd
780 Specifies whether sshd(8) should print /etc/motd when a user logs 745 Specifies whether sshd(8) should print /etc/motd when a user logs
781 in interactively. (On some systems it is also printed by the 746 in interactively. (On some systems it is also printed by the
782 shell, /etc/profile, or equivalent.) The default is M-bM-^@M-^\yesM-bM-^@M-^]. 747 shell, /etc/profile, or equivalent.) The default is yes.
783
784 Protocol
785 Specifies the protocol versions sshd(8) supports. The possible
786 values are M-bM-^@M-^X1M-bM-^@M-^Y and M-bM-^@M-^X2M-bM-^@M-^Y. Multiple versions must be comma-
787 separated. The default is M-bM-^@M-^X2M-bM-^@M-^Y. Protocol 1 suffers from a number
788 of cryptographic weaknesses and should not be used. It is only
789 offered to support legacy devices.
790
791 Note that the order of the protocol list does not indicate
792 preference, because the client selects among multiple protocol
793 versions offered by the server. Specifying M-bM-^@M-^\2,1M-bM-^@M-^] is identical to
794 M-bM-^@M-^\1,2M-bM-^@M-^].
795 748
796 PubkeyAcceptedKeyTypes 749 PubkeyAcceptedKeyTypes
797 Specifies the key types that will be accepted for public key 750 Specifies the key types that will be accepted for public key
@@ -808,11 +761,12 @@ DESCRIPTION
808 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, 761 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
809 ssh-ed25519,ssh-rsa 762 ssh-ed25519,ssh-rsa
810 763
811 The -Q option of ssh(1) may be used to list supported key types. 764 The list of available key types may also be obtained using "ssh
765 -Q key".
812 766
813 PubkeyAuthentication 767 PubkeyAuthentication
814 Specifies whether public key authentication is allowed. The 768 Specifies whether public key authentication is allowed. The
815 default is M-bM-^@M-^\yesM-bM-^@M-^]. 769 default is yes.
816 770
817 RekeyLimit 771 RekeyLimit
818 Specifies the maximum amount of data that may be transmitted 772 Specifies the maximum amount of data that may be transmitted
@@ -824,13 +778,13 @@ DESCRIPTION
824 M-bM-^@M-^X1GM-bM-^@M-^Y and M-bM-^@M-^X4GM-bM-^@M-^Y, depending on the cipher. The optional second 778 M-bM-^@M-^X1GM-bM-^@M-^Y and M-bM-^@M-^X4GM-bM-^@M-^Y, depending on the cipher. The optional second
825 value is specified in seconds and may use any of the units 779 value is specified in seconds and may use any of the units
826 documented in the TIME FORMATS section. The default value for 780 documented in the TIME FORMATS section. The default value for
827 RekeyLimit is M-bM-^@M-^\default noneM-bM-^@M-^], which means that rekeying is 781 RekeyLimit is default none, which means that rekeying is
828 performed after the cipher's default amount of data has been sent 782 performed after the cipher's default amount of data has been sent
829 or received and no time based rekeying is done. 783 or received and no time based rekeying is done.
830 784
831 RevokedKeys 785 RevokedKeys
832 Specifies revoked public keys file, or M-bM-^@M-^\noneM-bM-^@M-^] to not use one. 786 Specifies revoked public keys file, or none to not use one. Keys
833 Keys listed in this file will be refused for public key 787 listed in this file will be refused for public key
834 authentication. Note that if this file is not readable, then 788 authentication. Note that if this file is not readable, then
835 public key authentication will be refused for all users. Keys 789 public key authentication will be refused for all users. Keys
836 may be specified as a text file, listing one public key per line, 790 may be specified as a text file, listing one public key per line,
@@ -838,20 +792,6 @@ DESCRIPTION
838 ssh-keygen(1). For more information on KRLs, see the KEY 792 ssh-keygen(1). For more information on KRLs, see the KEY
839 REVOCATION LISTS section in ssh-keygen(1). 793 REVOCATION LISTS section in ssh-keygen(1).
840 794
841 RhostsRSAAuthentication
842 Specifies whether rhosts or /etc/hosts.equiv authentication
843 together with successful RSA host authentication is allowed. The
844 default is M-bM-^@M-^\noM-bM-^@M-^]. This option applies to protocol version 1 only.
845
846 RSAAuthentication
847 Specifies whether pure RSA authentication is allowed. The
848 default is M-bM-^@M-^\yesM-bM-^@M-^]. This option applies to protocol version 1
849 only.
850
851 ServerKeyBits
852 Defines the number of bits in the ephemeral protocol version 1
853 server key. The default and minimum value is 1024.
854
855 StreamLocalBindMask 795 StreamLocalBindMask
856 Sets the octal file creation mode mask (umask) used when creating 796 Sets the octal file creation mode mask (umask) used when creating
857 a Unix-domain socket file for local or remote port forwarding. 797 a Unix-domain socket file for local or remote port forwarding.
@@ -871,14 +811,14 @@ DESCRIPTION
871 domain socket file. This option is only used for port forwarding 811 domain socket file. This option is only used for port forwarding
872 to a Unix-domain socket file. 812 to a Unix-domain socket file.
873 813
874 The argument must be M-bM-^@M-^\yesM-bM-^@M-^] or M-bM-^@M-^\noM-bM-^@M-^]. The default is M-bM-^@M-^\noM-bM-^@M-^]. 814 The argument must be yes or no. The default is no.
875 815
876 StrictModes 816 StrictModes
877 Specifies whether sshd(8) should check file modes and ownership 817 Specifies whether sshd(8) should check file modes and ownership
878 of the user's files and home directory before accepting login. 818 of the user's files and home directory before accepting login.
879 This is normally desirable because novices sometimes accidentally 819 This is normally desirable because novices sometimes accidentally
880 leave their directory or files world-writable. The default is 820 leave their directory or files world-writable. The default is
881 M-bM-^@M-^\yesM-bM-^@M-^]. Note that this does not apply to ChrootDirectory, whose 821 yes. Note that this does not apply to ChrootDirectory, whose
882 permissions and ownership are checked unconditionally. 822 permissions and ownership are checked unconditionally.
883 823
884 Subsystem 824 Subsystem
@@ -886,12 +826,12 @@ DESCRIPTION
886 Arguments should be a subsystem name and a command (with optional 826 Arguments should be a subsystem name and a command (with optional
887 arguments) to execute upon subsystem request. 827 arguments) to execute upon subsystem request.
888 828
889 The command sftp-server(8) implements the M-bM-^@M-^\sftpM-bM-^@M-^] file transfer 829 The command sftp-server implements the SFTP file transfer
890 subsystem. 830 subsystem.
891 831
892 Alternately the name M-bM-^@M-^\internal-sftpM-bM-^@M-^] implements an in-process 832 Alternately the name internal-sftp implements an in-process SFTP
893 M-bM-^@M-^\sftpM-bM-^@M-^] server. This may simplify configurations using 833 server. This may simplify configurations using ChrootDirectory
894 ChrootDirectory to force a different filesystem root on clients. 834 to force a different filesystem root on clients.
895 835
896 By default no subsystems are defined. 836 By default no subsystems are defined.
897 837
@@ -908,23 +848,22 @@ DESCRIPTION
908 this means that connections will die if the route is down 848 this means that connections will die if the route is down
909 temporarily, and some people find it annoying. On the other 849 temporarily, and some people find it annoying. On the other
910 hand, if TCP keepalives are not sent, sessions may hang 850 hand, if TCP keepalives are not sent, sessions may hang
911 indefinitely on the server, leaving M-bM-^@M-^\ghostM-bM-^@M-^] users and consuming 851 indefinitely on the server, leaving "ghost" users and consuming
912 server resources. 852 server resources.
913 853
914 The default is M-bM-^@M-^\yesM-bM-^@M-^] (to send TCP keepalive messages), and the 854 The default is yes (to send TCP keepalive messages), and the
915 server will notice if the network goes down or the client host 855 server will notice if the network goes down or the client host
916 crashes. This avoids infinitely hanging sessions. 856 crashes. This avoids infinitely hanging sessions.
917 857
918 To disable TCP keepalive messages, the value should be set to 858 To disable TCP keepalive messages, the value should be set to no.
919 M-bM-^@M-^\noM-bM-^@M-^].
920 859
921 TrustedUserCAKeys 860 TrustedUserCAKeys
922 Specifies a file containing public keys of certificate 861 Specifies a file containing public keys of certificate
923 authorities that are trusted to sign user certificates for 862 authorities that are trusted to sign user certificates for
924 authentication, or M-bM-^@M-^\noneM-bM-^@M-^] to not use one. Keys are listed one 863 authentication, or none to not use one. Keys are listed one per
925 per line; empty lines and comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are allowed. 864 line; empty lines and comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are allowed. If
926 If a certificate is presented for authentication and has its 865 a certificate is presented for authentication and has its signing
927 signing CA key listed in this file, then it may be used for 866 CA key listed in this file, then it may be used for
928 authentication for any user listed in the certificate's 867 authentication for any user listed in the certificate's
929 principals list. Note that certificates that lack a list of 868 principals list. Note that certificates that lack a list of
930 principals will not be permitted for authentication using 869 principals will not be permitted for authentication using
@@ -935,20 +874,12 @@ DESCRIPTION
935 and to check that the resolved host name for the remote IP 874 and to check that the resolved host name for the remote IP
936 address maps back to the very same IP address. 875 address maps back to the very same IP address.
937 876
938 If this option is set to M-bM-^@M-^\noM-bM-^@M-^] (the default) then only addresses 877 If this option is set to no (the default) then only addresses and
939 and not host names may be used in ~/.ssh/authorized_keys from and 878 not host names may be used in ~/.ssh/authorized_keys from and
940 sshd_config Match Host directives. 879 sshd_config Match Host directives.
941 880
942 UseLogin
943 Specifies whether login(1) is used for interactive login
944 sessions. The default is M-bM-^@M-^\noM-bM-^@M-^]. Note that login(1) is never used
945 for remote command execution. Note also, that if this is
946 enabled, X11Forwarding will be disabled because login(1) does not
947 know how to handle xauth(1) cookies. If UsePrivilegeSeparation
948 is specified, it will be disabled after authentication.
949
950 UsePAM Enables the Pluggable Authentication Module interface. If set to 881 UsePAM Enables the Pluggable Authentication Module interface. If set to
951 M-bM-^@M-^\yesM-bM-^@M-^] this will enable PAM authentication using 882 yes this will enable PAM authentication using
952 ChallengeResponseAuthentication and PasswordAuthentication in 883 ChallengeResponseAuthentication and PasswordAuthentication in
953 addition to PAM account and session module processing for all 884 addition to PAM account and session module processing for all
954 authentication types. 885 authentication types.
@@ -958,7 +889,7 @@ DESCRIPTION
958 either PasswordAuthentication or ChallengeResponseAuthentication. 889 either PasswordAuthentication or ChallengeResponseAuthentication.
959 890
960 If UsePAM is enabled, you will not be able to run sshd(8) as a 891 If UsePAM is enabled, you will not be able to run sshd(8) as a
961 non-root user. The default is M-bM-^@M-^\noM-bM-^@M-^]. 892 non-root user. The default is no.
962 893
963 UsePrivilegeSeparation 894 UsePrivilegeSeparation
964 Specifies whether sshd(8) separates privileges by creating an 895 Specifies whether sshd(8) separates privileges by creating an
@@ -967,15 +898,15 @@ DESCRIPTION
967 that has the privilege of the authenticated user. The goal of 898 that has the privilege of the authenticated user. The goal of
968 privilege separation is to prevent privilege escalation by 899 privilege separation is to prevent privilege escalation by
969 containing any corruption within the unprivileged processes. The 900 containing any corruption within the unprivileged processes. The
970 argument must be M-bM-^@M-^\yesM-bM-^@M-^], M-bM-^@M-^\noM-bM-^@M-^], or M-bM-^@M-^\sandboxM-bM-^@M-^]. If 901 argument must be yes, no, or sandbox. If UsePrivilegeSeparation
971 UsePrivilegeSeparation is set to M-bM-^@M-^\sandboxM-bM-^@M-^] then the pre- 902 is set to sandbox then the pre-authentication unprivileged
972 authentication unprivileged process is subject to additional 903 process is subject to additional restrictions. The default is
973 restrictions. The default is M-bM-^@M-^\sandboxM-bM-^@M-^]. 904 sandbox.
974 905
975 VersionAddendum 906 VersionAddendum
976 Optionally specifies additional text to append to the SSH 907 Optionally specifies additional text to append to the SSH
977 protocol banner sent by the server upon connection. The default 908 protocol banner sent by the server upon connection. The default
978 is M-bM-^@M-^\noneM-bM-^@M-^]. 909 is none.
979 910
980 X11DisplayOffset 911 X11DisplayOffset
981 Specifies the first display number available for sshd(8)'s X11 912 Specifies the first display number available for sshd(8)'s X11
@@ -984,41 +915,39 @@ DESCRIPTION
984 915
985 X11Forwarding 916 X11Forwarding
986 Specifies whether X11 forwarding is permitted. The argument must 917 Specifies whether X11 forwarding is permitted. The argument must
987 be M-bM-^@M-^\yesM-bM-^@M-^] or M-bM-^@M-^\noM-bM-^@M-^]. The default is M-bM-^@M-^\noM-bM-^@M-^]. 918 be yes or no. The default is no.
988 919
989 When X11 forwarding is enabled, there may be additional exposure 920 When X11 forwarding is enabled, there may be additional exposure
990 to the server and to client displays if the sshd(8) proxy display 921 to the server and to client displays if the sshd(8) proxy display
991 is configured to listen on the wildcard address (see 922 is configured to listen on the wildcard address (see
992 X11UseLocalhost below), though this is not the default. 923 X11UseLocalhost), though this is not the default. Additionally,
993 Additionally, the authentication spoofing and authentication data 924 the authentication spoofing and authentication data verification
994 verification and substitution occur on the client side. The 925 and substitution occur on the client side. The security risk of
995 security risk of using X11 forwarding is that the client's X11 926 using X11 forwarding is that the client's X11 display server may
996 display server may be exposed to attack when the SSH client 927 be exposed to attack when the SSH client requests forwarding (see
997 requests forwarding (see the warnings for ForwardX11 in 928 the warnings for ForwardX11 in ssh_config(5)). A system
998 ssh_config(5)). A system administrator may have a stance in 929 administrator may have a stance in which they want to protect
999 which they want to protect clients that may expose themselves to 930 clients that may expose themselves to attack by unwittingly
1000 attack by unwittingly requesting X11 forwarding, which can 931 requesting X11 forwarding, which can warrant a no setting.
1001 warrant a M-bM-^@M-^\noM-bM-^@M-^] setting.
1002 932
1003 Note that disabling X11 forwarding does not prevent users from 933 Note that disabling X11 forwarding does not prevent users from
1004 forwarding X11 traffic, as users can always install their own 934 forwarding X11 traffic, as users can always install their own
1005 forwarders. X11 forwarding is automatically disabled if UseLogin 935 forwarders.
1006 is enabled.
1007 936
1008 X11UseLocalhost 937 X11UseLocalhost
1009 Specifies whether sshd(8) should bind the X11 forwarding server 938 Specifies whether sshd(8) should bind the X11 forwarding server
1010 to the loopback address or to the wildcard address. By default, 939 to the loopback address or to the wildcard address. By default,
1011 sshd binds the forwarding server to the loopback address and sets 940 sshd binds the forwarding server to the loopback address and sets
1012 the hostname part of the DISPLAY environment variable to 941 the hostname part of the DISPLAY environment variable to
1013 M-bM-^@M-^\localhostM-bM-^@M-^]. This prevents remote hosts from connecting to the 942 localhost. This prevents remote hosts from connecting to the
1014 proxy display. However, some older X11 clients may not function 943 proxy display. However, some older X11 clients may not function
1015 with this configuration. X11UseLocalhost may be set to M-bM-^@M-^\noM-bM-^@M-^] to 944 with this configuration. X11UseLocalhost may be set to no to
1016 specify that the forwarding server should be bound to the 945 specify that the forwarding server should be bound to the
1017 wildcard address. The argument must be M-bM-^@M-^\yesM-bM-^@M-^] or M-bM-^@M-^\noM-bM-^@M-^]. The 946 wildcard address. The argument must be yes or no. The default
1018 default is M-bM-^@M-^\yesM-bM-^@M-^]. 947 is yes.
1019 948
1020 XAuthLocation 949 XAuthLocation
1021 Specifies the full pathname of the xauth(1) program, or M-bM-^@M-^\noneM-bM-^@M-^] to 950 Specifies the full pathname of the xauth(1) program, or none to
1022 not use one. The default is /usr/X11R6/bin/xauth. 951 not use one. The default is /usr/X11R6/bin/xauth.
1023 952
1024TIME FORMATS 953TIME FORMATS
@@ -1043,6 +972,33 @@ TIME FORMATS
1043 10m 10 minutes 972 10m 10 minutes
1044 1h30m 1 hour 30 minutes (90 minutes) 973 1h30m 1 hour 30 minutes (90 minutes)
1045 974
975TOKENS
976 Arguments to some keywords can make use of tokens, which are expanded at
977 runtime:
978
979 %% A literal M-bM-^@M-^X%M-bM-^@M-^Y.
980 %F The fingerprint of the CA key.
981 %f The fingerprint of the key or certificate.
982 %h The home directory of the user.
983 %i The key ID in the certificate.
984 %K The base64-encoded CA key.
985 %k The base64-encoded key or certificate for authentication.
986 %s The serial number of the certificate.
987 %T The type of the CA key.
988 %t The key or certificate type.
989 %u The username.
990
991 AuthorizedKeysCommand accepts the tokens %%, %f, %h, %t, and %u.
992
993 AuthorizedKeysFile accepts the tokens %%, %h, and %u.
994
995 AuthorizedPrincipalsCommand accepts the tokens %%, %F, %f, %K, %k, %h,
996 %i, %s, %T, %t, and %u.
997
998 AuthorizedPrincipalsFile accepts the tokens %%, %h, and %u.
999
1000 ChrootDirectory accepts the tokens %%, %h, and %u.
1001
1046FILES 1002FILES
1047 /etc/ssh/sshd_config 1003 /etc/ssh/sshd_config
1048 Contains configuration data for sshd(8). This file should be 1004 Contains configuration data for sshd(8). This file should be
@@ -1050,7 +1006,7 @@ FILES
1050 necessary) that it be world-readable. 1006 necessary) that it be world-readable.
1051 1007
1052SEE ALSO 1008SEE ALSO
1053 sshd(8) 1009 sftp-server(8), sshd(8)
1054 1010
1055AUTHORS 1011AUTHORS
1056 OpenSSH is a derivative of the original and free ssh 1.2.12 release by 1012 OpenSSH is a derivative of the original and free ssh 1.2.12 release by
@@ -1060,4 +1016,4 @@ AUTHORS
1060 versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support 1016 versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support
1061 for privilege separation. 1017 for privilege separation.
1062 1018
1063OpenBSD 6.0 July 19, 2016 OpenBSD 6.0 1019OpenBSD 6.0 November 30, 2016 OpenBSD 6.0