centos系统安全如何检查
导读:CentOS 系统安全检查清单 一 身份鉴别与账户安全 检查是否存在空口令账户:执行 awk -F: '($2 == "" {print $1}' /etc/shadow;任何输出即为风险账户。 检查是否存在除 root 之外 UID=...
CentOS 系统安全检查清单
一 身份鉴别与账户安全
- 检查是否存在空口令账户:执行
awk -F: '($2 == "") { print $1} ' /etc/shadow;任何输出即为风险账户。 - 检查是否存在除 root 之外 UID=0 的账户:
awk -F: '($3 == 0) { print $1} ' /etc/passwd | grep -v root;如有结果需立即核查与整改。 - 核查密码策略与复杂度:查看
/etc/login.defs中PASS_MAX_DAYS、PASS_MIN_LEN、PASS_MIN_DAYS、PASS_WARN_AGE是否满足复杂度与更换周期要求;同时检查 PAM 复杂度模块(如pam_cracklib或pam_pwquality)是否启用。 - 检查登录失败锁定与会话超时:在
/etc/pam.d/system-auth或相应 PAM 配置中查看是否配置pam_tally2.so/pam_faillock.so(如deny=6 unlock_time=300);在/etc/profile、/etc/bashrc或/etc/profile.d/*.sh中检查TMOUT=600(10 分钟无操作自动退出)。 - 检查特权访问限制:查看
/etc/pam.d/su是否限制仅特定组(如wheel)可su到 root;核查/etc/securetty是否限制 root 远程登录终端。 - 检查默认/无用账户与组:如 adm、lp、sync、shutdown、halt、news、uucp、operator、games、gopher 等是否仍启用,按最小化原则禁用或删除。
二 日志审计与完整性
- 检查审计服务 auditd:
service auditd status或systemctl status auditd;查看规则auditctl -l;审计日志与配置应受保护并定期备份。 - 检查系统日志:确认
/var/log/secure(认证日志)、/var/log/messages正常采集;使用journalctl -xe排查异常;对关键日志配置日志轮转(/etc/logrotate.conf与/etc/logrotate.d/*)。 - 检查登录失败与暴力尝试:在
/var/log/secure中检索Failed、refused等关键字,配合fail2ban是否已部署并有效拦截。 - 检查文件完整性与可疑文件:执行
rpm -Va校验关键系统包(关注 /sbin、/bin、/usr/sbin、/usr/bin);查找SUID/SGID 文件:find / -type f \( -perm -4000 -o -perm -2000 \) -ls;查找无属主/异常权限文件:find / \( -nouser -o -nogroup \) -ls、find / -perm -777 -ls;查找隐藏/可疑大文件:find / -name ".*" -ls、find / -size +10000k -ls。
三 网络与端口安全
- 检查防火墙状态与规则:
systemctl status firewalld;firewall-cmd --list-all;仅开放业务必需端口与服务,遵循最小暴露面原则。 - 检查监听端口与连接:
netstat -ntlp或ss -lntp;识别并关闭不必要/高危端口与进程。 - 检查网络接口混杂模式:
ip link | grep PROMISC;非嗅探/安全设备处于混杂模式需重点核查。 - 检查主机访问控制:查看
/etc/hosts.allow、/etc/hosts.deny是否对管理终端与来源网段做了白名单/黑名单限制。 - 检查SSH 安全基线:
cat /etc/ssh/sshd_config确认Protocol 2、PermitRootLogin no、PasswordAuthentication no(已部署密钥时)、AllowUsers/AllowGroups已收紧;Banner none或自定义/etc/motd,避免泄露系统信息。
四 服务、进程与文件系统
- 检查运行进程与可疑行为:
ps -aux关注 UID=0 的异常进程;lsof -p < PID>查看进程打开的文件、端口与库;lsof -i检查异常网络连接。 - 检查计划任务:
crontab -u root -l、cat /etc/crontab、ls /etc/cron.*;排查异常定时任务与未知脚本。 - 检查启动项与服务:
systemctl list-units --type=service --state=running;关闭不需要的系统服务与高危端口;遵循最小安装原则,减少攻击面。 - 检查重要目录与文件权限:如
/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow、/root/等应为仅 root 可写;必要时使用chattr +i保护关键口令文件;核查 umask 设置与全局可写目录。
五 漏洞扫描与持续监控
- 执行系统与软件更新:
yum update -y;仅安全更新可用yum update --security;离线环境建立本地仓库/镜像与补丁台账。 - 使用漏洞扫描与合规审计工具:定期运行 OpenVAS/GVM、Nessus、Lynis、OSSEC 等,对系统与关键应用进行漏洞评估、基线核查与文件完整性监控。
- 部署入侵检测/防护:如 Snort(网络 IDS)与 Fail2Ban(登录暴力防护);结合 ELK/SIEM 进行集中日志分析与告警。
- 建立持续监控与处置流程:对扫描结果、审计告警与异常日志设定处置 SOP与复查机制,形成闭环。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos系统安全如何检查
本文地址: https://pptw.com/jishu/747947.html
