很多刚买好 VPS 准备搭节点或者建站的小伙伴,都遇到过下面这些惊心动魄的真实场景:

“刚拿到 VPS 才用了两天,登录后台发现日志里有几万次来自全球各地的密码爆破记录!”
“主机商突然发来邮件:您的 VPS 涉及恶意攻击/对外发送垃圾邮件,已为您强制关机封禁!”
“连上 SSH 用 top 命令一查,CPU 占用率飙到了 100%,进程里跑着一个叫 kdevtmpf 或 xmrig 的恶意挖矿程序!”

在 2026 年,IPv4 公网上分布着成千上万个 24 小时不停歇运行的自动化扫描木马机器人(Botnet)。任何一台新建的 VPS,从上线那一刻起,最快 10 分钟内就会被黑客的扫描器盯上。

如果你依然保留着默认的 22 端口、允许 root 密码登录、不装防火墙,你的服务器就跟裸奔没有任何区别。

本文用大白话总结了自建代理 VPS 安全防护的 15 条黄金铁律,手把手教你打造金汤城池!


一、一句话搞懂:黑客是怎么抓走你的 VPS 的?

我们先用一个生动的防盗比喻看懂攻防本质:

PLAINTEXT
裸奔 VPS (默认配置):相当于你把家安在繁华的大马路边,门牌号写着“22号”,
                   门锁是旧式弹簧锁,且门上贴着“欢迎尝试密码:123456”。
                   黑客每天拿几百万把钥匙去试(暴力破解),试出来就把你家洗劫一空。

安全加固后的 VPS:相当于你把门牌号改成了无人知晓的“49152号”,去掉了钥匙孔,
                 只允许持有一把经过加密的“物理金钥匙(SSH 密钥)”的人开门,
                 门外还聘请了保安(Fail2ban),谁连续试错 3 次钥匙就当场戴上手铐封锁 24 小时!

二、自建代理 VPS 安全加固十五条铁律

我们将 15 条铁律按重要程度分为四大层级:

🛡️ 核心层:身份验证加固 (1-4)

  1. 铁律一:彻底禁用 root 密码登录:使用 SSH 密钥(Public Key)登录。黑客无法爆破 4096 位的 RSA / Ed25519 密钥。
  2. 铁律二:修改默认 22 SSH 端口:将默认 SSH 端口修改为 1024 - 65535 之间的随机高位端口(如 49152),防范 99% 的全网自动扫描器。
  3. 铁律三:新建普通 sudo 运维账号:禁止直接使用 root 账号日常操作,新建一个普通用户并赋予 sudo 权限。
  4. 铁律四:开启 Fail2ban 自动防爆破:配置 Fail2ban,凡是 10 分钟内输错密码 3 次的 IP,直接用防火墙封禁该 IP 24 小时。

🧱 网络层:防火墙与访问控制 (5-8)

  1. 铁律五:默认关闭所有入站端口 (UFW / iptables):开启 UFW 防火墙,默认规则设置为 deny incoming,只开放必要的 SSH 端口和代理端口。
  2. 铁律六:禁用 Docker 自动绕过 UFW 行为:修改 Docker daemon.json 或配置 ufw-docker,防止 Docker 映射端口直接暴露在公网。
  3. 铁律七:严禁暴露裸露的 2375 端口与未加密数据库:Redis/MongoDB/MySQL 千万不要绑定 0.0.0.0 且不设密码。
  4. 铁律八:禁用 ICMP Ping 隐身(可选):通过防火墙拒绝外网 Ping 请求,让扫描器误以为该 IP 处于关机状态。

⚙️ 系统层:漏洞补丁与运行隔离 (9-12)

  1. 铁律九:开启系统无感安全更新 (unattended-upgrades):让 Ubuntu / Debian 自动安装 Linux 内核与 OpenSSL 的紧急安全补丁。
  2. 铁律十:开启 Swap 虚拟内存防 OOM:给 512M / 1G 的低配 VPS 配置 1GB 到 2GB 的 Swap 空间,防止内存溢出死机。
  3. 铁律十一:容器服务使用非 root 运行:在 Docker 配置中加入 user: "1000:1000" 与 no-new-privileges:true,防止容器逃逸。
  4. 铁律十二:定期清理无用临时文件与僵尸进程:使用 Cron 任务定期删除 /tmp 积压文件。

🆘 应急层:备份与被黑自救 (13-15)

  1. 铁律十三:配置远程离线备份 (Rclone / Snapshots):定期将重要的代理配置、证书与数据库加密备份到 Cloudflare R2 或 Google Drive。
  2. 铁律十四:保存一份干净的最初 Snapshot 快照:系统装好并完成加固后,立即在 VPS 控制台打一份初始快照。
  3. 铁律十五:学会使用 kill -9 与 netstat 紧急自救:被黑后第一动作是断开网络或修改防火墙,而非盲目重启!

三、小白实操:三分钟部署 SSH 密钥与 Fail2ban

1. 生成并安装 SSH 密钥

在本地电脑终端执行:

BASH
# 生成高强度 Ed25519 密钥
ssh-keygen -t ed25519 -C "your_email@example.com"

# 将公钥上传到 VPS
ssh-copy-id -p 49152 user@your-vps-ip

2. 修改 /etc/ssh/sshd_config

TEXT
Port 49152                   # 修改默认端口
PermitRootLogin no           # 禁止 root 登录
PasswordAuthentication no    # 禁用密码登录,只许密钥

运行 systemctl restart ssh 使其生效。

3. 一键安装 Fail2ban

BASH
sudo apt update && sudo apt install fail2ban -y
sudo systemctl enable fail2ban && sudo systemctl start fail2ban

四、被黑应急处理速查表(自救流程)

一旦发现服务器 CPU 占用 100% 飙升或收到主机商滥用通知,请按以下步骤自救:

自救步骤详细操作命令目的
步骤 1:封锁异常外网连接iptables -P OUTPUT DROP截断木马向控制端 (C2) 发送数据与对外攻击。
步骤 2:排查高 CPU 恶性进程top -b -n 1 | head -n 20找出挖矿进程名(如 xmrig、kdevtmpf)与其 PID。
步骤 3:查找木马文件位置ls -l /proc/<PID>/exe找出木马在硬盘上的真实物理藏匿路径(通常在 /tmp 或 /var/tmp)。
步骤 4:强制终止进程并删除kill -9 <PID> && rm -rf <木马路径>杀掉恶意进程并抹除文件。
步骤 5:排查定时任务后门crontab -l 以及 cat /etc/crontab删除黑客留下的定期重新下载木马的 Cron 自动恢复任务。

五、一句话总结

密钥登录改端口,Fail2ban 护安全! 牢记安全加固 15 条铁律,把爆破攻击挡在大门之外,让你的 VPS 运行稳定安心!

关注 易邦科学上网,及时获取最近更新:

X : https://x.com/rozmiarek760575

版权声明

作者: 易邦

链接: https://blog.e8k.net/posts/vps-security-hardening-15rules-2026/

许可证: 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。