服务器安全基线检查与加固是围绕“身份可信、权限可控、行为可溯”建立的持续性防护机制,涵盖账户禁用与ssh密钥认证、pam密码强度与faillock锁定策略、sudo权限审查、auditd审计日志集中转发及定期扫描验证等闭环管理措施。

服务器安全基线检查与加固不是一次性的配置调整,而是围绕“身份可信、权限可控、行为可溯”建立的持续性防护机制。核心在于把默认不安全的系统状态,收敛到最小必要、可验证、可审计的安全水位。
账户与认证策略加固
账户是攻击入口的第一道关卡,重点防范暴力破解和越权访问:
- 禁用所有非必要系统账户(如sync、operator、games),执行passwd -l 账户名;
- 强制禁用 root 远程登录:PermitRootLogin no(SSH 配置);
- 启用 PAM 密码强度策略:确保/etc/pam.d/system-auth含pam_pwquality.so,要求长度≥12、大小写+数字+特殊字符各至少1位;
- 设置失败锁定:在/etc/pam.d/sshd中添加auth [default=die] pam_faillock.so authfail deny=5 unlock_time=1800,5次输错即锁30分钟;
- 禁用空密码登录:PermitEmptyPasswords no,并确认该行未被注释。
服务与协议精简防护
减少暴露面,堵住常见攻击路径:
针对Linux系统,phpStudy团队推出全网首家linux docker容器面板,只要一个命令,快速安装面板,在面板里可以自行选择软件版本,可以方便的进行安全配置,就算没有Linux基础也可以快速搭建和管理PHP服务器环境!
- 卸载或停用非业务必需服务(如telnet、rsh、cups、avahi-daemon);
- 修改 SSH 默认端口(如设为2222),并同步更新防火墙规则;
- 关闭密码认证,仅允许密钥登录:PasswordAuthentication no,同时确认PubkeyAuthentication yes;
- 限制最大认证尝试次数:MaxAuthTries 3,降低爆破成功率;
- 设置连接超时:ClientAliveInterval 300 + ClientAliveCountMax 0,闲置5分钟自动断开。
权限控制与日志审计落地
防止提权滥用,确保操作留痕可查:
- 审查sudoers文件:运行grep 'ALL=(ALL)' /etc/sudoers /etc/sudoers.d/* 2>/dev/null | grep -v '^#',剔除非授权的无限制提权账号;
- 检查关键文件权限:/etc/shadow应为-rw-------,/root目录应为dr-x------;
- 启用命令历史时间戳:echo 'export HISTTIMEFORMAT="%F %T "' >> /etc/profile;
- 开启 auditd 审计服务,监控用户增删、sudo 使用、敏感文件读写等事件;
- 将日志集中转发至远程 SIEM 或专用日志服务器,避免本地篡改。
系统维护与持续验证
加固不是一劳永逸,需形成闭环管理:
- 上线前必须完成全量系统更新:yum update --security(RHEL/CentOS)或apt upgrade -y(Ubuntu/Debian);
- 每次加固前备份原始配置:cp /etc/ssh/sshd_config{,.bak}、cp /etc/pam.d/sshd{,.bak};
- 使用自动化工具定期扫描(如 OpenSCAP、Lynis 或云厂商基线服务),每月至少执行一次基线符合性检查;
- 对连续90天未登录的账户标记评估,非必要则禁用或删除;
- 漏洞爆发后(如 CVE-2024-6387)立即响应,优先升级 OpenSSH 并复核相关配置是否仍生效。










