ssh_config.0 revision 197670
1SSH_CONFIG(5) OpenBSD Programmer's Manual SSH_CONFIG(5) 2 3NAME 4 ssh_config - OpenSSH SSH client configuration files 5 6SYNOPSIS 7 ~/.ssh/config 8 /etc/ssh/ssh_config 9 10DESCRIPTION 11 ssh(1) obtains configuration data from the following sources in the fol- 12 lowing order: 13 14 1. command-line options 15 2. user's configuration file (~/.ssh/config) 16 3. system-wide configuration file (/etc/ssh/ssh_config) 17 18 For each parameter, the first obtained value will be used. The configu- 19 ration files contain sections separated by ``Host'' specifications, and 20 that section is only applied for hosts that match one of the patterns 21 given in the specification. The matched host name is the one given on 22 the command line. 23 24 Since the first obtained value for each parameter is used, more host-spe- 25 cific declarations should be given near the beginning of the file, and 26 general defaults at the end. 27 28 The configuration file has the following format: 29 30 Empty lines and lines starting with `#' are comments. Otherwise a line 31 is of the format ``keyword arguments''. Configuration options may be 32 separated by whitespace or optional whitespace and exactly one `='; the 33 latter format is useful to avoid the need to quote whitespace when speci- 34 fying configuration options using the ssh, scp, and sftp -o option. Ar- 35 guments may optionally be enclosed in double quotes (") in order to rep- 36 resent arguments containing spaces. 37 38 The possible keywords and their meanings are as follows (note that key- 39 words are case-insensitive and arguments are case-sensitive): 40 41 Host Restricts the following declarations (up to the next Host key- 42 word) to be only for those hosts that match one of the patterns 43 given after the keyword. If more than one pattern is provided, 44 they should be separated by whitespace. A single `*' as a pat- 45 tern can be used to provide global defaults for all hosts. The 46 host is the hostname argument given on the command line (i.e. the 47 name is not converted to a canonicalized host name before match- 48 ing). 49 50 See PATTERNS for more information on patterns. 51 52 AddressFamily 53 Specifies which address family to use when connecting. Valid ar- 54 guments are ``any'', ``inet'' (use IPv4 only), or ``inet6'' (use 55 IPv6 only). 56 57 BatchMode 58 If set to ``yes'', passphrase/password querying will be disabled. 59 This option is useful in scripts and other batch jobs where no 60 user is present to supply the password. The argument must be 61 ``yes'' or ``no''. The default is ``no''. 62 63 BindAddress 64 Use the specified address on the local machine as the source ad- 65 dress of the connection. Only useful on systems with more than 66 one address. Note that this option does not work if 67 UsePrivilegedPort is set to ``yes''. 68 69 ChallengeResponseAuthentication 70 Specifies whether to use challenge-response authentication. The 71 argument to this keyword must be ``yes'' or ``no''. The default 72 is ``yes''. 73 74 CheckHostIP 75 If this flag is set to ``yes'', ssh(1) will additionally check 76 the host IP address in the known_hosts file. This allows ssh to 77 detect if a host key changed due to DNS spoofing. If the option 78 is set to ``no'', the check will not be executed. The default is 79 ``yes''. 80 81 Cipher Specifies the cipher to use for encrypting the session in proto- 82 col version 1. Currently, ``blowfish'', ``3des'', and ``des'' 83 are supported. des is only supported in the ssh(1) client for 84 interoperability with legacy protocol 1 implementations that do 85 not support the 3des cipher. Its use is strongly discouraged due 86 to cryptographic weaknesses. The default is ``3des''. 87 88 Ciphers 89 Specifies the ciphers allowed for protocol version 2 in order of 90 preference. Multiple ciphers must be comma-separated. The sup- 91 ported ciphers are ``3des-cbc'', ``aes128-cbc'', ``aes192-cbc'', 92 ``aes256-cbc'', ``aes128-ctr'', ``aes192-ctr'', ``aes256-ctr'', 93 ``arcfour128'', ``arcfour256'', ``arcfour'', ``blowfish-cbc'', 94 and ``cast128-cbc''. The default is: 95 96 aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128, 97 aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc, 98 aes256-cbc,arcfour 99 100 ClearAllForwardings 101 Specifies that all local, remote, and dynamic port forwardings 102 specified in the configuration files or on the command line be 103 cleared. This option is primarily useful when used from the 104 ssh(1) command line to clear port forwardings set in configura- 105 tion files, and is automatically set by scp(1) and sftp(1). The 106 argument must be ``yes'' or ``no''. The default is ``no''. 107 108 Compression 109 Specifies whether to use compression. The argument must be 110 ``yes'' or ``no''. The default is ``no''. 111 112 CompressionLevel 113 Specifies the compression level to use if compression is enabled. 114 The argument must be an integer from 1 (fast) to 9 (slow, best). 115 The default level is 6, which is good for most applications. The 116 meaning of the values is the same as in gzip(1). Note that this 117 option applies to protocol version 1 only. 118 119 ConnectionAttempts 120 Specifies the number of tries (one per second) to make before ex- 121 iting. The argument must be an integer. This may be useful in 122 scripts if the connection sometimes fails. The default is 1. 123 124 ConnectTimeout 125 Specifies the timeout (in seconds) used when connecting to the 126 SSH server, instead of using the default system TCP timeout. 127 This value is used only when the target is down or really un- 128 reachable, not when it refuses the connection. 129 130 ControlMaster 131 Enables the sharing of multiple sessions over a single network 132 connection. When set to ``yes'', ssh(1) will listen for connec- 133 tions on a control socket specified using the ControlPath argu- 134 ment. Additional sessions can connect to this socket using the 135 same ControlPath with ControlMaster set to ``no'' (the default). 136 These sessions will try to reuse the master instance's network 137 connection rather than initiating new ones, but will fall back to 138 connecting normally if the control socket does not exist, or is 139 not listening. 140 141 Setting this to ``ask'' will cause ssh to listen for control con- 142 nections, but require confirmation using the SSH_ASKPASS program 143 before they are accepted (see ssh-add(1) for details). If the 144 ControlPath cannot be opened, ssh will continue without connect- 145 ing to a master instance. 146 147 X11 and ssh-agent(1) forwarding is supported over these multi- 148 plexed connections, however the display and agent forwarded will 149 be the one belonging to the master connection i.e. it is not pos- 150 sible to forward multiple displays or agents. 151 152 Two additional options allow for opportunistic multiplexing: try 153 to use a master connection but fall back to creating a new one if 154 one does not already exist. These options are: ``auto'' and 155 ``autoask''. The latter requires confirmation like the ``ask'' 156 option. 157 158 ControlPath 159 Specify the path to the control socket used for connection shar- 160 ing as described in the ControlMaster section above or the string 161 ``none'' to disable connection sharing. In the path, `%l' will 162 be substituted by the local host name, `%h' will be substituted 163 by the target host name, `%p' the port, and `%r' by the remote 164 login username. It is recommended that any ControlPath used for 165 opportunistic connection sharing include at least %h, %p, and %r. 166 This ensures that shared connections are uniquely identified. 167 168 DynamicForward 169 Specifies that a TCP port on the local machine be forwarded over 170 the secure channel, and the application protocol is then used to 171 determine where to connect to from the remote machine. 172 173 The argument must be [bind_address:]port. IPv6 addresses can be 174 specified by enclosing addresses in square brackets or by using 175 an alternative syntax: [bind_address/]port. By default, the lo- 176 cal port is bound in accordance with the GatewayPorts setting. 177 However, an explicit bind_address may be used to bind the connec- 178 tion to a specific address. The bind_address of ``localhost'' 179 indicates that the listening port be bound for local use only, 180 while an empty address or `*' indicates that the port should be 181 available from all interfaces. 182 183 Currently the SOCKS4 and SOCKS5 protocols are supported, and 184 ssh(1) will act as a SOCKS server. Multiple forwardings may be 185 specified, and additional forwardings can be given on the command 186 line. Only the superuser can forward privileged ports. 187 188 EnableSSHKeysign 189 Setting this option to ``yes'' in the global client configuration 190 file /etc/ssh/ssh_config enables the use of the helper program 191 ssh-keysign(8) during HostbasedAuthentication. The argument must 192 be ``yes'' or ``no''. The default is ``no''. This option should 193 be placed in the non-hostspecific section. See ssh-keysign(8) 194 for more information. 195 196 EscapeChar 197 Sets the escape character (default: `~'). The escape character 198 can also be set on the command line. The argument should be a 199 single character, `^' followed by a letter, or ``none'' to dis- 200 able the escape character entirely (making the connection trans- 201 parent for binary data). 202 203 ExitOnForwardFailure 204 Specifies whether ssh(1) should terminate the connection if it 205 cannot set up all requested dynamic, tunnel, local, and remote 206 port forwardings. The argument must be ``yes'' or ``no''. The 207 default is ``no''. 208 209 ForwardAgent 210 Specifies whether the connection to the authentication agent (if 211 any) will be forwarded to the remote machine. The argument must 212 be ``yes'' or ``no''. The default is ``no''. 213 214 Agent forwarding should be enabled with caution. Users with the 215 ability to bypass file permissions on the remote host (for the 216 agent's Unix-domain socket) can access the local agent through 217 the forwarded connection. An attacker cannot obtain key material 218 from the agent, however they can perform operations on the keys 219 that enable them to authenticate using the identities loaded into 220 the agent. 221 222 ForwardX11 223 Specifies whether X11 connections will be automatically redirect- 224 ed over the secure channel and DISPLAY set. The argument must be 225 ``yes'' or ``no''. The default is ``no''. 226 227 X11 forwarding should be enabled with caution. Users with the 228 ability to bypass file permissions on the remote host (for the 229 user's X11 authorization database) can access the local X11 dis- 230 play through the forwarded connection. An attacker may then be 231 able to perform activities such as keystroke monitoring if the 232 ForwardX11Trusted option is also enabled. 233 234 ForwardX11Trusted 235 If this option is set to ``yes'', remote X11 clients will have 236 full access to the original X11 display. 237 238 If this option is set to ``no'', remote X11 clients will be con- 239 sidered untrusted and prevented from stealing or tampering with 240 data belonging to trusted X11 clients. Furthermore, the xauth(1) 241 token used for the session will be set to expire after 20 min- 242 utes. Remote clients will be refused access after this time. 243 244 The default is ``no''. 245 246 See the X11 SECURITY extension specification for full details on 247 the restrictions imposed on untrusted clients. 248 249 GatewayPorts 250 Specifies whether remote hosts are allowed to connect to local 251 forwarded ports. By default, ssh(1) binds local port forwardings 252 to the loopback address. This prevents other remote hosts from 253 connecting to forwarded ports. GatewayPorts can be used to spec- 254 ify that ssh should bind local port forwardings to the wildcard 255 address, thus allowing remote hosts to connect to forwarded 256 ports. The argument must be ``yes'' or ``no''. The default is 257 ``no''. 258 259 GlobalKnownHostsFile 260 Specifies a file to use for the global host key database instead 261 of /etc/ssh/ssh_known_hosts. 262 263 GSSAPIAuthentication 264 Specifies whether user authentication based on GSSAPI is allowed. 265 The default is ``no''. Note that this option applies to protocol 266 version 2 only. 267 268 GSSAPIDelegateCredentials 269 Forward (delegate) credentials to the server. The default is 270 ``no''. Note that this option applies to protocol version 2 on- 271 ly. 272 273 HashKnownHosts 274 Indicates that ssh(1) should hash host names and addresses when 275 they are added to ~/.ssh/known_hosts. These hashed names may be 276 used normally by ssh(1) and sshd(8), but they do not reveal iden- 277 tifying information should the file's contents be disclosed. The 278 default is ``no''. Note that existing names and addresses in 279 known hosts files will not be converted automatically, but may be 280 manually hashed using ssh-keygen(1). 281 282 HostbasedAuthentication 283 Specifies whether to try rhosts based authentication with public 284 key authentication. The argument must be ``yes'' or ``no''. The 285 default is ``no''. This option applies to protocol version 2 on- 286 ly and is similar to RhostsRSAAuthentication. 287 288 HostKeyAlgorithms 289 Specifies the protocol version 2 host key algorithms that the 290 client wants to use in order of preference. The default for this 291 option is: ``ssh-rsa,ssh-dss''. 292 293 HostKeyAlias 294 Specifies an alias that should be used instead of the real host 295 name when looking up or saving the host key in the host key 296 database files. This option is useful for tunneling SSH connec- 297 tions or for multiple servers running on a single host. 298 299 HostName 300 Specifies the real host name to log into. This can be used to 301 specify nicknames or abbreviations for hosts. The default is the 302 name given on the command line. Numeric IP addresses are also 303 permitted (both on the command line and in HostName specifica- 304 tions). 305 306 IdentitiesOnly 307 Specifies that ssh(1) should only use the authentication identity 308 files configured in the ssh_config files, even if ssh-agent(1) 309 offers more identities. The argument to this keyword must be 310 ``yes'' or ``no''. This option is intended for situations where 311 ssh-agent offers many different identities. The default is 312 ``no''. 313 314 IdentityFile 315 Specifies a file from which the user's RSA or DSA authentication 316 identity is read. The default is ~/.ssh/identity for protocol 317 version 1, and ~/.ssh/id_rsa and ~/.ssh/id_dsa for protocol ver- 318 sion 2. Additionally, any identities represented by the authen- 319 tication agent will be used for authentication. 320 321 The file name may use the tilde syntax to refer to a user's home 322 directory or one of the following escape characters: `%d' (local 323 user's home directory), `%u' (local user name), `%l' (local host 324 name), `%h' (remote host name) or `%r' (remote user name). 325 326 It is possible to have multiple identity files specified in con- 327 figuration files; all these identities will be tried in sequence. 328 329 KbdInteractiveAuthentication 330 Specifies whether to use keyboard-interactive authentication. 331 The argument to this keyword must be ``yes'' or ``no''. The de- 332 fault is ``yes''. 333 334 KbdInteractiveDevices 335 Specifies the list of methods to use in keyboard-interactive au- 336 thentication. Multiple method names must be comma-separated. 337 The default is to use the server specified list. The methods 338 available vary depending on what the server supports. For an 339 OpenSSH server, it may be zero or more of: ``bsdauth'', ``pam'', 340 and ``skey''. 341 342 LocalCommand 343 Specifies a command to execute on the local machine after suc- 344 cessfully connecting to the server. The command string extends 345 to the end of the line, and is executed with the user's shell. 346 The following escape character substitutions will be performed: 347 `%d' (local user's home directory), `%h' (remote host name), `%l' 348 (local host name), `%n' (host name as provided on the command 349 line), `%p' (remote port), `%r' (remote user name) or `%u' (local 350 user name). This directive is ignored unless PermitLocalCommand 351 has been enabled. 352 353 LocalForward 354 Specifies that a TCP port on the local machine be forwarded over 355 the secure channel to the specified host and port from the remote 356 machine. The first argument must be [bind_address:]port and the 357 second argument must be host:hostport. IPv6 addresses can be 358 specified by enclosing addresses in square brackets or by using 359 an alternative syntax: [bind_address/]port and host/hostport. 360 Multiple forwardings may be specified, and additional forwardings 361 can be given on the command line. Only the superuser can forward 362 privileged ports. By default, the local port is bound in accor- 363 dance with the GatewayPorts setting. However, an explicit 364 bind_address may be used to bind the connection to a specific ad- 365 dress. The bind_address of ``localhost'' indicates that the lis- 366 tening port be bound for local use only, while an empty address 367 or `*' indicates that the port should be available from all in- 368 terfaces. 369 370 LogLevel 371 Gives the verbosity level that is used when logging messages from 372 ssh(1). The possible values are: QUIET, FATAL, ERROR, INFO, VER- 373 BOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. The default is INFO. 374 DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify 375 higher levels of verbose output. 376 377 MACs Specifies the MAC (message authentication code) algorithms in or- 378 der of preference. The MAC algorithm is used in protocol version 379 2 for data integrity protection. Multiple algorithms must be 380 comma-separated. The default is: 381 382 hmac-md5,hmac-sha1,umac-64@openssh.com, 383 hmac-ripemd160,hmac-sha1-96,hmac-md5-96 384 385 NoHostAuthenticationForLocalhost 386 This option can be used if the home directory is shared across 387 machines. In this case localhost will refer to a different ma- 388 chine on each of the machines and the user will get many warnings 389 about changed host keys. However, this option disables host au- 390 thentication for localhost. The argument to this keyword must be 391 ``yes'' or ``no''. The default is to check the host key for lo- 392 calhost. 393 394 NumberOfPasswordPrompts 395 Specifies the number of password prompts before giving up. The 396 argument to this keyword must be an integer. The default is 3. 397 398 PasswordAuthentication 399 Specifies whether to use password authentication. The argument 400 to this keyword must be ``yes'' or ``no''. The default is 401 ``yes''. 402 403 PermitLocalCommand 404 Allow local command execution via the LocalCommand option or us- 405 ing the !command escape sequence in ssh(1). The argument must be 406 ``yes'' or ``no''. The default is ``no''. 407 408 Port Specifies the port number to connect on the remote host. The de- 409 fault is 22. 410 411 PreferredAuthentications 412 Specifies the order in which the client should try protocol 2 au- 413 thentication methods. This allows a client to prefer one method 414 (e.g. keyboard-interactive) over another method (e.g. password) 415 The default for this option is: ``gssapi-with-mic,hostbased, 416 publickey, keyboard-interactive, password''. 417 418 Protocol 419 Specifies the protocol versions ssh(1) should support in order of 420 preference. The possible values are `1' and `2'. Multiple ver- 421 sions must be comma-separated. The default is ``2,1''. This 422 means that ssh tries version 2 and falls back to version 1 if 423 version 2 is not available. 424 425 ProxyCommand 426 Specifies the command to use to connect to the server. The com- 427 mand string extends to the end of the line, and is executed with 428 the user's shell. In the command string, `%h' will be substitut- 429 ed by the host name to connect and `%p' by the port. The command 430 can be basically anything, and should read from its standard in- 431 put and write to its standard output. It should eventually con- 432 nect an sshd(8) server running on some machine, or execute sshd 433 -i somewhere. Host key management will be done using the Host- 434 Name of the host being connected (defaulting to the name typed by 435 the user). Setting the command to ``none'' disables this option 436 entirely. Note that CheckHostIP is not available for connects 437 with a proxy command. 438 439 This directive is useful in conjunction with nc(1) and its proxy 440 support. For example, the following directive would connect via 441 an HTTP proxy at 192.0.2.0: 442 443 ProxyCommand /usr/bin/nc -X connect -x 192.0.2.0:8080 %h %p 444 445 PubkeyAuthentication 446 Specifies whether to try public key authentication. The argument 447 to this keyword must be ``yes'' or ``no''. The default is 448 ``yes''. This option applies to protocol version 2 only. 449 450 RekeyLimit 451 Specifies the maximum amount of data that may be transmitted be- 452 fore the session key is renegotiated. The argument is the number 453 of bytes, with an optional suffix of `K', `M', or `G' to indicate 454 Kilobytes, Megabytes, or Gigabytes, respectively. The default is 455 between `1G' and `4G', depending on the cipher. This option ap- 456 plies to protocol version 2 only. 457 458 RemoteForward 459 Specifies that a TCP port on the remote machine be forwarded over 460 the secure channel to the specified host and port from the local 461 machine. The first argument must be [bind_address:]port and the 462 second argument must be host:hostport. IPv6 addresses can be 463 specified by enclosing addresses in square brackets or by using 464 an alternative syntax: [bind_address/]port and host/hostport. 465 Multiple forwardings may be specified, and additional forwardings 466 can be given on the command line. Privileged ports can be for- 467 warded only when logging in as root on the remote machine. 468 469 If the port argument is `0', the listen port will be dynamically 470 allocated on the server and reported to the client at run time. 471 472 If the bind_address is not specified, the default is to only bind 473 to loopback addresses. If the bind_address is `*' or an empty 474 string, then the forwarding is requested to listen on all inter- 475 faces. Specifying a remote bind_address will only succeed if the 476 server's GatewayPorts option is enabled (see sshd_config(5)). 477 478 RhostsRSAAuthentication 479 Specifies whether to try rhosts based authentication with RSA 480 host authentication. The argument must be ``yes'' or ``no''. 481 The default is ``no''. This option applies to protocol version 1 482 only and requires ssh(1) to be setuid root. 483 484 RSAAuthentication 485 Specifies whether to try RSA authentication. The argument to 486 this keyword must be ``yes'' or ``no''. RSA authentication will 487 only be attempted if the identity file exists, or an authentica- 488 tion agent is running. The default is ``yes''. Note that this 489 option applies to protocol version 1 only. 490 491 SendEnv 492 Specifies what variables from the local environ(7) should be sent 493 to the server. Note that environment passing is only supported 494 for protocol 2. The server must also support it, and the server 495 must be configured to accept these environment variables. Refer 496 to AcceptEnv in sshd_config(5) for how to configure the server. 497 Variables are specified by name, which may contain wildcard char- 498 acters. Multiple environment variables may be separated by 499 whitespace or spread across multiple SendEnv directives. The de- 500 fault is not to send any environment variables. 501 502 See PATTERNS for more information on patterns. 503 504 ServerAliveCountMax 505 Sets the number of server alive messages (see below) which may be 506 sent without ssh(1) receiving any messages back from the server. 507 If this threshold is reached while server alive messages are be- 508 ing sent, ssh will disconnect from the server, terminating the 509 session. It is important to note that the use of server alive 510 messages is very different from TCPKeepAlive (below). The server 511 alive messages are sent through the encrypted channel and there- 512 fore will not be spoofable. The TCP keepalive option enabled by 513 TCPKeepAlive is spoofable. The server alive mechanism is valu- 514 able when the client or server depend on knowing when a connec- 515 tion has become inactive. 516 517 The default value is 3. If, for example, ServerAliveInterval 518 (see below) is set to 15 and ServerAliveCountMax is left at the 519 default, if the server becomes unresponsive, ssh will disconnect 520 after approximately 45 seconds. This option applies to protocol 521 version 2 only. 522 523 ServerAliveInterval 524 Sets a timeout interval in seconds after which if no data has 525 been received from the server, ssh(1) will send a message through 526 the encrypted channel to request a response from the server. The 527 default is 0, indicating that these messages will not be sent to 528 the server. This option applies to protocol version 2 only. 529 530 SmartcardDevice 531 Specifies which smartcard device to use. The argument to this 532 keyword is the device ssh(1) should use to communicate with a 533 smartcard used for storing the user's private RSA key. By de- 534 fault, no device is specified and smartcard support is not acti- 535 vated. 536 537 StrictHostKeyChecking 538 If this flag is set to ``yes'', ssh(1) will never automatically 539 add host keys to the ~/.ssh/known_hosts file, and refuses to con- 540 nect to hosts whose host key has changed. This provides maximum 541 protection against trojan horse attacks, though it can be annoy- 542 ing when the /etc/ssh/ssh_known_hosts file is poorly maintained 543 or when connections to new hosts are frequently made. This op- 544 tion forces the user to manually add all new hosts. If this flag 545 is set to ``no'', ssh will automatically add new host keys to the 546 user known hosts files. If this flag is set to ``ask'', new host 547 keys will be added to the user known host files only after the 548 user has confirmed that is what they really want to do, and ssh 549 will refuse to connect to hosts whose host key has changed. The 550 host keys of known hosts will be verified automatically in all 551 cases. The argument must be ``yes'', ``no'', or ``ask''. The 552 default is ``ask''. 553 554 TCPKeepAlive 555 Specifies whether the system should send TCP keepalive messages 556 to the other side. If they are sent, death of the connection or 557 crash of one of the machines will be properly noticed. However, 558 this means that connections will die if the route is down tem- 559 porarily, and some people find it annoying. 560 561 The default is ``yes'' (to send TCP keepalive messages), and the 562 client will notice if the network goes down or the remote host 563 dies. This is important in scripts, and many users want it too. 564 565 To disable TCP keepalive messages, the value should be set to 566 ``no''. 567 568 Tunnel Request tun(4) device forwarding between the client and the serv- 569 er. The argument must be ``yes'', ``point-to-point'' (layer 3), 570 ``ethernet'' (layer 2), or ``no''. Specifying ``yes'' requests 571 the default tunnel mode, which is ``point-to-point''. The de- 572 fault is ``no''. 573 574 TunnelDevice 575 Specifies the tun(4) devices to open on the client (local_tun) 576 and the server (remote_tun). 577 578 The argument must be local_tun[:remote_tun]. The devices may be 579 specified by numerical ID or the keyword ``any'', which uses the 580 next available tunnel device. If remote_tun is not specified, it 581 defaults to ``any''. The default is ``any:any''. 582 583 UsePrivilegedPort 584 Specifies whether to use a privileged port for outgoing connec- 585 tions. The argument must be ``yes'' or ``no''. The default is 586 ``no''. If set to ``yes'', ssh(1) must be setuid root. Note 587 that this option must be set to ``yes'' for 588 RhostsRSAAuthentication with older servers. 589 590 User Specifies the user to log in as. This can be useful when a dif- 591 ferent user name is used on different machines. This saves the 592 trouble of having to remember to give the user name on the com- 593 mand line. 594 595 UserKnownHostsFile 596 Specifies a file to use for the user host key database instead of 597 ~/.ssh/known_hosts. 598 599 VerifyHostKeyDNS 600 Specifies whether to verify the remote key using DNS and SSHFP 601 resource records. If this option is set to ``yes'', the client 602 will implicitly trust keys that match a secure fingerprint from 603 DNS. Insecure fingerprints will be handled as if this option was 604 set to ``ask''. If this option is set to ``ask'', information on 605 fingerprint match will be displayed, but the user will still need 606 to confirm new host keys according to the StrictHostKeyChecking 607 option. The argument must be ``yes'', ``no'', or ``ask''. The 608 default is ``no''. Note that this option applies to protocol 609 version 2 only. 610 611 See also VERIFYING HOST KEYS in ssh(1). 612 613 VisualHostKey 614 If this flag is set to ``yes'', an ASCII art representation of 615 the remote host key fingerprint is printed in addition to the hex 616 fingerprint string at login and for unknown host keys. If this 617 flag is set to ``no'', no fingerprint strings are printed at lo- 618 gin and only the hex fingerprint string will be printed for un- 619 known host keys. The default is ``no''. 620 621 XAuthLocation 622 Specifies the full pathname of the xauth(1) program. The default 623 is /usr/X11R6/bin/xauth. 624 625PATTERNS 626 A pattern consists of zero or more non-whitespace characters, `*' (a 627 wildcard that matches zero or more characters), or `?' (a wildcard that 628 matches exactly one character). For example, to specify a set of decla- 629 rations for any host in the ``.co.uk'' set of domains, the following pat- 630 tern could be used: 631 632 Host *.co.uk 633 634 The following pattern would match any host in the 192.168.0.[0-9] network 635 range: 636 637 Host 192.168.0.? 638 639 A pattern-list is a comma-separated list of patterns. Patterns within 640 pattern-lists may be negated by preceding them with an exclamation mark 641 (`!'). For example, to allow a key to be used from anywhere within an 642 organisation except from the ``dialup'' pool, the following entry (in au- 643 thorized_keys) could be used: 644 645 from="!*.dialup.example.com,*.example.com" 646 647FILES 648 ~/.ssh/config 649 This is the per-user configuration file. The format of this file 650 is described above. This file is used by the SSH client. Be- 651 cause of the potential for abuse, this file must have strict per- 652 missions: read/write for the user, and not accessible by others. 653 654 /etc/ssh/ssh_config 655 Systemwide configuration file. This file provides defaults for 656 those values that are not specified in the user's configuration 657 file, and for those users who do not have a configuration file. 658 This file must be world-readable. 659 660SEE ALSO 661 ssh(1) 662 663AUTHORS 664 OpenSSH is a derivative of the original and free ssh 1.2.12 release by 665 Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo 666 de Raadt and Dug Song removed many bugs, re-added newer features and cre- 667 ated OpenSSH. Markus Friedl contributed the support for SSH protocol 668 versions 1.5 and 2.0. 669 670OpenBSD 4.6 February 22, 2009 11 671