新 VPS 到手,先别急着跑服务:一份能把 Linux 加固讲完整的开源指南

只要你的服务器有公网 IP,它从开机那一刻起就在被扫描。这话说腻了,但真不是吓人——翻一下 /var/log/auth.log 就明白了。加固这件事,网上的教程一大堆,但大多只讲单点,看完也不知道下一步该干嘛。今天推荐一个把整条链路讲完的项目:imthenachoman/How-To-Secure-A-Linux-Server


这是什么项目

一句话:一份把”如何安全地运行一台 Linux 服务器”从头讲到尾的教程,全部内容就在 GitHub 的 README 里。

  • 纯文档项目,一份 README 三千多行,一行代码都没有
  • 作者 imthenachoman,本职做开发,业余玩自托管,把自己家服务器的踩坑经验整理成了公共资料
  • 2019 年开始维护到现在,两万七千多 star、两千多 fork,CC BY-SA 4.0 协议,免费看、免费改
  • 定位很明确:给自托管玩家和入门运维看的”教学型”加固指南,比 CIS 基准文档友好,比工具百科类项目成体系

它到底讲了什么

基本覆盖一台服务器从装好到能放心跑业务的完整流程:

模块 主要内容
准备工作 威胁模型、发行版选择、安装前后检查清单
SSH 加固 密钥登录、禁用密码/root 登录、sshd_config 逐项讲解、SSH 二次验证
用户与系统 sudo 权限、密码策略、FireJail 应用沙箱、自动安全更新
网络防线 UFW 防火墙、Fail2ban、PSAD 端口扫描检测、CrowdSec
审计与检测 AIDE 文件完整性、Lynis 审计、rkhunter 后门检测、ClamAV 杀毒、OSSEC 主机入侵检测
进阶加固 sysctl 内核参数、GRUB 密码、/proc 隐藏进程信息、umask 等
周边配套 nginx 加固、邮件告警、配套 Ansible 仓库实现自动化

为什么值得看

这项目最大的特点不是命令多,而是”讲道理”。

每个安全措施都按固定的套路写:为什么这么做 → 为什么不这么做 → 原理 → 具体步骤。”为什么不这么做”这块很少见,它会主动把代价讲清楚:自动更新可能把机器搞挂、2FA 丢了手机进不去、sysctl 改错起不来机。看完你能自己判断哪些该做,而不是无脑照抄。

另外两件事做得挺贴心:

  • 每条手动改配置的操作,都配了一行 sed/echo 的”懒人命令”,复制粘贴就能跑
  • 高风险的操作(内核参数、GRUB 之类)单独折叠在 Danger Zone 里,防止新手误入

顺序上也有讲究。章节之间是依赖关系:先 SSH 后网络、先预防后检测,跟着从头做一遍,基本就能把一台服务器从裸奔状态收拾干净。


适合谁

  • 刚买了第一台 VPS、云主机,想正经加固一下的新手(需要会基本 Linux 命令)
  • 自托管玩家、HomeLab 党:NAS、博客、各种自建服务
  • 帮公司管几台 Linux 服务器的独立开发者、小团队
  • 想系统了解服务器安全、但不想啃 CIS 那种官方文档的人

不适合:

  • 完全没碰过 Linux 的人——它默认你会基本命令,不教基础
  • 想要”一键加固脚本”的人——这是教程,不是工具
  • 要过合规审计的企业——该看 CIS Benchmarks
  • 只想加固桌面系统的人——这是服务器向的

优点和缺点

优点:

  • 全面成体系,从选发行版到邮件告警一条线讲完,省得自己到处拼教程
  • 讲原理,读完能举一反三,不是背命令
  • 命令都能直接复制,还有懒人版一行命令
  • 免费开源,协议宽松,想 fork 改造成自己的版本也随意

缺点:

  • 三千多行一个文件,想一口气读完不容易,得按章节慢慢来
  • 单人维护,更新节奏看作者心情,部分章节还挂着 WIP(AIDE、ClamAV、rkhunter 等)
  • 全英文,没有官方中文版
  • 主要按 Debian 系写,CentOS 等其他发行版要自己换算命令
  • 懒人命令不做结果校验,照抄前最好先看懂在干嘛
  • 全装一遍对低配小 VPS 偏重,OSSEC、ClamAV 这类真要掂量一下

怎么用

我的建议是拿一台测试机或者新开的 VPS 边读边做,别直接在生产环境照搬:

  1. 先读”准备工作”,明确自己的威胁模型:哪些服务要暴露、被攻击的代价是什么
  2. 每节的 Why Not 都扫一眼,再决定做不做,不是所有措施都适合所有人
  3. 改 SSH 配置前保持一个已登录的会话兜底,防止把自己锁在外面
  4. 用不上的模块直接跳过,单用户的小服务器没必要全套审计工具
  5. 想自动化的话,项目有配套的 Ansible 仓库(moltenbit/How-To-Secure-A-Linux-Server-With-Ansible)

项目信息

一句话:如果你手里有台 Linux 服务器,又懒得一篇篇翻教程,这个项目值得花一个下午从头跟一遍,比你自己东拼西凑省事得多。