diff options
Diffstat (limited to 'ssh_config.0')
-rw-r--r-- | ssh_config.0 | 465 |
1 files changed, 465 insertions, 0 deletions
diff --git a/ssh_config.0 b/ssh_config.0 new file mode 100644 index 000000000..4be1d7f3f --- /dev/null +++ b/ssh_config.0 | |||
@@ -0,0 +1,465 @@ | |||
1 | SSH_CONFIG(5) OpenBSD Programmer's Manual SSH_CONFIG(5) | ||
2 | |||
3 | NAME | ||
4 | ssh_config - OpenSSH SSH client configuration files | ||
5 | |||
6 | SYNOPSIS | ||
7 | $HOME/.ssh/config | ||
8 | /etc/ssh/ssh_config | ||
9 | |||
10 | DESCRIPTION | ||
11 | ssh obtains configuration data from the following sources in the follow- | ||
12 | ing order: | ||
13 | 1. command-line options | ||
14 | 2. user's configuration file ($HOME/.ssh/config) | ||
15 | 3. system-wide configuration file (/etc/ssh/ssh_config) | ||
16 | |||
17 | For each parameter, the first obtained value will be used. The configu- | ||
18 | ration files contain sections bracketed by ``Host'' specifications, and | ||
19 | that section is only applied for hosts that match one of the patterns | ||
20 | given in the specification. The matched host name is the one given on | ||
21 | the command line. | ||
22 | |||
23 | Since the first obtained value for each parameter is used, more host-spe- | ||
24 | cific declarations should be given near the beginning of the file, and | ||
25 | general defaults at the end. | ||
26 | |||
27 | The configuration file has the following format: | ||
28 | |||
29 | Empty lines and lines starting with `#' are comments. | ||
30 | |||
31 | Otherwise a line is of the format ``keyword arguments''. Configuration | ||
32 | options may be separated by whitespace or optional whitespace and exactly | ||
33 | one `='; the latter format is useful to avoid the need to quote whites- | ||
34 | pace when specifying configuration options using the ssh, scp and sftp -o | ||
35 | option. | ||
36 | |||
37 | The possible keywords and their meanings are as follows (note that key- | ||
38 | words are case-insensitive and arguments are case-sensitive): | ||
39 | |||
40 | Host Restricts the following declarations (up to the next Host key- | ||
41 | word) to be only for those hosts that match one of the patterns | ||
42 | given after the keyword. `*' and `?' can be used as wildcards in | ||
43 | the patterns. A single `*' as a pattern can be used to provide | ||
44 | global defaults for all hosts. The host is the hostname argument | ||
45 | given on the command line (i.e., the name is not converted to a | ||
46 | canonicalized host name before matching). | ||
47 | |||
48 | AddressFamily | ||
49 | Specifies which address family to use when connecting. Valid ar- | ||
50 | guments are ``any'', ``inet'' (Use IPv4 only) or ``inet6'' (Use | ||
51 | IPv6 only.) | ||
52 | |||
53 | BatchMode | ||
54 | If set to ``yes'', passphrase/password querying will be disabled. | ||
55 | This option is useful in scripts and other batch jobs where no | ||
56 | user is present to supply the password. The argument must be | ||
57 | ``yes'' or ``no''. The default is ``no''. | ||
58 | |||
59 | BindAddress | ||
60 | Specify the interface to transmit from on machines with multiple | ||
61 | interfaces or aliased addresses. Note that this option does not | ||
62 | work if UsePrivilegedPort is set to ``yes''. | ||
63 | |||
64 | ChallengeResponseAuthentication | ||
65 | Specifies whether to use challenge response authentication. The | ||
66 | argument to this keyword must be ``yes'' or ``no''. The default | ||
67 | is ``yes''. | ||
68 | |||
69 | CheckHostIP | ||
70 | If this flag is set to ``yes'', ssh will additionally check the | ||
71 | host IP address in the known_hosts file. This allows ssh to de- | ||
72 | tect if a host key changed due to DNS spoofing. If the option is | ||
73 | set to ``no'', the check will not be executed. The default is | ||
74 | ``yes''. | ||
75 | |||
76 | Cipher Specifies the cipher to use for encrypting the session in proto- | ||
77 | col version 1. Currently, ``blowfish'', ``3des'', and ``des'' | ||
78 | are supported. des is only supported in the ssh client for in- | ||
79 | teroperability with legacy protocol 1 implementations that do not | ||
80 | support the 3des cipher. Its use is strongly discouraged due to | ||
81 | cryptographic weaknesses. The default is ``3des''. | ||
82 | |||
83 | Ciphers | ||
84 | Specifies the ciphers allowed for protocol version 2 in order of | ||
85 | preference. Multiple ciphers must be comma-separated. The de- | ||
86 | fault is | ||
87 | |||
88 | ``aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour, | ||
89 | aes192-cbc,aes256-cbc'' | ||
90 | |||
91 | ClearAllForwardings | ||
92 | Specifies that all local, remote and dynamic port forwardings | ||
93 | specified in the configuration files or on the command line be | ||
94 | cleared. This option is primarily useful when used from the ssh | ||
95 | command line to clear port forwardings set in configuration | ||
96 | files, and is automatically set by scp(1) and sftp(1). The argu- | ||
97 | ment must be ``yes'' or ``no''. The default is ``no''. | ||
98 | |||
99 | Compression | ||
100 | Specifies whether to use compression. The argument must be | ||
101 | ``yes'' or ``no''. The default is ``no''. | ||
102 | |||
103 | CompressionLevel | ||
104 | Specifies the compression level to use if compression is enabled. | ||
105 | The argument must be an integer from 1 (fast) to 9 (slow, best). | ||
106 | The default level is 6, which is good for most applications. The | ||
107 | meaning of the values is the same as in gzip(1). Note that this | ||
108 | option applies to protocol version 1 only. | ||
109 | |||
110 | ConnectionAttempts | ||
111 | Specifies the number of tries (one per second) to make before ex- | ||
112 | iting. The argument must be an integer. This may be useful in | ||
113 | scripts if the connection sometimes fails. The default is 1. | ||
114 | |||
115 | ConnectTimeout | ||
116 | Specifies the timeout (in seconds) used when connecting to the | ||
117 | ssh server, instead of using the default system TCP timeout. | ||
118 | This value is used only when the target is down or really un- | ||
119 | reachable, not when it refuses the connection. | ||
120 | |||
121 | DynamicForward | ||
122 | Specifies that a TCP/IP port on the local machine be forwarded | ||
123 | over the secure channel, and the application protocol is then | ||
124 | used to determine where to connect to from the remote machine. | ||
125 | The argument must be a port number. Currently the SOCKS4 and | ||
126 | SOCKS5 protocols are supported, and ssh will act as a SOCKS serv- | ||
127 | er. Multiple forwardings may be specified, and additional for- | ||
128 | wardings can be given on the command line. Only the superuser | ||
129 | can forward privileged ports. | ||
130 | |||
131 | EnableSSHKeysign | ||
132 | Setting this option to ``yes'' in the global client configuration | ||
133 | file /etc/ssh/ssh_config enables the use of the helper program | ||
134 | ssh-keysign(8) during HostbasedAuthentication. The argument must | ||
135 | be ``yes'' or ``no''. The default is ``no''. This option should | ||
136 | be placed in the non-hostspecific section. See ssh-keysign(8) | ||
137 | for more information. | ||
138 | |||
139 | EscapeChar | ||
140 | Sets the escape character (default: `~'). The escape character | ||
141 | can also be set on the command line. The argument should be a | ||
142 | single character, `^' followed by a letter, or ``none'' to dis- | ||
143 | able the escape character entirely (making the connection trans- | ||
144 | parent for binary data). | ||
145 | |||
146 | ForwardAgent | ||
147 | Specifies whether the connection to the authentication agent (if | ||
148 | any) will be forwarded to the remote machine. The argument must | ||
149 | be ``yes'' or ``no''. The default is ``no''. | ||
150 | |||
151 | Agent forwarding should be enabled with caution. Users with the | ||
152 | ability to bypass file permissions on the remote host (for the | ||
153 | agent's Unix-domain socket) can access the local agent through | ||
154 | the forwarded connection. An attacker cannot obtain key material | ||
155 | from the agent, however they can perform operations on the keys | ||
156 | that enable them to authenticate using the identities loaded into | ||
157 | the agent. | ||
158 | |||
159 | ForwardX11 | ||
160 | Specifies whether X11 connections will be automatically redirect- | ||
161 | ed over the secure channel and DISPLAY set. The argument must be | ||
162 | ``yes'' or ``no''. The default is ``no''. | ||
163 | |||
164 | X11 forwarding should be enabled with caution. Users with the | ||
165 | ability to bypass file permissions on the remote host (for the | ||
166 | user's X11 authorization database) can access the local X11 dis- | ||
167 | play through the forwarded connection. An attacker may then be | ||
168 | able to perform activities such as keystroke monitoring if the | ||
169 | ForwardX11Trusted option is also enabled. | ||
170 | |||
171 | ForwardX11Trusted | ||
172 | If the this option is set to ``yes'' then remote X11 clients will | ||
173 | have full access to the original X11 display. If this option is | ||
174 | set to ``no'' then remote X11 clients will be considered untrust- | ||
175 | ed and prevented from stealing or tampering with data belonging | ||
176 | to trusted X11 clients. | ||
177 | |||
178 | The default is ``no''. | ||
179 | |||
180 | See the X11 SECURITY extension specification for full details on | ||
181 | the restrictions imposed on untrusted clients. | ||
182 | |||
183 | GatewayPorts | ||
184 | Specifies whether remote hosts are allowed to connect to local | ||
185 | forwarded ports. By default, ssh binds local port forwardings to | ||
186 | the loopback address. This prevents other remote hosts from con- | ||
187 | necting to forwarded ports. GatewayPorts can be used to specify | ||
188 | that ssh should bind local port forwardings to the wildcard ad- | ||
189 | dress, thus allowing remote hosts to connect to forwarded ports. | ||
190 | The argument must be ``yes'' or ``no''. The default is ``no''. | ||
191 | |||
192 | GlobalKnownHostsFile | ||
193 | Specifies a file to use for the global host key database instead | ||
194 | of /etc/ssh/ssh_known_hosts. | ||
195 | |||
196 | GSSAPIAuthentication | ||
197 | Specifies whether user authentication based on GSSAPI is allowed. | ||
198 | The default is ``no''. Note that this option applies to protocol | ||
199 | version 2 only. | ||
200 | |||
201 | GSSAPIDelegateCredentials | ||
202 | Forward (delegate) credentials to the server. The default is | ||
203 | ``no''. Note that this option applies to protocol version 2 on- | ||
204 | ly. | ||
205 | |||
206 | HostbasedAuthentication | ||
207 | Specifies whether to try rhosts based authentication with public | ||
208 | key authentication. The argument must be ``yes'' or ``no''. The | ||
209 | default is ``no''. This option applies to protocol version 2 on- | ||
210 | ly and is similar to RhostsRSAAuthentication. | ||
211 | |||
212 | HostKeyAlgorithms | ||
213 | Specifies the protocol version 2 host key algorithms that the | ||
214 | client wants to use in order of preference. The default for this | ||
215 | option is: ``ssh-rsa,ssh-dss''. | ||
216 | |||
217 | HostKeyAlias | ||
218 | Specifies an alias that should be used instead of the real host | ||
219 | name when looking up or saving the host key in the host key | ||
220 | database files. This option is useful for tunneling ssh connec- | ||
221 | tions or for multiple servers running on a single host. | ||
222 | |||
223 | HostName | ||
224 | Specifies the real host name to log into. This can be used to | ||
225 | specify nicknames or abbreviations for hosts. Default is the | ||
226 | name given on the command line. Numeric IP addresses are also | ||
227 | permitted (both on the command line and in HostName specifica- | ||
228 | tions). | ||
229 | |||
230 | IdentityFile | ||
231 | Specifies a file from which the user's RSA or DSA authentication | ||
232 | identity is read. The default is $HOME/.ssh/identity for proto- | ||
233 | col version 1, and $HOME/.ssh/id_rsa and $HOME/.ssh/id_dsa for | ||
234 | protocol version 2. Additionally, any identities represented by | ||
235 | the authentication agent will be used for authentication. The | ||
236 | file name may use the tilde syntax to refer to a user's home di- | ||
237 | rectory. It is possible to have multiple identity files speci- | ||
238 | fied in configuration files; all these identities will be tried | ||
239 | in sequence. | ||
240 | |||
241 | IdentitiesOnly | ||
242 | Specifies that ssh should only use the authentication identity | ||
243 | files configured in the ssh_config files, even if the ssh-agent | ||
244 | offers more identities. The argument to this keyword must be | ||
245 | ``yes'' or ``no''. This option is intented for situations where | ||
246 | ssh-agent offers many different identities. The default is | ||
247 | ``no''. | ||
248 | |||
249 | LocalForward | ||
250 | Specifies that a TCP/IP port on the local machine be forwarded | ||
251 | over the secure channel to the specified host and port from the | ||
252 | remote machine. The first argument must be a port number, and | ||
253 | the second must be host:port. IPv6 addresses can be specified | ||
254 | with an alternative syntax: host/port. Multiple forwardings may | ||
255 | be specified, and additional forwardings can be given on the com- | ||
256 | mand line. Only the superuser can forward privileged ports. | ||
257 | |||
258 | LogLevel | ||
259 | Gives the verbosity level that is used when logging messages from | ||
260 | ssh. The possible values are: QUIET, FATAL, ERROR, INFO, VER- | ||
261 | BOSE, DEBUG, DEBUG1, DEBUG2 and DEBUG3. The default is INFO. | ||
262 | DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify | ||
263 | higher levels of verbose output. | ||
264 | |||
265 | MACs Specifies the MAC (message authentication code) algorithms in or- | ||
266 | der of preference. The MAC algorithm is used in protocol version | ||
267 | 2 for data integrity protection. Multiple algorithms must be | ||
268 | comma-separated. The default is ``hmac-md5,hmac-sha1,hmac- | ||
269 | ripemd160,hmac-sha1-96,hmac-md5-96''. | ||
270 | |||
271 | NoHostAuthenticationForLocalhost | ||
272 | This option can be used if the home directory is shared across | ||
273 | machines. In this case localhost will refer to a different ma- | ||
274 | chine on each of the machines and the user will get many warnings | ||
275 | about changed host keys. However, this option disables host au- | ||
276 | thentication for localhost. The argument to this keyword must be | ||
277 | ``yes'' or ``no''. The default is to check the host key for lo- | ||
278 | calhost. | ||
279 | |||
280 | NumberOfPasswordPrompts | ||
281 | Specifies the number of password prompts before giving up. The | ||
282 | argument to this keyword must be an integer. Default is 3. | ||
283 | |||
284 | PasswordAuthentication | ||
285 | Specifies whether to use password authentication. The argument | ||
286 | to this keyword must be ``yes'' or ``no''. The default is | ||
287 | ``yes''. | ||
288 | |||
289 | Port Specifies the port number to connect on the remote host. Default | ||
290 | is 22. | ||
291 | |||
292 | PreferredAuthentications | ||
293 | Specifies the order in which the client should try protocol 2 au- | ||
294 | thentication methods. This allows a client to prefer one method | ||
295 | (e.g. keyboard-interactive) over another method (e.g. password) | ||
296 | The default for this option is: ``hostbased,publickey,keyboard- | ||
297 | interactive,password''. | ||
298 | |||
299 | Protocol | ||
300 | Specifies the protocol versions ssh should support in order of | ||
301 | preference. The possible values are ``1'' and ``2''. Multiple | ||
302 | versions must be comma-separated. The default is ``2,1''. This | ||
303 | means that ssh tries version 2 and falls back to version 1 if | ||
304 | version 2 is not available. | ||
305 | |||
306 | ProxyCommand | ||
307 | Specifies the command to use to connect to the server. The com- | ||
308 | mand string extends to the end of the line, and is executed with | ||
309 | /bin/sh. In the command string, `%h' will be substituted by the | ||
310 | host name to connect and `%p' by the port. The command can be | ||
311 | basically anything, and should read from its standard input and | ||
312 | write to its standard output. It should eventually connect an | ||
313 | sshd(8) server running on some machine, or execute sshd -i some- | ||
314 | where. Host key management will be done using the HostName of | ||
315 | the host being connected (defaulting to the name typed by the us- | ||
316 | er). Setting the command to ``none'' disables this option en- | ||
317 | tirely. Note that CheckHostIP is not available for connects with | ||
318 | a proxy command. | ||
319 | |||
320 | PubkeyAuthentication | ||
321 | Specifies whether to try public key authentication. The argument | ||
322 | to this keyword must be ``yes'' or ``no''. The default is | ||
323 | ``yes''. This option applies to protocol version 2 only. | ||
324 | |||
325 | RemoteForward | ||
326 | Specifies that a TCP/IP port on the remote machine be forwarded | ||
327 | over the secure channel to the specified host and port from the | ||
328 | local machine. The first argument must be a port number, and the | ||
329 | second must be host:port. IPv6 addresses can be specified with | ||
330 | an alternative syntax: host/port. Multiple forwardings may be | ||
331 | specified, and additional forwardings can be given on the command | ||
332 | line. Only the superuser can forward privileged ports. | ||
333 | |||
334 | RhostsRSAAuthentication | ||
335 | Specifies whether to try rhosts based authentication with RSA | ||
336 | host authentication. The argument must be ``yes'' or ``no''. | ||
337 | The default is ``no''. This option applies to protocol version 1 | ||
338 | only and requires ssh to be setuid root. | ||
339 | |||
340 | RSAAuthentication | ||
341 | Specifies whether to try RSA authentication. The argument to | ||
342 | this keyword must be ``yes'' or ``no''. RSA authentication will | ||
343 | only be attempted if the identity file exists, or an authentica- | ||
344 | tion agent is running. The default is ``yes''. Note that this | ||
345 | option applies to protocol version 1 only. | ||
346 | |||
347 | ServerAliveInterval | ||
348 | Sets a timeout interval in seconds after which if no data has | ||
349 | been received from the server, ssh will send a message through | ||
350 | the encrypted channel to request a response from the server. The | ||
351 | default is 0, indicating that these messages will not be sent to | ||
352 | the server. This option applies to protocol version 2 only. | ||
353 | |||
354 | ServerAliveCountMax | ||
355 | Sets the number of server alive messages (see above) which may be | ||
356 | sent without ssh receiving any messages back from the server. If | ||
357 | this threshold is reached while server alive messages are being | ||
358 | sent, ssh will disconnect from the server, terminating the ses- | ||
359 | sion. It is important to note that the use of server alive mes- | ||
360 | sages is very different from TCPKeepAlive (below). The server | ||
361 | alive messages are sent through the encrypted channel and there- | ||
362 | fore will not be spoofable. The TCP keepalive option enabled by | ||
363 | TCPKeepAlive is spoofable. The server alive mechanism is valu- | ||
364 | able when the client or server depend on knowing when a connec- | ||
365 | tion has become inactive. | ||
366 | |||
367 | The default value is 3. If, for example, ServerAliveInterval | ||
368 | (above) is set to 15, and ServerAliveCountMax is left at the de- | ||
369 | fault, if the server becomes unresponsive ssh will disconnect af- | ||
370 | ter approximately 45 seconds. | ||
371 | |||
372 | SmartcardDevice | ||
373 | Specifies which smartcard device to use. The argument to this | ||
374 | keyword is the device ssh should use to communicate with a smart- | ||
375 | card used for storing the user's private RSA key. By default, no | ||
376 | device is specified and smartcard support is not activated. | ||
377 | |||
378 | StrictHostKeyChecking | ||
379 | If this flag is set to ``yes'', ssh will never automatically add | ||
380 | host keys to the $HOME/.ssh/known_hosts file, and refuses to con- | ||
381 | nect to hosts whose host key has changed. This provides maximum | ||
382 | protection against trojan horse attacks, however, can be annoying | ||
383 | when the /etc/ssh/ssh_known_hosts file is poorly maintained, or | ||
384 | connections to new hosts are frequently made. This option forces | ||
385 | the user to manually add all new hosts. If this flag is set to | ||
386 | ``no'', ssh will automatically add new host keys to the user | ||
387 | known hosts files. If this flag is set to ``ask'', new host keys | ||
388 | will be added to the user known host files only after the user | ||
389 | has confirmed that is what they really want to do, and ssh will | ||
390 | refuse to connect to hosts whose host key has changed. The host | ||
391 | keys of known hosts will be verified automatically in all cases. | ||
392 | The argument must be ``yes'', ``no'' or ``ask''. The default is | ||
393 | ``ask''. | ||
394 | |||
395 | TCPKeepAlive | ||
396 | Specifies whether the system should send TCP keepalive messages | ||
397 | to the other side. If they are sent, death of the connection or | ||
398 | crash of one of the machines will be properly noticed. However, | ||
399 | this means that connections will die if the route is down tem- | ||
400 | porarily, and some people find it annoying. | ||
401 | |||
402 | The default is ``yes'' (to send TCP keepalive messages), and the | ||
403 | client will notice if the network goes down or the remote host | ||
404 | dies. This is important in scripts, and many users want it too. | ||
405 | |||
406 | To disable TCP keepalive messages, the value should be set to | ||
407 | ``no''. | ||
408 | |||
409 | UsePrivilegedPort | ||
410 | Specifies whether to use a privileged port for outgoing connec- | ||
411 | tions. The argument must be ``yes'' or ``no''. The default is | ||
412 | ``no''. If set to ``yes'' ssh must be setuid root. Note that | ||
413 | this option must be set to ``yes'' for RhostsRSAAuthentication | ||
414 | with older servers. | ||
415 | |||
416 | User Specifies the user to log in as. This can be useful when a dif- | ||
417 | ferent user name is used on different machines. This saves the | ||
418 | trouble of having to remember to give the user name on the com- | ||
419 | mand line. | ||
420 | |||
421 | UserKnownHostsFile | ||
422 | Specifies a file to use for the user host key database instead of | ||
423 | $HOME/.ssh/known_hosts. | ||
424 | |||
425 | VerifyHostKeyDNS | ||
426 | Specifies whether to verify the remote key using DNS and SSHFP | ||
427 | resource records. If this option is set to ``yes'', the client | ||
428 | will implicitly trust keys that match a secure fingerprint from | ||
429 | DNS. Insecure fingerprints will be handled as if this option was | ||
430 | set to ``ask''. If this option is set to ``ask'', information on | ||
431 | fingerprint match will be displayed, but the user will still need | ||
432 | to confirm new host keys according to the StrictHostKeyChecking | ||
433 | option. The argument must be ``yes'', ``no'' or ``ask''. The | ||
434 | default is ``no''. Note that this option applies to protocol | ||
435 | version 2 only. | ||
436 | |||
437 | XAuthLocation | ||
438 | Specifies the full pathname of the xauth(1) program. The default | ||
439 | is /usr/X11R6/bin/xauth. | ||
440 | |||
441 | FILES | ||
442 | $HOME/.ssh/config | ||
443 | This is the per-user configuration file. The format of this file | ||
444 | is described above. This file is used by the ssh client. This | ||
445 | file does not usually contain any sensitive information, but the | ||
446 | recommended permissions are read/write for the user, and not ac- | ||
447 | cessible by others. | ||
448 | |||
449 | /etc/ssh/ssh_config | ||
450 | Systemwide configuration file. This file provides defaults for | ||
451 | those values that are not specified in the user's configuration | ||
452 | file, and for those users who do not have a configuration file. | ||
453 | This file must be world-readable. | ||
454 | |||
455 | SEE ALSO | ||
456 | ssh(1) | ||
457 | |||
458 | AUTHORS | ||
459 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
460 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
461 | de Raadt and Dug Song removed many bugs, re-added newer features and cre- | ||
462 | ated OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
463 | versions 1.5 and 2.0. | ||
464 | |||
465 | OpenBSD 3.5 September 25, 1999 8 | ||