summaryrefslogtreecommitdiff
path: root/ssh_config.5
diff options
context:
space:
mode:
Diffstat (limited to 'ssh_config.5')
-rw-r--r--ssh_config.5176
1 files changed, 167 insertions, 9 deletions
diff --git a/ssh_config.5 b/ssh_config.5
index 01e7b6f23..cc91a5c56 100644
--- a/ssh_config.5
+++ b/ssh_config.5
@@ -33,8 +33,8 @@
33.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 33.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
34.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 34.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35.\" 35.\"
36.\" $OpenBSD: ssh_config.5,v 1.166 2013/06/27 14:05:37 jmc Exp $ 36.\" $OpenBSD: ssh_config.5,v 1.184 2014/01/19 04:48:08 djm Exp $
37.Dd $Mdocdate: June 27 2013 $ 37.Dd $Mdocdate: January 19 2014 $
38.Dt SSH_CONFIG 5 38.Dt SSH_CONFIG 5
39.Os 39.Os
40.Sh NAME 40.Sh NAME
@@ -116,6 +116,8 @@ keywords are case-insensitive and arguments are case-sensitive):
116.It Cm Host 116.It Cm Host
117Restricts the following declarations (up to the next 117Restricts the following declarations (up to the next
118.Cm Host 118.Cm Host
119or
120.Cm Match
119keyword) to be only for those hosts that match one of the patterns 121keyword) to be only for those hosts that match one of the patterns
120given after the keyword. 122given after the keyword.
121If more than one pattern is provided, they should be separated by whitespace. 123If more than one pattern is provided, they should be separated by whitespace.
@@ -140,6 +142,73 @@ matches.
140See 142See
141.Sx PATTERNS 143.Sx PATTERNS
142for more information on patterns. 144for more information on patterns.
145.It Cm Match
146Restricts the following declarations (up to the next
147.Cm Host
148or
149.Cm Match
150keyword) to be used only when the conditions following the
151.Cm Match
152keyword are satisfied.
153Match conditions are specified using one or more keyword/criteria pairs
154or the single token
155.Cm all
156which matches all criteria.
157The available keywords are:
158.Cm exec ,
159.Cm host ,
160.Cm originalhost ,
161.Cm user ,
162and
163.Cm localuser .
164.Pp
165The
166.Cm exec
167keyword executes the specified command under the user's shell.
168If the command returns a zero exit status then the condition is considered true.
169Commands containing whitespace characters must be quoted.
170The following character sequences in the command will be expanded prior to
171execution:
172.Ql %L
173will be substituted by the first component of the local host name,
174.Ql %l
175will be substituted by the local host name (including any domain name),
176.Ql %h
177will be substituted by the target host name,
178.Ql %n
179will be substituted by the original target host name
180specified on the command-line,
181.Ql %p
182the destination port,
183.Ql %r
184by the remote login username, and
185.Ql %u
186by the username of the user running
187.Xr ssh 1 .
188.Pp
189The other keywords' criteria must be single entries or comma-separated
190lists and may use the wildcard and negation operators described in the
191.Sx PATTERNS
192section.
193The criteria for the
194.Cm host
195keyword are matched against the target hostname, after any substitution
196by the
197.Cm Hostname
198option.
199The
200.Cm originalhost
201keyword matches against the hostname as it was specified on the command-line.
202The
203.Cm user
204keyword matches against the target username on the remote host.
205The
206.Cm localuser
207keyword matches against the name of the local user running
208.Xr ssh 1
209(this keyword may be useful in system-wide
210.Nm
211files).
143.It Cm AddressFamily 212.It Cm AddressFamily
144Specifies which address family to use when connecting. 213Specifies which address family to use when connecting.
145Valid arguments are 214Valid arguments are
@@ -172,6 +241,75 @@ Note that this option does not work if
172.Cm UsePrivilegedPort 241.Cm UsePrivilegedPort
173is set to 242is set to
174.Dq yes . 243.Dq yes .
244.It Cm CanonicalDomains
245When
246.Cm CanonicalizeHostname
247is enabled, this option specifies the list of domain suffixes in which to
248search for the specified destination host.
249.It Cm CanonicalizeFallbackLocal
250Specifies whether to fail with an error when hostname canonicalization fails.
251The default,
252.Dq yes ,
253will attempt to look up the unqualified hostname using the system resolver's
254search rules.
255A value of
256.Dq no
257will cause
258.Xr ssh 1
259to fail instantly if
260.Cm CanonicalizeHostname
261is enabled and the target hostname cannot be found in any of the domains
262specified by
263.Cm CanonicalDomains .
264.It Cm CanonicalizeHostname
265Controls whether explicit hostname canonicalization is performed.
266The default,
267.Dq no ,
268is not to perform any name rewriting and let the system resolver handle all
269hostname lookups.
270If set to
271.Dq yes
272then, for connections that do not use a
273.Cm ProxyCommand ,
274.Xr ssh 1
275will attempt to canonicalize the hostname specified on the command line
276using the
277.Cm CanonicalDomains
278suffixes and
279.Cm CanonicalizePermittedCNAMEs
280rules.
281If
282.Cm CanonicalizeHostname
283is set to
284.Dq always ,
285then canonicalization is applied to proxied connections too.
286.It Cm CanonicalizeMaxDots
287Specifies the maximum number of dot characters in a hostname before
288canonicalization is disabled.
289The default,
290.Dq 1 ,
291allows a single dot (i.e. hostname.subdomain).
292.It Cm CanonicalizePermittedCNAMEs
293Specifies rules to determine whether CNAMEs should be followed when
294canonicalizing hostnames.
295The rules consist of one or more arguments of
296.Ar source_domain_list : Ns Ar target_domain_list ,
297where
298.Ar source_domain_list
299is a pattern-list of domains that may follow CNAMEs in canonicalization,
300and
301.Ar target_domain_list
302is a pattern-list of domains that they may resolve to.
303.Pp
304For example,
305.Dq *.a.example.com:*.b.example.com,*.c.example.com
306will allow hostnames matching
307.Dq *.a.example.com
308to be canonicalized to names in the
309.Dq *.b.example.com
310or
311.Dq *.c.example.com
312domains.
175.It Cm ChallengeResponseAuthentication 313.It Cm ChallengeResponseAuthentication
176Specifies whether to use challenge-response authentication. 314Specifies whether to use challenge-response authentication.
177The argument to this keyword must be 315The argument to this keyword must be
@@ -216,7 +354,8 @@ The default is
216Specifies the ciphers allowed for protocol version 2 354Specifies the ciphers allowed for protocol version 2
217in order of preference. 355in order of preference.
218Multiple ciphers must be comma-separated. 356Multiple ciphers must be comma-separated.
219The supported ciphers are 357The supported ciphers are:
358.Pp
220.Dq 3des-cbc , 359.Dq 3des-cbc ,
221.Dq aes128-cbc , 360.Dq aes128-cbc ,
222.Dq aes192-cbc , 361.Dq aes192-cbc ,
@@ -230,15 +369,23 @@ The supported ciphers are
230.Dq arcfour256 , 369.Dq arcfour256 ,
231.Dq arcfour , 370.Dq arcfour ,
232.Dq blowfish-cbc , 371.Dq blowfish-cbc ,
372.Dq cast128-cbc ,
233and 373and
234.Dq cast128-cbc . 374.Dq chacha20-poly1305@openssh.com .
375.Pp
235The default is: 376The default is:
236.Bd -literal -offset 3n 377.Bd -literal -offset 3n
237aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128, 378aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,
238aes128-gcm@openssh.com,aes256-gcm@openssh.com, 379aes128-gcm@openssh.com,aes256-gcm@openssh.com,
380chacha20-poly1305@openssh.com,
239aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc, 381aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,
240aes256-cbc,arcfour 382aes256-cbc,arcfour
241.Ed 383.Ed
384.Pp
385The list of available ciphers may also be obtained using the
386.Fl Q
387option of
388.Xr ssh 1 .
242.It Cm ClearAllForwardings 389.It Cm ClearAllForwardings
243Specifies that all local, remote, and dynamic port forwardings 390Specifies that all local, remote, and dynamic port forwardings
244specified in the configuration files or on the command line be 391specified in the configuration files or on the command line be
@@ -347,7 +494,7 @@ will be substituted by the target host name,
347will be substituted by the original target host name 494will be substituted by the original target host name
348specified on the command line, 495specified on the command line,
349.Ql %p 496.Ql %p
350the port, 497the destination port,
351.Ql %r 498.Ql %r
352by the remote login username, and 499by the remote login username, and
353.Ql %u 500.Ql %u
@@ -627,10 +774,11 @@ The default for this option is:
627ecdsa-sha2-nistp256-cert-v01@openssh.com, 774ecdsa-sha2-nistp256-cert-v01@openssh.com,
628ecdsa-sha2-nistp384-cert-v01@openssh.com, 775ecdsa-sha2-nistp384-cert-v01@openssh.com,
629ecdsa-sha2-nistp521-cert-v01@openssh.com, 776ecdsa-sha2-nistp521-cert-v01@openssh.com,
777ssh-ed25519-cert-v01@openssh.com,
630ssh-rsa-cert-v01@openssh.com,ssh-dss-cert-v01@openssh.com, 778ssh-rsa-cert-v01@openssh.com,ssh-dss-cert-v01@openssh.com,
631ssh-rsa-cert-v00@openssh.com,ssh-dss-cert-v00@openssh.com, 779ssh-rsa-cert-v00@openssh.com,ssh-dss-cert-v00@openssh.com,
632ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, 780ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
633ssh-rsa,ssh-dss 781ssh-ed25519,ssh-rsa,ssh-dss
634.Ed 782.Ed
635.Pp 783.Pp
636If hostkeys are known for the destination host then this default is modified 784If hostkeys are known for the destination host then this default is modified
@@ -672,13 +820,14 @@ offers many different identities.
672The default is 820The default is
673.Dq no . 821.Dq no .
674.It Cm IdentityFile 822.It Cm IdentityFile
675Specifies a file from which the user's DSA, ECDSA or RSA authentication 823Specifies a file from which the user's DSA, ECDSA, ED25519 or RSA authentication
676identity is read. 824identity is read.
677The default is 825The default is
678.Pa ~/.ssh/identity 826.Pa ~/.ssh/identity
679for protocol version 1, and 827for protocol version 1, and
680.Pa ~/.ssh/id_dsa , 828.Pa ~/.ssh/id_dsa ,
681.Pa ~/.ssh/id_ecdsa 829.Pa ~/.ssh/id_ecdsa ,
830.Pa ~/.ssh/id_ed25519
682and 831and
683.Pa ~/.ssh/id_rsa 832.Pa ~/.ssh/id_rsa
684for protocol version 2. 833for protocol version 2.
@@ -791,6 +940,7 @@ Specifies the available KEX (Key Exchange) algorithms.
791Multiple algorithms must be comma-separated. 940Multiple algorithms must be comma-separated.
792The default is: 941The default is:
793.Bd -literal -offset indent 942.Bd -literal -offset indent
943curve25519-sha256@libssh.org,
794ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, 944ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,
795diffie-hellman-group-exchange-sha256, 945diffie-hellman-group-exchange-sha256,
796diffie-hellman-group-exchange-sha1, 946diffie-hellman-group-exchange-sha1,
@@ -993,6 +1143,14 @@ For example, the following directive would connect via an HTTP proxy at
993.Bd -literal -offset 3n 1143.Bd -literal -offset 3n
994ProxyCommand /usr/bin/nc -X connect -x 192.0.2.0:8080 %h %p 1144ProxyCommand /usr/bin/nc -X connect -x 192.0.2.0:8080 %h %p
995.Ed 1145.Ed
1146.It Cm ProxyUseFdpass
1147Specifies that
1148.Cm ProxyCommand
1149will pass a connected file descriptor back to
1150.Xr ssh 1
1151instead of continuing to execute and pass data.
1152The default is
1153.Dq no .
996.It Cm PubkeyAuthentication 1154.It Cm PubkeyAuthentication
997Specifies whether to try public key authentication. 1155Specifies whether to try public key authentication.
998The argument to this keyword must be 1156The argument to this keyword must be
@@ -1370,7 +1528,7 @@ Patterns within pattern-lists may be negated
1370by preceding them with an exclamation mark 1528by preceding them with an exclamation mark
1371.Pq Sq !\& . 1529.Pq Sq !\& .
1372For example, 1530For example,
1373to allow a key to be used from anywhere within an organisation 1531to allow a key to be used from anywhere within an organization
1374except from the 1532except from the
1375.Dq dialup 1533.Dq dialup
1376pool, 1534pool,