Host * -- 表示在该文件的下一个host之前的所有配置条目,都只对匹配后面字符串的主机有效,“*”表示所有计算机
ForwardAgent no -- 设置连接是否经过验证代理转发给远程计算机(如果有的话)
ForwardX11 no -- 设置X11连接是否被自动重定向到安全的通道和显示集(DISPLAY set),为了在本地运行远程的X程序必须设置这个值
RhostsAuthentication no -- 设置是否使用基于rhosts的安全验证
RhostsRSAAuthentication no -- 设置是否使用利用RSA算法的基于rhosts的安全验证
RSAAuthentication yes -- 设置是否使用RSA算法进行安全验证
PasswordAuthentication yes -- 设置是否使用口令验证
FallBackToRsh no -- 设置如果用ssh连接出现错误是否自动使用rsh
UseRsh no -- 设置是否在这台计算机上使用“rlogin/rsh”
BatchMode no -- 如果设为“yes”,passphrase/password(交互式输入口令)的提示将被禁止。因此,当不能交互式输入口令的时候,如对脚本文件和批处理任务,它就十分有用。
CheckHostIP yes -- 设置ssh是否查看连接到服务器的主机的IP地址以防止DNS欺骗,建议设置为“yes”
StrictHostKeyChecking no -- 如果设置为“yes”,ssh就不会自动把计算机的密钥加入“$HOME/.ssh/known_hosts”文件,并且一旦计算机的密钥发生了变化,就拒绝连接
IdentityFile ~/.ssh/identity -- 设置从哪个文件读取用户的RSA安全验证标识
Port 22 -- 设置连接到远程主机的端口
Cipher blowfish -- 设置加密用的密码
EscapeChar ~ -- 设置escape字符
CompressionLevel 6 -- 传输的数据使用数据压缩,压缩的级别是【1,9】
LogLevel DEBUG INFO -- 表示当SSH出现问题的时候,怎么办?默认为“INFO”
作为服务器时SSH需要配置的文件
SSH服务器的配置使用的是“/etc/ssh/sshd_config”配置文件,这些选项的设置在配置文件中已经有了一些说明而且用“man sshd”也可以查看帮助。请注意OpenSSH对于SSH 1.x和2.x没有不同的配置文件。
下面列出来的是最重要的关键词,并且作了相关的作用注释。
# This is ssh server systemwide configuration file.
Port 22 -- 设置服务器sshd监听的端口号
ListenAddress 192.168.1.1 -- 设置sshd服务器绑定的ip地址
HostKey /etc/ssh/ssh_host_key -- 设置包含计算机私人密钥的文件
ServerKeyBits 1024 -- 定义服务器密钥的位数
LoginGraceTime 600 -- 设置如果用户不能成功登陆,在切断连接之前,服务器需要等待的时间,以秒为单位
KeyRegenerationInterval 3600 -- 设置在多少秒之后自动生成服务器的密钥(如果使用密钥),重新生成密钥是为了防止被盗用的密钥被用来解密被截获的信息
PermitRootLogin no -- 设置root用户能不能使用ssh登录;最好把这个选项设置成“PermitRootLogin without-password”,这样“root”用户就不能从没有密匙的计算机上登录;
把这个选项设置成“no”将禁止“root”用户登录,只能用“su”命令从普通用户转成“root”;设为yes就表示允许root通过ssh登录,不安全,极不建议
IgnoreRhosts yes -- 设置验证的时候是否使用“rhosts”和“shosts”文件
IgnoreUserKnownHosts yes -- 设置ssh daemon在进行RhostsRSAAuthentication安全验证的时候是否忽略用户的“$HOME/.ssh/known_hosts”