香港服务器由于网络自由、访问速度快、端口限制少,成为国内外站长和企业部署网站的热门选择。但与此同时,这类服务器也因为防护配置宽松、外网端口开放较多,成为黑客扫描与攻击的重灾区。如果你最近发现服务器CPU飙升、带宽异常、SSH登录慢甚至无法访问,那么很可能已经遭受攻击。
一、第一时间的应急处置
当你怀疑服务器被入侵,不要慌。应急的第一步是隔离现场,保护证据,避免扩散。
1. 断开非必要外网连接
# 暂时阻断所有外部流量,仅允许SSH
sudo ufw reset
sudo ufw allow 22/tcp
sudo ufw enable
若攻击严重,可直接断开网卡:
sudo ifdown eth0
这能防止恶意程序继续与外部通信。
2. 检查系统登录记录
last -n 10
若看到异常登录(例如海外IP,时间不匹配),立即更换密码并删除对应用户:
sudo userdel -r suspicious_user
查看当前在线用户:
w
如有陌生登录:
pkill -KILL -u 用户名
二、排查系统入侵痕迹
1. 检查高占用进程
top
如果发现类似 kworkerds
, xmrig
, cryptonight
等可疑进程,说明可能中了病毒。
进一步查看进程来源:
ps aux | grep kworkerds
ls -l /proc/<PID>/exe
可通过以下命令终止并清理:
sudo kill -9 <PID>
sudo rm -f /path/to/malware
2. 检查网络连接与端口
ss -tulnp
留意异常的监听端口(如 3333、4444、6666 )。
查看外部连接:
netstat -anp | grep ESTABLISHED
若有可疑远程连接(非你主动建立),立刻阻断:
sudo iptables -A INPUT -s -j DROP
3. 检查计划任务与开机启动项
攻击者常通过计划任务维持后门。
crontab -l
ls /etc/cron.*
如发现陌生脚本路径(例如 /tmp/.x/
或 /var/tmp/
),删除对应任务:
crontab -r
sudo rm -rf /tmp/.x
检查启动服务:
systemctl list-unit-files --type=service | grep enabled
禁用陌生服务:
sudo systemctl disable suspicious.service --now
4. 查看系统日志
sudo cat /var/log/auth.log | grep "Failed"
统计暴力破解IP:
sudo cat /var/log/auth.log | grep "Failed" | awk '{print $(NF-3)}' | sort | uniq -c | sort -nr | head
结果中出现频繁失败的IP,说明正遭受暴力破解。
三、清理与恢复系统
1. 更新系统与修复包
攻击者可能利用旧版本漏洞。立即更新系统组件:
sudo apt update && sudo apt upgrade -y
sudo apt install rkhunter chkrootkit -y
sudo rkhunter --check
若检测到 rootkit,请考虑重装系统。
2. 删除异常账户与文件
列出系统用户:
cat /etc/passwd
删除未知账户并清理主目录:
sudo userdel -r hacker
查找最近被修改的文件:
sudo find / -mtime -2
这有助于发现最近写入的恶意脚本。
3. 检查 Web 目录
网站入侵往往通过上传漏洞。检查 Nginx 日志:
sudo grep "POST" /var/log/nginx/access.log | grep ".php"
若有异常上传请求,删除对应 .php 文件并修改网站目录权限:
sudo chmod -R 644 /var/www/html
sudo chown -R www-data:www-data /var/www/html
四、防御与长期加固
1. 加固 SSH 登录
修改默认端口:
sudo vim /etc/ssh/sshd_config
Port 2222
禁止 root 登录:
PermitRootLogin no
启用密钥登录:
ssh-keygen -t rsa -b 4096
ssh-copy-id -p 2222 admin@server_ip
2. 启用 Fail2Ban 防暴力破解
sudo apt install fail2ban -y
sudo systemctl enable fail2ban --now
自定义规则:
sudo vim /etc/fail2ban/jail.local
[sshd]
enabled = true
maxretry = 3
bantime = 3600
3. 配置防火墙与安全组
sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw allow 80,443/tcp
sudo ufw enable
如果是云服务器(如华纳云香港节点),在控制台安全组中仅开放必要端口。
4. 安装入侵检测系统(IDS)
可使用 AIDE(文件完整性监控):
sudo apt install aide
sudo aideinit
sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
sudo aide --check
或使用 Wazuh / OSSEC 实时监控日志与系统状态。
5. 定期备份与快照
无论加固多严密,备份是最后的防线。建议使用以下方案:
- 每日数据库自动备份
mysqldump -uroot -p dbname > /backup/db_$(date +%F).sql
- 每周完整系统快照(云主机可自动设置);
- 异地备份 至其他服务器或云存储。
五、针对香港节点的特殊建议
香港服务器由于无备案要求,常被黑产扫描利用,因此要注意:
1. 关闭ICMP响应
echo "net.ipv4.icmp_echo_ignore_all = 1" >> /etc/sysctl.conf
sudo sysctl -p
可减少被扫描几率。
2. 限制SSH仅允许固定IP登录
sudo vim /etc/hosts.allow
sshd: 203.0.113.5
3. 启用CDN与WAF防护
使用CDN和DDoS防护,开启“攻击防护模式”可过滤常见HTTP Flood流量。
4. 定期安全审计
使用 lynis 工具进行系统安全扫描:
sudo apt install lynis
sudo lynis audit system
结语:防御重于救火。很多香港服务器被黑并不是因为黑客多强,而是因为管理员掉以轻心。一个弱密码、一个未关的端口、一个过期的 PHP 模块,都可能成为入侵入口。记住三条原则:服务器上线前必须加固,重要数据必须有异地备份,任何异常都要日志先行。攻击可以防御,损失可以控制。只要你从现在开始做好安全策略,你的香港Linux服务器,也能稳如磐石。