在当前互联网时代,计算机系统面临着日益复杂的网络安全威胁。对于Linux服务器来说,保证系统的安全性至关重要。Linux安全基线检查与加固是提高服务器安全性的重要步骤之一。本篇文章将重点介绍使用服务管理进行Linux系统安全基线的检查与加固的方法。
准备工作
-
系统备份:在进行任何安全加固之前,务必先备份整个系统。备份系统能够保证在出现错误或问题时能够迅速恢复。
-
了解系统和服务:首先需要了解当前系统的架构和已安装的服务。通过使用命令如“uname -a”和“service --status-all”来查看系统信息和运行的服务。
一、禁止SSH空密码用户登录
检查操作步骤 | 检查是否禁止SSH空密码用户登录 |
---|
检查操作步骤 | 执行命令: more /etc/ssh/sshd_config 查看 PermitEmptyPasswords 配置情况 |
基线符合性性判定依据 | PermitEmptyPasswords 的值设置为no即合规,否则不合规 |
安全加固方案 | 参考配置操作 1、执行备份:cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_bak 2、执行命令:vi /etc/ssh/sshd _config 找到 PermitEmptyPasswords 将其设置为no后保存并退出 3、执行命令:systemctl restart sshd 重启服务使配置生效 |
查看 PermitEmptyPasswords 配置情况,注意发现前面是#注释:为不合规
![](https://i-blog.csdnimg.cn/blog_migrate/40249181249400a0cf073d531daa1e70.png)
安全加固配置
![](https://i-blog.csdnimg.cn/blog_migrate/9d7004847ad2dc4fc7af7b2d36206df1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9cc64b47a42d0e7c4a4fcfc2d66e0bbf.png)
最后重启服务使配置生效
![](https://i-blog.csdnimg.cn/blog_migrate/6d1b8634f2a8b0de23ba5d74d191eb39.png)
二、SSH多次登录失败后锁定用户
检查操作步骤 | 设置ssh多次登录失败后锁定用户 |
---|
检查操作步骤 | 执行命令: more /etc/pam.d/sshd 查看是否存在auth required pam_tally 2.sodeny=5 unlock time=300 内容 |
基线符合性性判定依据 | 存在该行且 deny小于等于5,unlock_time大于等于300,否则不合规 |
安全加固方案 | 参考配置操作 1、执行备份 : cp -p /etc/pam.d/sshd /etc/pam.d/sshd_bak 2、执行命令:vi /etc/pam.d/sshd 在文件开头添加一行,内容为auth required pam{tally2.so deny=5 unlock_time=300,如要对root用户也进行限制,在刚添加的内容后继续添加:even_deny_root=5 root_unlock_time=1200 即可 |
查看配置情况,发现不存在检查内容
![](https://i-blog.csdnimg.cn/blog_migrate/e4f19dbf1c35be50dc1a5e6164cc4014.png)
安全加固配置操作
![](https://i-blog.csdnimg.cn/blog_migrate/689862d1237a4fc518187ff18ae105ba.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d904b536c77d9634ca9f5de54b8e6b54.png)
最后重启服务使配置生效
![](https://i-blog.csdnimg.cn/blog_migrate/6d1b8634f2a8b0de23ba5d74d191eb39.png)
三、限制root用户远程登录
检查操作步骤 | 限制root用户远程登录 |
---|
检查操作步骤 | 执行命令: more /etc/ssh/sshd_config 查看PermitRootLogin 参数的值 |
基线符合性性判定依据 | PermitRootLogin参数值为no且该行没有被注释即合规,否则不合规 |
安全加固方案 | 参考配置操作 1、执行命令 :vi /etc/ssh/sshd_config 找到 PermitRootLogin 将其后方的 yes改为 no并删除前方的 # 取消该行的注 2、释执行命令:systemctl restart sshd 重启服务使其生效 |
四、检查SSH使用的端口
检查操作步骤 | 检查SSH使用的端口 |
---|
检查操作步骤 | 执行命令:more /etc/ssh/sshd_config 查看Port 参数的值 |
基线符合性性判定依据 | Port参数值不是默认值(22) 且该行没有被注释即合规,否则不合规 |
安全加固方案 | 参考配置操作 1、执行命令:vi /etc/ssh/sshd——config 找到 Port 将其后方的22 改为其他端口号,然后删除前方的 # 取消该行的注释 (端口号最好挑10000-65535之间的端口号,10000以下容易被系统或一些特殊软件占用) 2、执行命令:semanage port -a -t ssh_port_t-p tcp 修改后的端口号,将修改后的端口 添加到SELinux开放给ssh使用的端口 3、执行命令 :firewall-cmd --zone=public --add-port=ssh端口号/tcp --permanent防火墙放行刚修改的 ssh 端口号 4、执行命令: systemctl restart sshd;systemctl restart firewalld 重启ssh和防火墙,使配置生效 |
五、设置登录超时自动注销
检查操作步骤 | 设置登录超时自动注销 |
---|
检查操作步骤 | 执行命令: more /etc/profile 查看是否有export TMOUT=180 |
基线符合性性判定依据 | 存在export TMOUT且他的值小于等于180即合规,否则不合规 |
安全加固方案 | 参考配置操作 1、、执行备份:cp - p /etc/profile /etc/profile_bak 2、执行命令:vi /etc/profile 在该文件末尾添加 export TMOUT=180 或者将原来的值修改为180 |
结论: 通过Linux安全基线检查与加固-服务管理的步骤,可以大大增强Linux服务器的安全性。这些措施可以有效地减少系统受到的潜在攻击,并提高服务器的抵抗恶意活动的能力。定期进行安全检查和加固是对系统安全进行长期维护的重要工作,应该始终保持警惕。