sshd服务对应的主配置文件是/etc/ssh/sshd_config,下面介绍相关文件各个配置选项的含义:
□Port 22,“Port”用来设置sshd监听的端口,为了安全起见,建议更改默认的22端口,选择5位以上的陌生数字端口。
■Protocol 2,设置使用的SSH协议的版本为SSH1或SSH2,SSH1版本有漏洞和缺陷,因此这里选择Protocol 2即可。
□ListenAddress 0.0.0.0,“ListenAddress”用来设置sshd服务器绑定的IP地址。
■HostKey /etc/ssh/ssh_host_dsa_key,“HostKey”用来设置服务器密匙文件的路径。
□KeyRegenerationInterval 1h,“KeyRegenerationInterval”用来设置在多少秒之后系统自动从新生成服务器的密匙(如果使用密匙)。重新生成密匙是为了防止利用盗用的密匙解密被截获的信息)。
■ServerKeyBits 1024,“ServerKeyBits”用来定义服务器密匙的长度。
□SyslogFacility AUTHPRIV,“SyslogFacility”用来设定在记录来自sshd的消息的时候,是否给出“facility code”。
■LogLevel INFO,“LogLevel”用来记录sshd日志消息的级别。
□LoginGraceTime 2m,“LoginGraceTime”用来设置如果用户登录失败,在切断连接前服务器需要等待的时间,以秒为单位。
■PermitRootLogin no,“PermitRootLogin”用来设置超级用户root能不能用SSH登录,root远程登录Linux是很危险的,因此在远程SSH登录Linux系统时,建议将这个选项设置为“no”。
□StrictModes yes,“StrictModes”用来设置SSH在接收登录请求之前是否检查用户根目录和rhosts文件的权限和所有权。建议将此选项设置为“yes”。
■RSAAuthentication yes,“RSAAuthentication”用来设置是否开启RSA密匙验证,只针对SSH1,如果采用RSA密匙登录方式时,开启此选项。
□PubkeyAuthentication yes,“PubkeyAuthentication”用来设置是否开启公匙验证,如果采用公匙验证方式登录时,开启此选项。
■AuthorizedKeysFile .ssh/authorized_keys,“AuthorizedKeysFile”用来设置公匙验证文件的路径,与PubkeyAuthentication配合使用。
□IgnoreUserKnownHosts no,“IgnoreUserKnownHosts”用来设置SSH在进行RhostsRSAAuthentication安全验证时是否忽略用户的“$HOME/.ssh/known_hosts”文件。
■IgnoreRhosts yes,“IgnoreRhosts”用来设置验证的时候是否使用“~/.rhosts”和“~/.shosts”文件。
□PasswordAuthentication yes,“PasswordAuthentication”用来设置是否开启密码验证机制,如果使用密码登录系统,应该设置为“yes”。
■PermitEmptyPasswords no,“PermitEmptyPasswords”用来设置是否允许用口令为空的账号登录系统,必须选择“no”。
□ChallengeResponseAuthentication no,禁用s/key密码。
■UsePAM no,不通过PAM验证。
□X11Forwarding yes,“X11Forwarding”用来设置是否允许X11转发。