一、初始账户安全与权限最小化
购买VPS服务器后的首要任务就是处理默认账户。所有Linux发行版默认的root账户必须立即禁用或限制,这是系统加固的黄金准则。建议创建具有sudo权限的普通用户,并通过visudo
命令精确控制权限范围。密码策略需强制要求12位以上混合字符,并设置/etc/login.defs
中的PASS_MAX_DAYS不超过90天。值得注意的是,云服务商提供的初始SSH密钥对应当立即轮换,避免使用供应商预置的密钥材料。如何快速验证账户安全?可通过awk -F: '($3 == 0) {print}' /etc/passwd
检查所有UID为0的超级用户。
二、网络层防护与防火墙策略
Linux内核的netfilter框架是构建安全防线的基石。建议启用firewalld或UFW防火墙,默认策略应设置为DROP所有入站流量,仅放行必要的服务端口。对于Web服务器,80/443端口需配合--limit参数限制连接频率,防止CC攻击。云平台安全组规则必须与主机防火墙形成纵深防御,避免规则冲突。关键技巧:使用nmap -sS -Pn your_vps_ip
定期扫描暴露面,确保无意外开放的端口。TCP Wrapper的hosts.deny/allowe配置可提供额外保护层,但需注意与systemd-journald的日志记录整合。
三、SSH服务深度加固方案
作为主要的管理通道,SSH服务需要特别强化配置。修改/etc/ssh/sshd_config
时务必做到:Port改为非22的高位端口、Protocol限定为
2、PermitRootLogin设为no、MaxAuthTries不超过3次。更安全的方案是完全禁用密码认证,采用ED25519算法生成密钥对,并在客户端配置JumpHost跳板机。对于运维团队,建议部署Teleport或Guacamole等堡垒机系统。如何平衡安全与便利?可设置Fail2Ban配合自定义正则表达式,自动封锁暴力破解IP,同时白名单常用管理终端。
四、系统服务裁剪与补丁管理
默认安装的Linux系统往往包含多余服务,使用systemctl list-unit-files
识别可禁用项。特别是cups、avahi-daemon等网络服务应立即停止,并通过dnf autoremove
或apt purge
彻底移除。内核参数调优同样关键,需在/etc/sysctl.conf
中启用SYN Cookie、禁用IP转发等安全选项。自动化更新可通过unattended-upgrades实现,但需注意配置预演测试环境。记住:每次yum/apt操作后,都应使用needrestart
检查需要重启的服务。
五、安全审计与入侵检测配置
Linux审计子系统(auditd)需定制关键监控规则,包括敏感文件访问、特权命令执行等事件。建议每日通过ausearch
分析日志,并与OSSEC/Wazuh等HIDS联动。文件完整性校验可使用AIDE实现基线扫描,特别注意/bin、/sbin等目录的哈希值变化。对于高敏感系统,可部署SELinux或AppArmor强制访问控制,但需提前测试避免业务中断。如何快速排查异常?rkhunter --checkall
命令能有效检测rootkit和可疑文件。
六、Ansible自动化基线实施方案
手工加固效率低下且易出错,推荐使用Ansible编写Playbook实现标准化部署。典型角色应包括:账户管理模块设置sudoers、安全模块配置ssh和防火墙、审计模块安装auditd规则。通过Galaxy集合可快速集成dev-sec.os-hardening等社区剧本,再通过tags机制实现差异化配置。进阶技巧:利用Vault加密敏感变量,结合Jenkins实现CI/CD流水线。测试阶段务必验证idempotency特性,确保剧本可重复执行不产生副作用。