1.
准备与购买
购买前准备与注意事项:
- 在 Cera 控制面板选择香港节点并确认支持“原生 IP/本地网段”选项。
- 选择支持高防(DDoS Mitigation)套餐并记录管理面板提供的控制带宽与清洗阈值。
- 准备一个干净的 SSH 密钥对,确保供应商允许自定义密钥或密码登录。
2.
开通与分配原生 IP 的核验
确认 IP 为“原生”步骤:
- 在面板分配 IP 后,通过控制面板查看 ASN/网段信息。
- 在本地执行 traceroute -n
与 ping,确认节点跳数和路由是否直连香港出口。
- 使用 whois 或 ipinfo.io/ 核验归属是否为 Cera 提供的真实网段。
3.
系统初始化(以 Ubuntu 22.04 为例)
基础配置命令:
- apt update && apt upgrade -y
- 添加用户并设置 SSH:adduser deploy && usermod -aG sudo deploy
- 配置 SSH:编辑 /etc/ssh/sshd_config,禁用密码登录(PasswordAuthentication no),重启 systemctl restart sshd
4.
网络与路由配置(多 IP 或别名)
配置额外原生 IP:
- 编辑 /etc/netplan/00-installer-config.yaml(Ubuntu)或 /etc/network/interfaces(Debian legacy)。
- netplan 示例:addresses: [主IP/掩码, 别名IP/掩码]; gateway4: <网关IP>; 然后 sudo netplan apply。
- 使用 ip addr show 确认别名已生效,使用 ip route show 确认默认路由正确。
5.
检测 IP 是否被清洗或限速
测试数据包完整性与带宽:
- 使用 mtr -r -c 100 <目标> 检查丢包点,若在本地出口即是被清洗。
- 使用 iperf3 做吞吐测试:在本地或同机房节点搭建 iperf3 server。
- 与提供商沟通清洗阈值并记录清洗触发时的流量曲线。
6.
安装与配置高防相关软件
常用工具与策略:
- 安装 fail2ban:apt install fail2ban,配置 /etc/fail2ban/jail.local 针对 ssh/nginx。
- 安装 suricata 或 psad 做流量告警,能实时告警异常连接。
- 若支持 BGP/Anycast,由供应商配置 Anycast 宣告以提升高防效果(一般需与 Cera 技术支持配合)。
7.
iptables / nftables 基本规则
防止 SYN 洪水与伪造包:
- iptables 示例(SYN 保护):iptables -N SYN_FLOOD && iptables -A INPUT -p tcp --syn -m limit --limit 10/s --limit-burst 20 -j RETURN && iptables -A INPUT -p tcp --syn -j DROP
- 阻断私有网段伪造:iptables -A INPUT -s 10.0.0.0/8 -j DROP(保留合法内网规则)。
- 可替换为 nftables,如 nft add table inet filter 等,多核性能更好。
8.
conntrack 与系统内核调整
优化连接跟踪与内核参数:
- 临时调整:sysctl -w net.netfilter.nf_conntrack_max=2621440
- 永久添加到 /etc/sysctl.conf:net.ipv4.tcp_syncookies=1, net.ipv4.tcp_max_syn_backlog=4096, net.core.somaxconn=1024
- 重启生效:sysctl -p
9.
tc (traffic control) 限速与形状化
控制入口/出口流量防止单源洪泛:
- 基本限速命令(示例限制 eth0 出口到 100mbit):tc qdisc add dev eth0 root handle 1: htb default 10; tc class add dev eth0 parent 1: classid 1:1 htb rate 100mbit; tc class add dev eth0 parent 1:1 classid 1:10 htb rate 100mbit
- 对单个 IP 限制并阻断异常连接可结合 u32 或 fw 筛选器:tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dst flowid 1:10
- 使用 ifb 与 ingress 重写入站限速。
10.
nginx 与应用层限流
防止应用被耗尽资源:
- 安装 nginx 并在 server 或 location 中启用 limit_conn、limit_req:limit_conn_zone $binary_remote_addr zone=addr:10m; limit_conn addr 10; limit_req_zone $binary_remote_addr zone=req:10m rate=10r/s; limit_req zone=req burst=20 nodelay
- 在高并发场景下结合缓存与静态化,减轻后端压力。
11.
使用 ipset 与 geoip 筛选高风险流量
快速黑名单与地理阻断:
- 安装 ipset:apt install ipset,创建集合 ipset create blacklist hash:ip。
- 将集合引用到 iptables:iptables -I INPUT -m set --match-set blacklist src -j DROP。
- 使用 geoip2 匹配国家并拒绝异常来源,或者把某些国家加入 ipset。
12.
监控与告警策略
实时告警与日志分析:
- 部署 Prometheus + Grafana 监控网络接口、conntrack、负载、带宽。
- 日志集中:rsyslog/ELK 收集 nginx、iptables 日志,配置异常流量阈值报警。
- 与 Cera 支持建立告警渠道,遇到超阈攻击及时申请清洗升级。
13.
常见故障排查步骤
遇到连不上或速度慢的排查思路:
- 检查本地与 VPS 的 traceroute,确认丢包位置。
- 检查 iptables/nftables 规则是否误杀:iptables -L -n -v;临时 flush 规则测试连通。
- 检查 conntrack 是否耗尽:cat /proc/sys/net/netfilter/nf_conntrack_count 与 nf_conntrack_max。
14.
备份与恢复
保证规则与配置可恢复:
- 导出 iptables:iptables-save > /root/iptables.backup,恢复 iptables-restore < /root/iptables.backup。
- 导出 netplan 或 /etc/network/interfaces 配置并把密钥、证书也放到安全备份。
- 定期演练恢复流程,确保在攻击或误配置时能快速回滚。
15.
法律与合规提示
合规使用与供应商沟通:
- 香港与国际间对滥用 IP 有法律限制,避免将原生 IP 用于违法用途。
- 遇到持续大规模流量,及时与 Cera 技术支持沟通请求更高级别清洗或流量迁移。
16.
问:如何确认我的 Cera VPS IP 是“原生”而非 NAT/共享IP?
16. 答:使用 whois 查询 IP 所属与 ASN,并通过 traceroute 查看第一跳是否为供应商骨干网;若面板显示“原生/本地网段”并且能直接绑定到网卡且能独占路由,则为原生 IP。如有疑问请把 traceroute 结果提供给 Cera 支持核验。
17.
问:在遭受大流量攻击时我该优先采取哪些操作?
17. 答:第一步启用供应商的清洗/加固服务并提交攻击流量样本;第二步在 VPS 端限制连接速率(iptables/nftables + nginx);第三步启用 tc 限速与 ipset 黑名单,第四步开启告警并记录日志以便证据保留。
18.
问:是否推荐在高防 VPS 上使用云端 CDN 结合本地高防?
18. 答:推荐。CDN 能在更上游缓存静态内容并吸收大流量攻击,结合 Cera 的清洗可双层保护。注意 DNS、证书与回源设置(回源 IP 需为 Cera 提供的白名单或内网地址),并测试回源链路是否会成为瓶颈。
来源:香港cera高防vps原生ip部署指南与流量控制技巧