SSH 安全配置
SSH 安全配置在公有云虚机运维中总结而来的ssh组件安全配置
·
在公有云虚机运维中总结而来的ssh组件安全配置如下:
系统文件有风险操作需谨慎,修改配置前请备份相关文件。
- 确保所有者和组都是root,并且不授予组和其他人访问权限。
运行以下命令设置/etc/ssh/sshd_config的所有权和权限:
chown root:root /etc/ssh/sshd_config
chmod og-rwx /etc/ssh/sshd_config
- PermitEmptyPasswords参数指定SSH服务器是否允许使用空密码字符串登录帐户。
#编辑/etc/ssh/sshd_config文件,加入如下内容:
PermitEmptyPasswords no
- HostbasedAuthentication参数指定是否允许受信任的主机通过使用.rhosts 或/etc/hosts.equiv进行认证;当公钥客户端认证成功,用户即登录;此选项仅使用于SSH 2。
#编辑/etc/ssh/sshd_config文件设置参数如下:
HostbasedAuthentication no
- 此变量限制SSH可以在通信期间使用的MAC算法的类型。
#编辑/etc/ssh/sshd_config文件,根据站点策略设置参数。
#以下内容包括所有支持和接受的MAC:
MACs hmac-sha2-512,hmac-sha2-256
- SSH的private key与public key文件为服务器访问的私钥和公钥文件。
chmod 400 <文件名> //修改文件权限
chown -R root:root <文件> //修改文件属主为root
- SSH支持两种不兼容的协议: SSH1和SSH2。SSH1是原始的协议且受到安全问题的影响。SSH2功能更加完善且安全性更好。
#编辑/etc/ssh/sshd_config文件,设置参数如下:
Protocol 2
- 此变量限制SSH在通信期间可以使用的密码类型。
#编辑/etc/ssh/sshd_config文件,加入如下内容:
Ciphers aes256-ctr,aes192-ctr,aes128-ctr
- 参数X11Forwarding提供了操作远程连接X11界面的功能。
#编辑/etc/ssh/sshd_config文件确保参数设置如下:
X11Forwarding no
- MaxAuth参数指定了最大认证登录次数;当登录次数达到半数,错误信息将会被写到syslog文件中,记录详细的登录失败信息。
#编辑/etc/ssh/sshd_config文件,设置参数如下:
MaxAuthTries 4
- IgnoreRhosts参数指定.rhosts和.shosts文件不能在RhostsRSAAuthentication或者HostbasedAuthentication中使用。
#编辑/etc/ssh/sshd_config文件设置参数如下:
IgnoreRhosts yes
- PermitUserEnvironment选项允许用户向ssh守护程序呈现环境选项。、
#编辑/etc/ssh/sshd_config文件,加入如下内容:
PermitUserEnvironment no
- ClientAliveInterval和ClientAliveCountMax这2个选项控制ssh会话的超时。 设置ClientAliveInterval变量时,将终止在指定时间内没有活动的ssh会话。 设置ClientAliveCountMax变量时,sshd将在每个ClientAliveInterval间隔发送客户端活着的消息。 当连续的客户端活动消息的数量没有来自客户端的响应被发送时,ssh会话被终止。 例如,如果ClientAliveInterval设置为15秒,ClientAliveCountMax设置为3,客户端ssh会话将在空闲时间45秒后终止。
#编辑/etc/ssh/sshd_config文件以设置参数如下:
ClientAliveInterval 300
ClientAliveCountMax 0
- Banner参数指定在允许身份验证之前必须将其内容发送给远程用户的文件。默认情况下,不显示警告信息。
#编辑/etc/ssh/sshd_config文件以设置参数如下:
Banner /etc/issue.net
- LoginGraceTime参数指定成功验证SSH服务器的时间。宽限期的时间越长,可以存在更开放的未认证连接。宽限期应限制在适当的组织限制,以确保服务可用于所需的访问。
#编辑/etc/ssh/sshd_config文件,设置参数如下:
LoginGraceTime 60
- INFO指定当用户登录或者注销活动将会被记录。VERBOSE级别的日志中会记录使用的SSH公钥的指纹,可在发生安全事件之后进行分析与审计。
#编辑/etc/ssh/sshd_config文件设置参数如下:
LogLevel INFO 或者 LogLevel VERBOSE
更多推荐
已为社区贡献1条内容
所有评论(0)