21 10 月 2026
本文由财富云计算提供,我们提供高防服务器与 CDN 防护服务,NAT 型无独立公网 IP 价格比独立 IP 省一半以上,迁移过程中需要协助的可以随时咨询。

一、第一阶段:确认与止损(攻击中)

被攻击时最忌慌乱操作。先花 5 分钟确认情况:

1.1 判断攻击类型

# SSH 还连得上吗?→ 能连上是应用层(CC),连不上是流量层(DDoS)
# 服务器上执行:
ss -s                          # 连接总数是否暴涨
ss -tn state syn-recv | wc -l  # 半开连接数(SYN Flood 特征)
netstat -n | awk '/^tcp/ {print $6}' | sort | uniq -c | sort -rn  # 连接状态分布
tail -100 /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head  # 请求来源 IP 分布
现象结论临时止血
SSH 断、ping 不通、带宽 100%大流量 DDoS普通机器扛不住,直奔高防
SSH 正常、Nginx 502、PHP 进程满CC 攻击先开 Nginx 限流(见下)
时好时坏混合限流 + 准备切高防

1.2 应用层的临时止血(30 秒生效)

# /etc/nginx/conf.d/emergency.conf(被打时紧急加上,生效快)
limit_req_zone $binary_remote_addr zone=emergency:10m rate=10r/s;

server {
    location / {
        limit_req zone=emergency burst=20 nodelay;
        limit_conn emergency 20;
        # 返回 503 也比 502 强——至少告诉搜索引擎「临时不可用」而非错误
    }
}
nginx -t && systemctl reload nginx   # 生效

这只是缓兵之计,CC 变种(慢速、分布式 IP)绕过限流很简单。真正的解决是切高防。

1.3 通知与预案

  • 通知相关方(玩家群/用户/老板):「遭受攻击,预计 X 小时恢复,数据安全」
  • 如果业务有 SLA 承诺,启动应急预案(应急手册)

二、第二阶段:备份与快照(切流前)

切高防前必须备份——迁移本身有风险(配置错误、回源不通),被攻击时再出迁移事故就是双倍伤害。

# 1. 数据库全量备份(用你平时的脚本,示例 MySQL)
mysqldump -u root -p --single-transaction --quick --all-databases | gzip > /backup/pre-migrate-$(date +%F).sql.gz

# 2. 网站目录
tar -czf /backup/webdata-pre-migrate.tar.gz -C /var/www .

# 3. 配置文件单独打包(迁移后要对照)
tar -czf /backup/conf-pre-migrate.tar.gz /etc/nginx /etc/php* /etc/mysql* 2>/dev/null

# 4. 云控制台做整机快照(最重要的一步,能整机回滚)

云服务器快照是后悔药:迁移搞砸了,直接回滚快照恢复原状。

三、第三阶段:接入高防

以「回源模式高防」为例(直连换 IP 模式更简单,但失去源站隐藏能力)。

3.1 高防开通与回源配置

在商家控制台:

  1. 添加回源:填源站 IP + 端口(你的服务器公网 IP,NAT 型填网关映射)
  2. 获取转发 IP + 端口(对外暴露的)
  3. 开启端口转发(HTTP 80 / HTTPS 443;游戏服按端口段添加)

3.2 源站回源白名单

先加白名单再切流量——顺序反了会出现「切了流量源站全拒」:

# /etc/nginx/conf.d/highdef-whitelist.conf
# 高防回源 IP 段(商家提供的,可能多段)
set_real_ip_from 203.0.113.0/24;
set_real_ip_from 198.51.100.0/24;
real_ip_header X-Forwarded-For;

server {
    listen 80;
    server_name z0w.cn;
    
    # 回源白名单:只放高防 IP 段
    allow 203.0.113.0/24;
    allow 198.51.100.0/24;
    deny all;
    
    location / { proxy_pass http://127.0.0.1:8080; }
}
nginx -t && systemctl reload nginx

验证白名单(重要!):用你的手机网络(不走 CDN 的环境)访问源站 IP,应该被拒绝——这说明白名单生效了。如果直接打开了,白名单没配对。

3.3 源站只认域名访问

防「IP 直接访问」绕过 Host 校验:

server {
    listen 80 default_server;
    server_name _;
    return 444;   # 裸 IP 访问直接断
}

server {
    listen 80;
    server_name z0w.cn *.z0w.cn;   # 只有域名能进
    ...
}

四、第四阶段:域名解析切换

4.1 切 DNS

步骤操作
1把域名 TTL 调到 300 秒(切流前 24 小时做,让旧 TTL 过期)
2DNS 把 A 记录改为高防转发 IP
3等待生效:dig z0w.cn +short 看是否变成新 IP
4多地 ping 验证(用公共 DNS 查询工具看各地解析)

4.2 灰度验证(别全量直接切)

  1. 二级域名先行:test.z0w.cn 先切高防,跑通所有功能(登录、支付、上传、API)
  2. 观察 2 小时:高防后台看回源是否正常(源站带宽应该有流量,且来源是高防 IP)
  3. 主域名切换:确认无误再切 z0w.cn
  4. 旧 IP 保留一周:有客户端缓存旧 IP、书签直连、APP 里写死 IP 的——旧服务器继续跑着(限流模式)过渡

4.3 HTTPS 配置

高防上配置证书(或回源 HTTPS + 高防统一管理证书):

# 回源 HTTPS:源站也要有证书,可用自签(CDN/高防到源站是私有链路)
openssl req -x509 -nodes -days 3650 -newkey rsa:2048 \
  -keyout /etc/nginx/ssl/origin.key -out /etc/nginx/ssl/origin.crt \
  -subj "/CN=z0w.cn"

证书链完整性和回源 TLS 细节见SSL 完全指南。

五、第五阶段:迁移后检查清单

切完流量,逐项打勾:

□ dig z0w.cn → 高防 IP ✓
□ 首页/内页/API 全部正常(登录态、支付流程重点测)
□ 高防后台「回源流量」有数据且稳定
□ 源站 Nginx 日志的客户端 IP 是高防回源 IP(不是真实用户 IP——真实 IP 在 X-Forwarded-For 头)
□ 直接用源站 IP 访问 → 被拒(白名单生效)
□ 裸 IP + 错误 Host 访问 → 444
□ HTTPS 证书链完整(浏览器无警告)
□ 邮件服务正常(如果源站兼邮件,确认没被白名单误伤)
□ 备份任务继续跑(迁移可能改了路径)
□ 监控告警正常(盯源站带宽和 CPU)

日志 IP 问题的处理(常见坑):切高防后 Nginx 日志全变成高防 IP,统计和 fail2ban 全失效。解法就是上面配置里的 set_real_ip_from + real_ip_header——把真实 IP 从 X-Forwarded-For 还原出来(日志分析有校验方法)。

六、NAT 型源站的迁移要点

源站是 NAT 型(无独立公网 IP)时,架构略有不同:

高防转发 IP:80 → 回源到 NAT 网关公网IP:映射端口 → 内网源站

要点:

  1. 回源填网关 IP + 映射端口,不是内网 IP
  2. HTTPS 端口映射:443 的映射要单独开通(NAT 商家默认可能只给 80)
  3. 游戏服连续端口段:NAT 映射要确认能拿到连续段(Rust 的 28015/28016、MC Java 的 25565 + RCON)
  4. 网关带宽:NAT 网关的带宽上限就是回源带宽上限——回源流量大时确认网关不拥塞

NAT 型 + 高防是源站隐藏的性价比组合:源站压根没有公网 IP,攻击者扫不到(源站隐藏)。

七、攻击进行中的特殊操作

如果迁移发生在攻击进行中,额外注意:

  1. 先切 DNS 再迁移也行:TTL 300 的话 10 分钟内流量全到高防,攻击流量被引走,源站反而解脱了——这叫「引流」,是攻击中的标准操作
  2. 快照要在攻击前做:攻击中做快照可能拿到「已被打崩的状态」
  3. 观察期缩短:攻击不等人,功能验证挑核心路径(支付/登录/首页),非核心事后补测
  4. 保留攻击证据:切流前把日志打包一份(攻击源 IP、时间、特征),后续报警/复盘用

八、迁移后复盘

攻击过去后,花 30 分钟复盘,决定下一步投入:

复盘项行动
攻击类型和量级记录,指导防护档位(买高了降,买低了升)
高防表现误杀多吗?告警及时吗?黑洞了吗?→ 决定续费/换商家
暴露面子域名查了吗?证书查了吗?邮件分离了吗?
业务损失掉多少用户/订单 → 评估值不值得加预算
应急预案这次手忙脚乱的地方,写进 SOP(应急手册)

攻击者会回头——这次扛过去了,把复盘做扎实,下次就是按预案 10 分钟解决。

九、小结

迁移高防的五阶段:确认止血 → 备份快照 → 接入高防(先白名单后切流)→ DNS 灰度切换 → 检查清单验收。核心原则:任何阶段都有回滚路径(快照 + 旧 IP 保留),源站白名单必须先于流量切换生效。迁移不是终点,攻击后的复盘和预案才是从「被动挨打」到「运营防护」的分水岭。


相关阅读:


本文由财富云计算整理,我们提供高防服务器、CDN 防护与 NAT 型云服务器,无独立公网 IP 机型价格比独立 IP 省一半以上,攻击中需要紧急协助的联系我们。更多教程见端口速查表。
延伸阅读
  1. 高防误区与避坑清单:25 个坑+下单前必问 14 问+到货验货流程
  2. DNS 攻击防护专题:劫持、隧道、投毒、放大四类攻击与 DNSSEC
  3. 电商大促防攻击预案:T-14 到当天的分级响应与降级开关
  4. 源站真实 IP 隐藏完全指南:六大暴露面排查+NAT 型终极方案
  5. 日志分析找攻击源:Nginx 日志三维度分析法与证据固定
  6. 攻击应急响应手册:六阶段响应流程,从确认到复盘的照做清单
  7. iptables 抗 DDoS 配置模板:状态过滤+SYN 防护+防扫描+游戏服版
  8. OpenResty Lua 自研 WAF:动态限流+攻击特征检测+Redis 黑名单
更多阅读
  1. 上一篇:高防 CDN 和单机高防怎么选:按协议分流,一张决策图+三套方案
  2. 下一篇:游戏服高防方案:UDP 清洗、端口规划、RCON 保护、NAT 型架构
发表评论 6