服务器中招变肉鸡?别慌,这套保姆级加固指南请收好
最近圈子里不少朋友哭诉,本来想薅羊毛搞个廉价VPS搭个梯子或者挂个网站,结果没过多久就收到了DC的滥用警告邮件——服务器被拿去当肉鸡扫段、发垃圾邮件了。这种事儿在2026年依然高发,毕竟自动化脚本满天飞,弱密码和默认配置简直就是黑产的自助餐厅。
如果你不幸“中招”,或者还没中招但想未雨绸缪,这篇保姆级的安全加固指南建议你反复阅读。咱们不整那些虚头巴脑的理论,直接上能落地、能保命的实操方案。
第一步:止损与排查(如果你已经中招)
先别急着改密码,黑客可能还留了后门。正确的姿势是:
- 先拔网线:如果是云服务器,直接在控制台关机,切断外部连接,防止黑客继续操作或者清除痕迹。
- 不要盲目信任旧系统:如果数据不是特别重要(比如只是个跳板机),最安全的办法是重装系统。不要试图去手动查杀,Linux下的Rootkit隐藏能力极强,你看到的干净未必是真的干净。
- 必须做的操作:如果你必须保留数据,先把/var/log、/etc/passwd、/var/spool/cron等关键目录打包备份下来,然后分析日志。
第二步:账户安全——拒绝弱口令
绝大多数入侵都是因为弱密码。无论你觉得你的密码多复杂,只要是字典里有的,在爆破面前都不值一提。
- 禁用Root远程登录:这是铁律。创建一个普通用户,赋予sudo权限,以后只用这个普通用户登录,需要root权限时再sudo。
# 编辑SSH配置文件 sudo vi /etc/ssh/sshd_config # 找到 PermitRootLogin yes 改为 PermitRootLogin no sudo systemctl restart sshd - 强制强密码策略:安装
libpam-pwquality(CentOS/RHEL系默认可能已有),在/etc/login.defs和/etc/pam.d/system-auth中配置最小长度、复杂度要求。 - 清理无用账户:检查
/etc/passwd,把系统默认的、带有shell权限的陌生账户或多余的账号统统锁掉或删掉。
第三步:SSH的“变态”级加固
SSH是服务器的大门,既然大门容易被人撞,那就把它焊死,只留个专门的小窗户。
- 修改默认端口:把默认的22端口改成一个非常偏门的五位数端口(比如 22222-59999 之间)。这挡不住定向扫描,但能避开绝大多数全网段的无差别盲扫。
- 只允许密钥登录:这才是最关键的一步。密码登录在算力面前不堪一击,但密钥很难爆破。
- 在本地生成密钥对(ssh-keygen)。
- 把公钥上传到服务器的
~/.ssh/authorized_keys。 - 在
/etc/ssh/sshd_config中设置PasswordAuthentication no。 - 注意:设置前务必确保本地能私钥登录进去,否则把自己锁外面了就只能进VNC救急了。
- 使用 Fail2ban 保卫大门:即使改了端口,依然会有不怕死的尝试连接。安装 Fail2ban,自动封禁那些频繁输错密码的IP。
# Debian/Ubuntu sudo apt install fail2ban # 复制默认配置 sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local # 启动服务 sudo systemctl enable fail2ban sudo systemctl start fail2ban
第四步:防火墙不仅仅是能用
很多云厂商其实提供了外层防火墙(安全组),这比服务器内部的防火墙(iptables/nftables/ufw)效率更高。建议双重防护。
- 安全Group策略:只开放出必要的端口。比如 web 服务器只开 80/443,SSH 只开你修改后的那个特定端口,且来源IP最好限制(如果条件允许)。
- 内部防火墙规则:
- 白名单机制:默认 DROP 所有入站流量,只允许 ESTABLISHED, RELATED 的回包,以及你需要明确开放的端口。
- 常用工具:UFW 对新手很友好(Ubuntu标配),CentOS可以用 Firewalld。
# UFW 简单示例 sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow ssh # 如果你没改ssh服务名,或者 allow 端口 sudo ufw allow 80/tcp sudo ufw enable
第五步:软件组件的自动更新
很多漏洞都存在于老旧的Web组件中(ThinkPHP、Struts2那一堆历史漏洞)。除了系统补丁,应用层面的维护更重要。
- 开启自动安全更新:
- Ubuntu/Debian: 安装
unattended-upgrades。 - CentOS: 配置
yum-cron或dnf-automatic。 虽然这偶尔可能导致服务异常(概率较低),但比被黑客打穿要好得多。
- Ubuntu/Debian: 安装
- 只装需要的软件:服务器不是玩具机,别装一堆乱七八糟的桌面环境、甚至奇怪的脚本。每多装一个软件,就多一个攻击面。
第六步:善用工具进行体检
如果你怀疑系统已经被污染,或者想看看系统哪里有漏洞,可以用一下这些工具:
- Lynis:开源的安全审计工具,跑一遍它会告诉你系统配置哪里不安全,甚至能给出加固建议命令。
- RKHunter (Rootkit Hunter):专门检测系统级的Rootkit。
- Chkrootkit:同样是查杀木马的好帮手。
写在最后
安全是一个动态的过程,不是装完防火墙就完事了。对于个人开发者或小站长来说,**“最小权限原则”和“密钥登录”**是性价比最高的两招。别偷懒,今天的省事就是明天的滥用警告邮件。
如果你的服务器主要用途是个人代理或科学上网,推荐配合Cloudflare WARP或者相关的CDN隐藏源站IP,让黑客连你的大门都找不到,这才是终极物理防御。

评论已关闭