等保测评——Linux现场测评及结果对照
查看操作系统的版本信息:cat /proc/version
前置基础:
more /etc/login.defs 登陆程序配置文件—配置密码长度,有效期等
more /etc/pam.d/system_auth 可配置的东西与上面有重合,优先级高于上面。
1. 检查密码 长度 有效期 复杂度规则
more /etc/login.defs 登陆程序配置文件—配置密码长度,有效期等
more /etc/pam.d/system_auth 可配置的东西与上面有重合,优先级高于上面。
证据:
more /etc/login.defs文件下应包含:
PASS_MAX_DAYS 90
PASS_MIN_DAYS 0
PASS_MIN_LEN 8
PASS_WARN_AGE 7
more /etc/pam.d/system_auth文件下应
password requisite pam_cracklib.so try_first_pass retry=3 type=minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
password requisite pam_pwquality.so try_first_pass retry=3 type=minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
2. 检查锁定策略 超时登出
login_timeout 60
more /etc/profile
本地登陆失败配置
more /etc/pam.d/system-auth或**/etc/pam.d/login**中包含:
auth required pam_faillock.so preauth audit deny = 5 unlock_time =1800 even_deny_root unlock_time =1800 root_unlock_time =1800
解释:
deny 设置普通用户和root用户连续错误登陆的最大次数,超过最大次数,则锁定该用户
unlock_time 设定普通用户锁定后,多少时间后解锁,单位是秒;
even_deny_root 也限制root用户;
root_unlock_time 设定root用户锁定后,多少时间后解锁,单位是秒;
远程登陆失败配置
more /etc/pam.d/sshd 文件包含
超时锁定
more /etc/profile 文件包含
TMOUT=600
注意:使用echo $TMOUT 即可检查
如果/etc/profile 文件中没有可以自己添加 ,添加后使用source /etc/profile 更新配置
或者
more /etc/ssh/sshd_config中包含:
ClientAliveInterval 600
拓展:ClientAliveCountMax 2 最多两个账户同时登陆
3. 检查是否ssh服务
Systemctl status -all
Systemctl status sshd
4.检查目录文件权限分配
其中passwd、group、login.defs、profile、sshd_config等文件权限为644或600;shadow等文件权限为000。
注意:书上要求 配置文件 不大于 644 执行文件不大于 755。
5.检查多余用户
more /etc/shadow 应不存在 adm lp sync shutdown halt mail uucp operator games ftp等
6.禁用root远程登陆
more /etc/ssh/sshd_config
permitrootlogin no (一个是禁用密码登录,或者是禁用其他认证方式登录) MaxAuthTries 6 (失败重试次数) (看是否被注释掉) MaxSessions 10 (可同时进行登录的用户数) PermitEmptyPasswords no (不允许空口令登录)
7.最小权限
检查
more /etc/sudoers
root ALL
8.检查审计功能开启
开启审计命令:systemctl start auditd.services (安全设备默认关不掉)
前置基础 : rsyslog 主要记录系统运行的各种信息
Auditd 可以设置审计规则 更灵活的安全审计
ps -aux | grep auditd 或 systemctl status auditd / rsyslog (tab补全)
查看审计规则 cat /etc/audit/audit.rules 或 auditctl -l
9.检查审计内容
more /var/log/audit/audit.log
拓展
Linux下/var/log目录下的各种日志文件讲解:
1)/var/log/secure:记录用户登陆系统的信息,比如SSH,telnet,ftp等记录
2)/var/log/btmp:记录登陆失败的信息,被编码过,所以必须使用last解析
3)/var/log/messages:在开机运行中几乎所有的系统发生的错误都在此记录。
4)/var/log/boot.log:记录一些开机或者关机启动的一些服务信息
5)/var/log/cron:用来记录crontab这个服务执行任务计划产生的日志
6)/var/log/utmp:记录现在登陆的用户
7)/var/log/dmesg:内核日志
8)/var/log/kern:内核产生的信息
9)/var/log/daemon.log:系统监控程序产生的日志。
10.审计进程不能被非审计人员中断
检查日志文件权限分配和systemctl相关命令权限分配(sodu)
11.最小安装
Yum list installed 未知 apt list –installed (可能系统和虚拟机内核不同,所以命令不一样)
12.无不必要服务与端口
服务
systemctl | grep running
端口
netstat -ntlp
13.检查对管理终端进行限制
more /etc/hosts.deny 与 /etc/hosts.allow deny的优先级更大
包含:sshd:192.121.122.12/255.255.255.0
或者 未知
查看firewall-cmd --list-all
或者 硬件防火墙 堡垒机 等
14.检查是否打补丁修漏洞
rpm -qa | grep patch 未知