ssh_config.0 revision 189006
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.5                    February 22, 2009                            11
671