配置文件~/.ssh/config和/etc/ssh/ssh_config
2011-06-17 00:26
323 查看
一般不需要修改OpenSSH客户端配置文件。对于给定用户,共有两个配置文件:~/.ssh/config(用户专用)和/etc/ssh
/ssh_config(全局共享)。要按照该顺序读取这些文件,对于给定的某个参数,它使用的是读取过程中发现的第一个配置。用户可以通过以下方式将全
局参数设置覆盖掉:在自己的用户配置文件中设置同样的参数即可。在ssh或scp命令行上给出的参数的优先级要高于这两个文件中所设置的参数的优先级。
用户的~/.ssh/config文件必须由该用户所有(他是目录"~/"的所有者),并且除了所有者之外任何人都不能写入该文件。否则客户端就会给出一条错误消息然后退出。这个文件的模式通常被设为600,这是因为除了它的所有者之外任何人没有理由能够读取它。
这些配置文件中的配置行包含着声明,这些声明均以某个关键字(不区分大小写)开头,后面跟着空格,最后是参数(区分大小写)。可以使用关键字Host,让声明只作用于特定的系统。Host声明作用于它与下一条Host声明之间的所有配置行。
/ssh_config(全局共享)。要按照该顺序读取这些文件,对于给定的某个参数,它使用的是读取过程中发现的第一个配置。用户可以通过以下方式将全
局参数设置覆盖掉:在自己的用户配置文件中设置同样的参数即可。在ssh或scp命令行上给出的参数的优先级要高于这两个文件中所设置的参数的优先级。
用户的~/.ssh/config文件必须由该用户所有(他是目录"~/"的所有者),并且除了所有者之外任何人都不能写入该文件。否则客户端就会给出一条错误消息然后退出。这个文件的模式通常被设为600,这是因为除了它的所有者之外任何人没有理由能够读取它。
这些配置文件中的配置行包含着声明,这些声明均以某个关键字(不区分大小写)开头,后面跟着空格,最后是参数(区分大小写)。可以使用关键字Host,让声明只作用于特定的系统。Host声明作用于它与下一条Host声明之间的所有配置行。
CheckHostIPyesno | |
如果将其设置为 yes (默认值),那么除了用 known_hosts 文件中的主机名之外,还可以采用 IP 地址来识别远程系统。 若设置为 no ,则只使用主机名。将 CheckHostIP 设置为 yes 可以提高系统的安全性。 | |
ForwardX11yesno | |
如果设置为 yes ,那么自动通过一条安全通道以不可信模式 来转发 X11 连接,但是并不设置 shell 变量 DISPLAY 。 如果 ForwardX11Trusted 也设置为 yes, 那么连接以可信模式转发。 此外,可以在命令行上使用选项 -X 以不可信模式重定向 X11 连接。 这个参数的默认值是 no 。要想让 X11 转发起作用,还必须将服务器 上的 /etc/sshd_config 文件中的 X11Forwarding 设置为 yes (参见 8.4.6 节)。 更多信息请参见 8.6 节的“ X11 转发”部分。 | |
ForwardX11Trustedyesno | |
与 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 时,主机名与地址将以明 文形式写入。 UbuntuLinux 将这份声明设置为 yes 来提高系统的 安全性。关于 known_hosts 文件的更多信息请参见 8.3.3 节第 2 小节。 | |
Hosthostnames | |
指定它后面的(直到下一个主机声明为止)声明只适用于与 hostnames 相匹配的主机。 Hostnames 可以包含 ? 与 * 通配符。 单个的 * 指定所有主机。如果没有这个关键字,任何声明都适用于所有主机。 | |
HostbasedAuthenticationyesno | |
当设置为 yes 时,尝试进行 rhosts 身份验证。对于安全性要求较 高的系统,设置为 no (默认)。 | |
HostKeyAlgorithmsalgorithms | |
其中 algorithms 是一个由逗号隔开的算法列表,客户端按照优 先级顺序依次使用这些算法。从 ssh-rsa 或 ssh-dss 中选择 algorithms (默认值为“ ssh-rsa,ssh-dss ” )。 | |
Portnum | 使 OpenSSH 通过 num 端口与远程系统连接。默认值为 22 。 |
StrictHostKeyCheckingyesno ask | |
决定 OpenSSH 是否将主机密钥添加到用户的 known_hosts 文件 中以及如何添加。如果将该选项设置为 ask ,那么在连接新系 统时会询问是否添加主机密钥;如果设置为 no ,就会自动添加 主机密钥;如果设置为 y e s ,就要求手工添加主机密钥。若将 参数设置 yes 或 ask ,则当某系统的主机密钥发生改变之后, OpenSSH 会拒绝连接到该系统。对于安全性要求较高的系统, 请将此参数设置为 yes 或 ask 。默认为 ask 。 | |
TCPKeepAliveyesno | |
如果设置为 yes (默认值),就定期检查连接是否存活。 如果服务器崩溃或者由于其他原因导致连接死掉,那么这种 检查将会导致 ssh 或 scp 连接中断,即便连接只是暂时死掉。 若将这个参数设置为 no ,则会导致客户端不去检查连接是否存活。 这项声明用到了 TCP keepalive 选项,它未经加密,并且容易受到 IP 欺骗(参见术语表)。如果希望采用能够防止 IP 欺骗的替代品, 那么可以采用基于服务器的相关技术,请参见 8.4.6 节中的“ ClientAliveInterval ”。 | |
Username | |
指定登录系统时所用的用户名。可用 Host 声明来指定系统。 该选项意味着,在远程系统上登录时,如果使用的用户名不同 于在本地系统上登录所用的用户名,那么不必在命令行上输入用户名。 | |
相关文章推荐
- 配置文件~/.ssh/config和/etc/ssh/ssh_config
- 配置文件~/.ssh/config和/etc/ssh/ssh_config
- 配置文件/etc/ssh/sshd_config
- suse10配置“/etc/ssh/sshd_config”文件
- 配置SSH“/etc/ssh/sshd_config”文件 分享
- ssh配置config文件
- 利用 ssh 的用户配置文件 config 管理 ssh 会话
- ssh配置文件ssh_config和sshd_config区别
- SSH远程登录配置文件sshd_config详解
- /etc/sysconfig/selinux 配置文件————相关介绍
- ssh配置文件ssh_config和sshd_config区别
- iptables的配置文件/etc/sysconfig/iptables不存在怎么办
- SSH远程登录配置文件sshd_config详解
- sshd_config OpenSSH SSH 进程配置文件配置说明
- Linux系统配置文件 /etc/sysconfig详解
- ssh的用户配置文件config管理ssh会话
- /etc/sysconfig/network-scripts/ifcfg-eth0网卡配置文件
- linux 下配置文件目录/etc/sysconfig
- /etc/ssh/sshd_config 配置(ssh连接)
- ssh配置文件ssh_config和sshd_config区别与KeepActive