配置文件~/.ssh/config和/etc/ssh/ssh_config

通常不须要修改OpenSSH客户端配置文件。对于给定用户,共有两个配置文件:~/.ssh/config(用户专用)和/etc/ssh/ssh_config(全局共享)。要按照该顺序读取这些文件,对于给定的某个参数,它使用的是读取过程当中发现的第一个配置。用户能够经过如下方式将全局参数设置覆盖掉:在本身的用户配置文件中设置一样的参数便可。在ssh或scp命令行上给出的参数的优先级要高于这两个文件中所设置的参数的优先级。算法

用户的~/.ssh/config文件必须由该用户全部(他是目录"~/"的全部者),而且除了全部者以外任何人都不能写入该文件。不然客户端就会给出一条错误消息而后退出。这个文件的模式一般被设为600,这是由于除了它的全部者以外任何人没有理由可以读取它。shell

这些配置文件中的配置行包含着声明,这些声明均以某个关键字(不区分大小写)开头,后面跟着空格,最后是参数(区分大小写)。可使用关键字Host,让声明只做用于特定的系统。Host声明做用于它与下一条Host声明之间的全部配置行。安全

CheckHostIP yes | no服务器


若是将其设置为yes(默认值),那么除了用known_hostsssh

文件中的主机名以外,还能够采用IP地址来识别远程系统。ide

若设置为no,则只使用主机名。将CheckHostIP设置为yes加密

能够提升系统的安全性。spa

ForwardX11 yes | no命令行


若是设置为yes,那么自动经过一条安全通道以不可信模式ci

来转发X11链接,可是并不设置shell变量DISPLAY

若是ForwardX11Trusted也设置为yes,那么链接以可信模式转发。

此外,能够在命令行上使用选项-X以不可信模式重定向X11链接。

这个参数的默认值是no。要想让X11转发起做用,还必须将服务器

上的/etc/sshd_config文件中的X11Forwarding设置为yes(参见8.4.6节)。

更多信息请参见8.6节的“X11转发”部分。

ForwardX11Trusted yes | no


ForwardX11一块使用时,ForwardX11必须设置为yes(默认),

这个声明才能起做用。当这个声明设置为yes(默认),而

ForwardX11也设置为yes时,这个声明将设置shell变量DISPLAY

并给予远程X11客户端对原来的(服务器)X11显示的彻底访问权限。

此外,能够在命令行上使用选项-Y以可信模式重定向X11链接。

这个声明的默认值是no。要想让X11转发起做用,还必须将服务

器上的/etc/sshd_config文件中的X11Forwarding设置为yes(参见8.4.6节)。

更多信息请参见8.6节的“X11转发”部分。

HashKnownHosts


当设置为yes时, OpenSSH会将文件~/.ssh/known_hosts中的

主机名和地址进行散列。当设置为no时,主机名与地址将以明

文形式写入。Ubuntu Linux将这份声明设置为yes来提升系统的

安全性。关于known_hosts文件的更多信息请参见8.3.3节第2小节。

Host hostnames


指定它后面的(直到下一个主机声明为止)声明只适用于与

hostnames相匹配的主机。Hostnames能够包含?*通配符。

单个的*指定全部主机。若是没有这个关键字,任何声明都适用于全部主机。

HostbasedAuthentication yes | no


当设置为yes时,尝试进行rhosts身份验证。对于安全性要求较

高的系统,设置为no(默认)。

HostKeyAlgorithms algorithms


其中algorithms是一个由逗号隔开的算法列表,客户端按照优

先级顺序依次使用这些算法。从ssh-rsassh-dss中选择algorithms

(默认值为“ssh-rsa, ssh-dss)。

Port num

使OpenSSH经过num端口与远程系统链接。默认值为22

StrictHostKeyChecking yes | no | ask


决定OpenSSH是否将主机密钥添加到用户的known_hosts文件

中以及如何添加。若是将该选项设置为ask,那么在链接新系

统时会询问是否添加主机密钥;若是设置为no,就会自动添加

主机密钥;若是设置为yes,就要求手工添加主机密钥。若将

参数设置yesask,则当某系统的主机密钥发生改变以后,

OpenSSH会拒绝链接到该系统。对于安全性要求较高的系统,

请将此参数设置为yesask。默认为ask

TCPKeepAlive yes | no


若是设置为yes(默认值),就按期检查链接是否存活。

若是服务器崩溃或者因为其余缘由致使链接死掉,那么这种

检查将会致使sshscp链接中断,即使链接只是暂时死掉。

若将这个参数设置为no,则会致使客户端不去检查链接是否存活。

这项声明用到了TCP keepalive选项,它未经加密,而且容易受到

IP欺骗(参见术语表)。若是但愿采用可以防止IP欺骗的替代品,

那么能够采用基于服务器的相关技术,请参见8.4.6节中的“ClientAliveInterval”。

User name


指定登陆系统时所用的用户名。可用Host声明来指定系统。

该选项意味着,在远程系统上登陆时,若是使用的用户名不一样

于在本地系统上登陆所用的用户名,那么没必要在命令行上输入用户名。