Linux生产环境安全_安全加固整体方案

2次阅读

Linux生产环境安全_安全加固整体方案

账号与权限最小化管理

生产环境必须杜绝共享账号和 root 直接登录。创建专用运维账号,通过 sudo 授予明确命令权限,禁用密码登录,强制使用 ssh 密钥认证。对关键服务(如数据库中间件)单独设立运行用户,确保其仅拥有必要文件读写和进程操作权限。定期审计 /etc/passwd/etc/group,删除闲置账号和无主组。

系统服务与端口精简

关闭所有非必需服务,例如 telnetftprsh 等明文传输服务。使用 systemctl list-unit-files –type=service –state=enabled 检查开机自启项,逐项确认必要性。对必须开放的端口(如 22、80、443),在防火墙(iptablesnftables)中限制源 IP 范围,禁止全网暴露。Web 后端服务建议监听 127.0.0.1,由反向代理统一对外暴露。

内核与软件持续更新与加固

启用自动安全更新(如 unattended-upgradesdnf-automatic),但需在测试环境验证后再推至生产。禁用内核模块加载(kernel.modules_disabled=1),关闭核心转储(fs.suid_dumpable=0),开启 ASLR 和 stack-protector 编译选项。对 nginx/apache/mysql 等组件,使用官方稳定版而非系统默认旧版本,并移除示例配置、测试页面和调试接口(如 phpinfo.php、/server-status)。

日志审计与异常监控闭环

集中收集关键日志:SSH 登录记录(/var/log/secure)、系统启动(journald)、应用错误日志、防火墙丢包日志。配置 rsyslogfluentd 将日志实时转发至独立日志服务器,防止被篡改或清空。部署轻量级 HIDS(如 osqueryAIDE)监控二进制文件、配置文件、系统用户等关键资产变化。设置告警规则——例如 5 分钟内同一 IP 多次 SSH 失败、非工作时间 root 登录、敏感目录权限突变等,触发企业微信/钉钉通知。

text=ZqhQzanResources