这个项目能做什么
本仓库是一份长期维护、持续更新的Linux服务器加固操作指南。它面向家庭或小型自管理服务器编写,不过作者指出其中的概念同样适用于更大规模的环境。本指南在意图上不限定发行版,但编写和测试均在Debian上完成,并提供基于apt的命令。
结构与范围:
- 引言部分说明目标、服务器安全为何重要、为何还要再写一份指南、指向其他指南(包括CIS Benchmarks)的链接,以及未来主题的待办清单。
- “开始之前”涵盖威胁建模、选择稳定且支持良好的发行版、安装注意事项、安装前/后要求,以及使用Ansible剧本。
- SSH服务器部分涵盖公钥/私钥、为AllowGroups创建SSH组、加固/etc/ssh/sshd_config、移除过短的Diffie-Hellman密钥,以及SSH的2FA/MFA。
- 基础部分涵盖限制sudo和su访问、使用FireJail进行沙箱隔离、NTP客户端设置、加固/proc、强制使用安全密码、自动安全更新与告警、熵池说明,以及恐慌/备用/假密码登录系统。
- 网络部分涵盖UFW防火墙、Docker与UFW的交互、用于iptables入侵检测的PSAD、Fail2Ban和CrowdSec。
- 审计部分涵盖AIDE文件/文件夹完整性监控、ClamAV防病毒扫描、Rkhunter和chrootkit rootkit检测、logwatch、用于查看监听端口的ss、Lynis安全审计,以及OSSEC主机入侵检测。
- “危险区”“杂项”和“遗留”部分涵盖配合Google使用的MSMTP、作为MTA并启用隐式TLS的Gmail和Exim4、单独的iptables日志文件、联系作者、实用链接、致谢和许可证。
本指南强调使用echo、cat、sed、awk和grep等基础命令的可复制代码片段,同时警告这些片段不会验证更改,并且步骤中已包含备份。它建议先通读整份指南,不要盲目粘贴命令,并在应用SSH更改前保持第二个终端打开。Ansible剧本位于另一个链接仓库中,并附有编辑变量、启用临时root SSH访问以及运行requirements和main剧本的说明。
许可证为CC-BY-SA。欢迎通过fork和pull request或新建issue进行贡献。
评论
0 评分人数达到10人后显示
登录后参与讨论。