等保三级 Linux 系统安全基线配置清单
·
一、身份鉴别(等保要求:强密码 + 登录控制)
✅ 1.1 密码复杂度策略(必须启用 pam_pwquality)
# CentOS/RHEL/麒麟
echo "password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1" >> /etc/pam.d/system-auth
# Ubuntu/统信
echo "password requisite pam_pwquality.so retry=3 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1" >> /etc/pam.d/common-password
要求:至少8位,含大小写字母、数字、特殊字符
✅ 1.2 密码有效期 ≤ 90天,到期前7天提醒
# 修改 /etc/login.defs
sed -i 's/^PASS_MAX_DAYS.*/PASS_MAX_DAYS 90/' /etc/login.defs
sed -i 's/^PASS_MIN_DAYS.*/PASS_MIN_DAYS 0/' /etc/login.defs
sed -i 's/^PASS_WARN_AGE.*/PASS_WARN_AGE 7/' /etc/login.defs
✅ 1.3 登录失败5次,锁定30分钟
# 配置 PAM faillock(CentOS 7+/麒麟 V10+)
echo "auth required pam_faillock.so preauth silent deny=5 unlock_time=1800" >> /etc/pam.d/system-auth
echo "auth [default=die] pam_faillock.so authfail deny=5 unlock_time=1800" >> /etc/pam.d/system-auth
echo "account required pam_faillock.so" >> /etc/pam.d/system-auth
验证:faillock --user testuser
二、访问控制(最小权限 + 账号清理)
✅ 2.1 禁用或删除无用账号(如 games、ftp、news)
# 锁定无用账号
for user in games ftp news uucp; do
if id "$user" &>/dev/null; then
usermod -L "$user"
echo "已锁定账号: $user"
fi
done
✅ 2.2 root 账号禁止远程 SSH 登录
# 修改 /etc/ssh/sshd_config
sed -i 's/^#*PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
systemctl restart sshd
✅ 2.3 设置超时自动登出(10分钟)
echo "TMOUT=600" >> /etc/profile
echo "readonly TMOUT" >> /etc/profile
echo "export TMOUT" >> /etc/profile
三、安全审计(等保核心!必须开!)
✅ 3.1 启用 rsyslog + auditd 双审计
# 启用 auditd(记录关键系统调用)
systemctl enable --now auditd
# 配置关键审计规则(/etc/audit/rules.d/protect.rules)
cat > /etc/audit/rules.d/protect.rules <<EOF
-w /etc/passwd -p wa -k identity
-w /etc/shadow -p wa -k identity
-w /etc/group -p wa -k identity
-w /etc/sudoers -p wa -k priv_esc
-a always,exit -F arch=b64 -S execve -k exec
EOF
# 重启生效
augenrules --load
✅ 3.2 日志留存 ≥ 180天,且不可篡改
# 配置 rsyslog 远程备份(建议对接 SIEM)
echo "*.info;mail.none;authpriv.none;cron.none @your-siem-server:514" >> /etc/rsyslog.conf
# 本地日志权限加固
chmod 600 /var/log/*.log
chown root:root /var/log/*.log
四、入侵防范(漏洞 + 补丁管理)
✅ 4.1 关闭不必要的服务(如 avahi、cups、postfix)
systemctl disable --now avahi-daemon cups postfix
✅ 4.2 定期更新系统(建立补丁管理流程)
# 创建补丁检查脚本(每月执行)
echo "0 3 1 * * /usr/bin/yum check-update --security | mail -s 'Security Updates' admin@company.com" >> /var/spool/cron/root
要求:高危漏洞 7天内修复,中危 30天内
五、恶意代码防范
✅ 5.1 部署主机防病毒软件(等保三级强制要求)
国产环境推荐:
奇安信网神主机卫士
启明星辰天珣
华为云主机安全(HSS)
✅ 5.2 禁用 USB 自动挂载(防摆渡攻击)
# 创建 udev 规则禁用 USB 存储
echo 'SUBSYSTEM=="usb", ATTR{bDeviceClass}=="00", ACTION=="add", RUN+="/bin/sh -c \"echo 0 > /sys$DEVPATH/authorized\"'" > /etc/udev/rules.d/99-disable-usb-storage.rules
六、资源控制(防 DoS)
✅ 6.1 限制用户进程数 & 内存(通过 limits.conf)
# /etc/security/limits.conf
cat >> /etc/security/limits.conf <<EOF
* soft nproc 100
* hard nproc 200
* soft as 2048000
* hard as 4096000
root soft nproc unlimited
root hard nproc unlimited
EOF
✅ 6.2 配置内核参数防 SYN Flood
# /etc/sysctl.conf
cat >> /etc/sysctl.conf <<EOF
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_syn_retries = 2
EOF
sysctl -p
写在最后
等保不是“打补丁”,而是“建基线”。
一个合规的 Linux 系统,
不是装完就安全,
而是每一行配置,都经得起审计。
建议将本文清单纳入你的《系统上线 checklist》,
让安全,从第一天开始!
更多推荐


所有评论(0)