提高 CentOS 抗 Exploit 能力的实用清单
一 基础加固
- 保持系统与软件包为最新:定期执行 yum/dnf update;如业务允许,启用 yum-cron 自动安装安全更新,缩短漏洞暴露窗口。
- 最小化安装与清理攻击面:安装时选择 Minimal Install,仅启用必需组件;用 systemctl disable --now 关闭不需要的服务与端口。
- 强化账户与权限:遵循最小权限原则,日常使用普通账户并以 sudo 提权;锁定或删除无用账户;通过 pam_pwquality 配置复杂度与历史策略,强制定期更换强密码。
- 启用并维持 SELinux 为 enforcing,仅在确有兼容性问题时才改为 permissive 并排错,避免直接关闭。
二 网络与远程访问
- 以 firewalld 实施“默认拒绝、按需放行”:仅开放必要服务(如 SSH 22/自定义端口、HTTP 80、HTTPS 443),并限制入站/出站方向以减少横向移动与数据外泄。
- 加固 SSH:禁用 root 远程登录(PermitRootLogin no);优先采用SSH 密钥认证并禁用密码(PasswordAuthentication no);可修改默认端口并限制可登录用户(AllowUsers/AllowGroups);设置登录尝试上限(如 MaxAuthTries 3)与空闲超时,降低暴力破解与占用会话风险。
三 入侵防护与检测
- 防暴力破解:部署 Fail2Ban,对反复失败的登录来源自动封禁,缓解 SSH 等暴露面服务的爆破风险。
- 主机入侵检测与文件完整性:使用 AIDE/Tripwire 对关键系统文件建立基线并定期校验,及时发现篡改与后门植入。
- 网络侧监测与阻断:按需部署 Snort/Suricata(IDS/IPS) 对可疑流量进行特征识别与阻断,配合 ClamAV 做恶意软件扫描,降低传播与持久化概率。
- 集中日志与审计:启用 auditd 记录关键系统调用与文件访问,配合 rsyslog/ELK 做集中化存储、告警与可视化;对 /var/log/secure、/var/log/messages 进行常态化审计与轮转。
四 漏洞治理与备份恢复
- 持续漏洞评估:定期使用 OpenVAS/Nessus 扫描,结合 yum/dnf 与 yum-plugin-security 获取并应用安全修复;对高风险项建立修复 SLA 与回归验证流程。
- 变更可控与基线化:对关键配置文件与目录设置最小权限与变更审计;保留“黄金镜像/配置基线”,变更前后进行差异比对与回滚演练。
- 可观测性与演练:监控登录异常、权限提升与关键文件变更;定期做备份恢复演练,确保被入侵或勒索时可快速恢复业务。
五 关键配置示例