这是3级等保中linux服务器的部分检查方法,剩下的检查项可通过询问的方式进行检查。
1.身份鉴别
1.1 系统登录检查
密码检查
cat /etc/passwd
cat /etc/shadow
要求:第二字段处不为空
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
...
- .rhosts 文件检查:
find / -name ".rhosts"
- hosts.equiv 检查:
cat /etc/hosts.equiv
要求:删除 .rhosts文件以及hosts.equiv文件中的用户名或主机。
1.2 密码复杂度检查
- 密码要求检查
cat /etc/login.defs | grep PASS
结果:
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
推荐值
检查项 | 推荐值 |
---|---|
PASS_MAX_DAYS | 90 |
PASS_MIN_DAYS | 2 |
PASS_MIN_LEN | 12 |
PASS_WARN_AGE | 7 |
- 密码组成检查
cat /etc/pam.d/system-auth | grep password
password requisite pam_cracklib.so try_first_pass retry=3 type=
推荐值
password requisite pam_cracklib.so minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
1.3 登录失败处理检查
-
cat /etc/pam.d/system-auth | grep reset
推荐值
在/etc/pam.d/system-auth中手动添加一下配置
account required /lib/security/pamtally.so deny=X no_magic_root reset
X为锁定次数
1.4 远程管理检查
是否启用
-
chkconfig --list | grep telnet
查看telnet是否启用 -
ls /etc/xinetd.d
是否有telnet文件 netstat -an | grep telnet
rpm -aq | grep telnet
2.安全审计
2.1 审计服务是否开启检查
service rsyslog status
service auditd status
2.2 审计内容检查
cat /etc/rsyslog.conf
cat /etc/rsyslog.conf | grep *.
- 检查audit状态
auditctl -s
- 检查audit审计规则
auditctl -l
2.3 系统补丁和服务检查
- 系统补丁检查
cat /etc/redhat-release
- 运行服务检查
service --status-all
2.4 系统登录限制
- 是否禁止root ssh登录
cat /etc/ssh/sshd_config | grep Root
推荐值
PermitRootLogin No
-查看文件 cat /etc/hosts.allow
和 cat /etc/hosts.deny
推荐值:上述文件中有主机
2.5 登录超时检查
-
cat /etc/profile | grep TMOUT
登录超时时间需要手动设置
2.6 用户资源限制检查
-
cat /etc/security/limits.conf
推荐值
fsize、core、cpu、data 、rss、stack、nofiles 都不能为1