腾讯云主机安全【等保三级】CentOS7安全基线检查策略

2021-07-12 09:51:14 浏览数 (3)

最近试用了一下腾讯云主机主机安全的基线检查功能

(图片可放大查看)

(图片可放大查看)

(图片可放大查看)

梳理了(Copy C/Copy V)一下腾讯云主机安全——【等保三级】CentOS7安全基线检查策略

一、未通过项17项

1. 确保配置了密码尝试失败的锁定

处理建议 (处理时请先做备份) 

编辑/etc/pam.d/password-auth 和/etc/pam.d/system-auth 文件,以符合本地站点策略:

代码语言:javascript复制
auth required pam_faillock.so preauth audit silent deny=5 unlock_time=900 
auth [success=1 default=bad] pam_unix.so 
auth [default=die] pam_faillock.so authfail audit deny=5 unlock_time=900 
auth sufficient pam_faillock.so authsucc audit deny=5 unlock_time=900

2. 确保默认用户umask限制为027或更高

处理建议 (处理时请先做备份)

代码语言:javascript复制
编辑/etc/bash.bashrc、/etc/profile和/etc/profile.d/*.sh文件(以及系统上支持的任何其他Shell的适当文件),并添加或编辑umask参数,

如下所示:

代码语言:javascript复制
umask 027 备注(修复完后运行以下命令以确保是否已完全修复 
grep "umask" /etc/bashrc 
grep "umask" /etc/profile 
grep "umask" /etc/profile.d/*.sh
 如果umask 配置不为027的,需全部修改为027或更严格)

3. 确保默认用户shell超时为900秒或更短

处理建议 (处理时请先做备份) 

编辑/etc/bashrc和/etc/profile文件(以及系统上支持的任何其他Shell的适当文件),并添加或编辑任何umask参数,如下所示:

代码语言:javascript复制
TMOUT=600

4. 确保配置了bootloader配置的权限

处理建议 (处理时请先做备份)

运行以下命令来设置对grub配置的权限:

代码语言:javascript复制
# chown root:root /boot/grub2/grub.cfg 
# chmod og-rwx /boot/grub2/grub.cfg 
# chown root:root /boot/grub2/user.cfg 
# chmod og-rwx /boot/grub2/user.cfg

5. 确保设置了引导程序密码

处理建议 (处理时请先做备份)

使用以下命令创建加密的密码grub2-setpassword:

代码语言:javascript复制
# grub2-setpassword 
Enter password: <password> 
Confirm password: <password>

6. 确保核心转储受到限制

处理建议 (处理时请先做备份)

代码语言:javascript复制
将以下行添加到/etc/security/limits.conf或/etc/security/limits.d/*文件中:
  * hard core 0 
在/etc/sysctl.conf或/etc/sysctl.d/*文件中设置以下参数: 
  fs.suid_dumpable = 0 
运行以下命令来设置活动内核参数: 
# sysctl -w fs.suid_dumpable=0

7. 确保启用了地址空间布局随机化(ASLR)

处理建议 (处理时请先做备份)

代码语言:javascript复制
在/etc/sysctl.conf或/etc/sysctl.d/*文件中设置以下参数:
  kernel.randomize_va_space = 2 
运行以下命令来设置内核参数:
  # sysctl -w kernel.randomize_va_space=2

8. 确保审核日志不会自动删除

处理建议 (处理时请先做备份) 

在/etc/audit/auditd.conf中设置以下参数 :

代码语言:javascript复制
  max_log_file_action = keep_logs

9. 确保系统管理范围(sudoers)更改的收集

处理建议 (处理时请先做备份) 

将以下行添加到/etc/audit/rules.d/audit.rules和/etc/audit/audit.rules 文件中:

代码语言:javascript复制
-w /etc/sudoers -p wa -k scope 
-w /etc/sudoers.d/ -p wa -k scope 
重启auditd:service auditd restart

10. 确保收集了系统管理员操作(sudolog)

处理建议 (处理时请先做备份) 

将以下行添加到/etc/audit/rules.d/audit.rules和/etc/audit/audit.rules 文件中:

代码语言:javascript复制
-w /var/log/sudo.log -p wa -k actions 
重启auditd:service auditd restart

11. 确保审核配置是不变的

处理建议 (处理时请先做备份)

代码语言:javascript复制
将以下行添加到/etc/audit/rules.d/audit.rules和/etc/audit/audit.rules 文件中: -e 2 
重启auditd:service auditd restart

12. 确保启用对在auditd之前启动的进程的审计

处理建议 (处理时请先做备份) 

编辑/etc/default/grub并将audit = 1添加到GRUB_CMDLINE_LINUX:GRUB_CMDLINE_LINUX="audit=1" 运行以下命令以更新grub2配置:

代码语言:javascript复制
# grub2-mkconfig -o /boot/grub2/grub.cfg

13. 确保收集了修改用户/组信息的事件

处理建议 (处理时请先做备份) 

将以下行添加到/etc/audit/rules.d/audit.rules和/etc/audit/audit.rules 文件中:

代码语言:javascript复制
-w /etc/group -p wa -k identity 
-w /etc/passwd -p wa -k identity 
-w /etc/gshadow -p wa -k identity 
-w /etc/shadow -p wa -k identity 
-w /etc/security/opasswd -p wa -k identity 
重启auditd:service auditd restart

14. 确保收集了修改系统的强制访问控制的事件

处理建议 (处理时请先做备份) 

将以下行添加到/etc/audit/rules.d/audit.rules和/etc/audit/audit.rules 文件中:

代码语言:javascript复制
-w /etc/selinux/ -p wa -k MAC-policy 
-w /usr/share/selinux/ -p wa -k MAC-policy 
重启auditd:service auditd restart

15. 确保收集了登录和注销事件

处理建议 (处理时请先做备份) 

将以下行添加到/etc/audit/rules.d/audit.rules和/etc/audit/audit.rules 文件中:

代码语言:javascript复制
-w /var/log/lastlog -p wa -k logins 
-w /var/run/faillock/ -p wa -k logins 
重启auditd:service auditd restart

16. 确保收集了会话启动信息

处理建议 (处理时请先做备份) 

将以下行添加到/etc/audit/rules.d/audit.rules和/etc/audit/audit.rules 文件中:

代码语言:javascript复制
-w /var/run/utmp -p wa -k session 
-w /var/log/wtmp -p wa -k logins 
-w /var/log/btmp -p wa -k logins 
重启auditd:service auditd restart

17. 确保在审核日志已满时禁用系统

处理建议 (处理时请先做备份) 

该配置会在日志满后触发守护进程关闭系统(该配置有让系统关闭中断的风险,对于需要持续生产的环境不建议进行该项配置,对于日志记录及安全要求高的环境可进行该项配置) 

在 /etc/audit/auditd.conf中设置以下参数:

代码语言:javascript复制
space_left_action = email 
action_mail_acct = root 
admin_space_left_action = halt

二、已通过项15项

1. 确保已配置SSH空闲超时间隔

处理建议 (处理时请先做备份) 

编辑/etc/ssh/sshd_config文件以设置参数:

代码语言:javascript复制
ClientAliveInterval 300 
ClientAliveCountMax 0

2. 确保SSH MaxAuthTries设置为4或更低

处理建议 (处理时请先做备份)

编辑/etc/ssh/sshd_config文件以设置参数,如下所示:

代码语言:javascript复制
  MaxAuthTries 4 

3. 确保已禁用SSH空密码登录

处理建议 (处理时请先做备份)

编辑/etc/ssh/sshd_config文件以设置参数,如下所示:

代码语言:javascript复制
  PermitEmptyPasswords no

4. 确保单用户模式需要身份验证

处理建议 (处理时请先做备份)

代码语言:javascript复制
编辑/usr/lib/systemd/system/rescue.service 及/usr/lib/systemd/system/emergency.service设置ExecStart
ExecStart=-/bin/sh -c "/sbin/sulogin; /usr/bin/systemctl --fail --no-block default"

5. 确保已启用XD/NX支持

处理建议 (处理时请先做备份) 

在32位系统上,安装具有PAE支持的内核,而在64位系统上则不需要安装:

如有必要,请配置您的引导程序以加载新内核并重新引导系统。

您可能需要在BIOS中启用NX或XD支持。关

于如何启用NX/XD支持,详细指引请参考:

代码语言:javascript复制
https://access.redhat.com/solutions/2936741

6. 确保配置/etc/passwd的权限

处理建议 (处理时请先做备份) 

运行以下命令以设置/etc/passwd的权限:

代码语言:javascript复制
# chown root:root /etc/passwd 
# chmod 644 /etc/passwd

7. 确保配置/etc/shadow的权限

处理建议 (处理时请先做备份)

运行以下命令以设置/etc/shadow的权限:

代码语言:javascript复制
# chown root:root /etc/shadow
# chmod 000 /etc/shadow

8. 确保配置/etc/group的权限

处理建议 (处理时请先做备份)

运行以下命令以设置/etc/group的权限:

代码语言:javascript复制
# chown root:root /etc/group 
# chmod 644 /etc/group

9. 确保配置/etc/gshadow的权限

处理建议 (处理时请先做备份) 

运行以下chown以设置/etc/gshadow的权限:

代码语言:javascript复制
# chown root:root /etc/gshadow
# chmod 000 /etc/gshadow

10. 确保配置/etc/passwd-的权限

处理建议 (处理时请先做备份)

运行以下命令以设置/etc/passwd-的权限:

代码语言:javascript复制
# chown root:root /etc/passwd- 
# chmod u-x,go-rwx /etc/passwd-

11. 确保配置/etc/shadow-的权限

处理建议 (处理时请先做备份) 

运行以下命令以设置/etc/shadow-的权限:

代码语言:javascript复制
# chown root:root /etc/shadow-
# chmod 000 /etc/shadow-

12. 确保配置/etc/group-的权限

处理建议 (处理时请先做备份) 运行以下命令以设置/etc/group-的权限:

代码语言:javascript复制
# chown root:root /etc/group-
# chmod u-x,go-wx /etc/group-

13. 确保配置/etc/gshadow-的权限

处理建议 (处理时请先做备份) 运行以下命令以设置/etc/gshadow-的权限:

代码语言:javascript复制
# chown root:root /etc/gshadow-
# chmod 000 /etc/gshadow-

14. 确保已配置审核日志存储大小

处理建议 (处理时请先做备份)

根据站点策略设置/etc/audit/auditd.conf参数:

代码语言:javascript复制
  max_log_file = XX<MB>

15. 确保已启用auditd服务

处理建议 (处理时请先做备份) 运行以下命令以启用auditd:

代码语言:javascript复制
#systemctl enable auditd 

0 人点赞