CentOS Linux 7安全基线检查SSH调优

381 阅读3分钟

本文正在参与 “性能优化实战记录”话题征文活动

设置用户权限配置文件的权限 | 文件权限

描述

设置用户权限配置文件的权限

加固建议

执行以下5条命令

chown root:root /etc/passwd /etc/shadow /etc/group /etc/gshadow
chmod 0644 /etc/group 
chmod 0644 /etc/passwd 
chmod 0400 /etc/shadow 
chmod 0400 /etc/gshadow

操作时建议做好记录或备份

确保SSH LogLevel设置为INFO | 服务配置

描述

确保SSH LogLevel设置为INFO,记录登录和注销活动

加固建议

编辑 /etc/ssh/sshd_config 文件以按如下方式设置参数**(取消注释): LogLevel INFO**

操作时建议做好记录或备份

设置SSH空闲超时退出时间 | 服务配置

描述

设置SSH空闲超时退出时间,可降低未授权用户访问其他用户ssh会话的风险

加固建议

编辑/etc/ssh/sshd_config,将ClientAliveInterval 设置为300到900,即5-15分钟,将ClientAliveCountMax设置为0。

ClientAliveInterval 900 ClientAliveCountMax 0

ClientAliveCountMax和ClientAliveInterval 取消注释符号#

操作时建议做好记录或备份

SSHD强制使用V2安全协议 | 服务配置

描述

SSHD强制使用V2安全协议

加固建议

编辑 /etc/ssh/sshd_config 文件以按如下方式设置参数: Protocol 2

操作时建议做好记录或备份

确保SSH MaxAuthTries设置为3到6之间 | 服务配置

描述

设置较低的Max AuthTrimes参数将降低SSH服务器被暴力攻击成功的风险。

加固建议

在/etc/ssh/sshd_config中取消MaxAuthTries注释符号#,设置最大密码尝试失败次数3-6,建议为4: MaxAuthTries 4

操作时建议做好记录或备份

禁止SSH空密码用户登录 | 服务配置

描述

禁止SSH空密码用户登录

加固建议

在/etc/ssh/sshd_config中取消PermitEmptyPasswords no注释符号#

操作时建议做好记录或备份

重启Apache systemctl restart httpd

设置密码修改最小间隔时间 | 身份鉴别

描述

设置密码修改最小间隔时间,限制密码更改过于频繁

加固建议

/etc/login.defs 中将 PASS_MIN_DAYS 参数设置为7-14之间,建议为7: PASS_MIN_DAYS 7 需同时执行命令为root用户设置: chage --mindays 7 root

操作时建议做好记录或备份

设置密码失效时间 | 身份鉴别

描述

设置密码失效时间,强制定期修改密码,减少密码被泄漏和猜测风险,使用非密码登陆方式(如密钥对)请忽略此项。

加固建议

使用非密码登陆方式如密钥对,请忽略此项。在 /etc/login.defs 中将 PASS_MAX_DAYS 参数设置为 60-180之间,如 PASS_MAX_DAYS 90。需同时执行命令设置root密码失效时间: chage --maxdays 90 root

操作时建议做好记录或备份

重启Apache

systemctl restart httpd

systemctl restart sshd

限制编译器

如果你的系统被黑掉了,那么攻击者会对系统使用的是哪种编译器很感兴趣。为什么呢?因为他们可以去下载一个简单的C文件(POC),并且在你的系统上进行编译,从而在几秒钟之内就成为了root用户。如果编译器是开启的话,他们还可以在你的系统上做一些严重的破坏。

首先,你需要检查单个的数据包以确定其包含有哪些二进制文件。然后你需要限制这些二进制文件的权限。

$ rpm -q --filesbypkg gcc | grep 'bin'

现在我们需要创建一个可以访问二进制文件的编译器的组名称了:

$ groupadd compilerGroup

然后,你可以赋予这个组能够改变任何二进制文件的所有权:

$ chown root:compilerGroup /usr/bin/gcc

最后重要的是:仅编译器组才有改变该二进制文件的权限:

$ chmod 0750 /usr/bin/gcc

至此,任何试图使用gcc的用户将会看到权限被拒绝的信息了。

Buy me a cup of coffee :)