1.
选购与网络布局建议
- 确认提供商是否有“高防IP/高防方案”(按分钟/按流量计费),优选具备本地香港机房和海外骨干链路的供应商。
- 带宽判定:基于业务峰值并预留2-3倍冗余,例如日常10Gbps流量,建议选择至少20~30Gbps防护带宽或使用按攻击带宽切换的高防策略。
- 购买建议:购买公网独立IP段并启用BGP清洗或CDN+高防回源;对延迟敏感业务可考虑多线接入(电信/联通/移动/港澳直连)。
2.
机房与物理托管部署步骤
- 准备:确认机架、电源冗余(A/B电源)、远程KVM/IPMI可用,获取控制台账号。
- 上机安装系统:通过IPMI挂载ISO,安装标准CentOS/Ubuntu LTS;在安装引导时分区建议:/boot 1G、swap按RAM、/ 40G、/var/log单独分区(>=20G)。
- 启用IPMI安全:修改默认密码,限制管理网段访问,若支持,启用双因素认证。
3.
操作系统硬化与网络基础配置
- 更新系统与安装常用工具:apt/yum update; 安装ntp/chrony、fail2ban、unzip、vim。
- 系统参数(/etc/sysctl.conf)关键项:net.netfilter.nf_conntrack_max=131072;net.ipv4.tcp_tw_reuse=1;net.ipv4.tcp_syncookies=1;应用:sysctl -p。
- 关闭不必要服务:systemctl disable --now telnet rsh rpcbind;限制root SSH登录(/etc/ssh/sshd_config PermitRootLogin no, PasswordAuthentication no)。
4.
防护策略:防DDoS与网络层规则
- 首选使用机房/供应商的清洗服务并开启黑洞/告警策略;若支持按峰值自动扩容,请开启。
- 边界防火墙(iptables示例):iptables -F; iptables -N SYNPROTECT; iptables -A INPUT -p tcp --syn -m limit --limit 10/s --limit-burst 20 -j ACCEPT; 其他超限则DROP。保存:iptables-save >/etc/iptables/rules.v4。
- 对UDP反射端口(53/123/161/1900等)设置ACL或在服务端启用速率限制,必要时在服务端关闭不必要的UDP服务。
5.
应用层加固与Web防护
- 使用Nginx/HAProxy作为反向代理,启用限速(limit_conn, limit_req)并部署WAF(ModSecurity或商用WAF)。示例Nginx限速:limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;。
- 强制HTTPS(TLS1.2/1.3),使用证书自动化(certbot)并启用OCSP stapling与HSTS。
- 对接口启用签名/时间戳策略并对异常请求进行白名单/黑名单处理,记录所有拒绝事件到独立日志。
6.
入侵检测与自动阻断(Fail2ban/PSAD)
- Fail2ban安装并配置jail.local示例(/etc/fail2ban/jail.local):[sshd] enabled = true; port = ssh; filter = sshd; maxretry = 3; bantime = 3600。启动:systemctl enable --now fail2ban。
- 部署PSAD监控iptables异常扫描行为,结合邮件告警或Webhook触发自动化脚本拉黑源IP到黑名单。
7.
集中日志与日志轮转配置
- 本地日志保护:将/var/log独立分区并配置logrotate(/etc/logrotate.d/)保留周期与压缩策略,示例每周rotate并保留4周。
- 集中采集:推荐采用Filebeat/rsyslog将日志推送到集中日志服务器或ELK/Opensearch集群,启用TLS通道(Filebeat->Logstash TLS)。Filebeat简单配置:filebeat.inputs: - type: log paths: - /var/log/nginx/*.log。
- 防篡改:对关键日志启用只追加权限并启用auditd记录关键命令执行(/etc/audit/audit.rules)。
8.
监控体系:Prometheus+Grafana+Alertmanager实操
- 部署node_exporter:下载并部署systemd服务;systemctl enable --now node_exporter。
- Prometheus抓取配置(prometheus.yml)示例:- job_name: 'node' static_configs: - targets: ['server_ip:9100']。启动后访问 /targets 检查。
- Grafana导入仪表盘(node exporter full),并在Alertmanager配置常见告警(CPU>90% 5m、网络带宽异常、磁盘使用>85%),通过邮件/Slack/Webhook通知运维。示例简单PromQL:avg_over_time(node_network_receive_bytes_total[5m])。
9.
日志搜索与问题定位(ELK/Loki)
- 若使用ELK:Logstash做解析,Elasticsearch做索引,Kibana做可视化。常见pipeline:nginx access解析、json字段提取、geoip enrich。
- 若倾向轻量方案,用Loki+Promtail与Grafana集成,Promtail采集多主机日志并按labels索引,便于按tag快速定位异常请求。
- 保证索引策略与冷存储:热数据1周、冷数据按天打包后迁移到对象存储以节约成本。
10.
运维演练与RPO/RTO规划
- 演练清单:DDoS攻击演练(切换清洗、回源验证)、主机级故障演练(换机/快照恢复)、日志链路断链恢复。每季度至少一次。
- 制定RPO(数据可接受丢失时间)与RTO(恢复时间),备份数据库使用定期快照+增量日志传输到异地,关键业务实现热备或多活。
11.
常用脚本与自动化建议
- 自动拉黑脚本(示例): 检查超过阈值的IP并写入iptables或防火墙API:/usr/local/bin/block_attack.sh。安排cron每5分钟执行并生成报告。
- 基础自动化:使用Ansible管理配置一致性(ssh key分发、sysctl、防火墙规则、监控agent安装),便于大规模托管运维。
12.
合规与安全事件响应流程
- 制定应急响应流程:发现-分级-隔离-恢复-复盘;明确联系人、工单通道与法务/供应商联络方式。
- 日志保留满足合规要求(金融/医疗等行业),并在发生事件后保全日志快照,避免被覆盖。
13.
问:高防香港服务器首次上线前哪些必须检查?
问:上线前检查清单:网络带宽与高防套餐是否生效、BGP/清洗策略是否配置完成、IP白名单与管理通道(IPMI/SSH)是否限制、日志收集管道是否接通、监控dashboards与告警是否就绪、备份与快照策略是否存在。
14.
问:如何快速判断是否遭到DDoS攻击及临时处置?
问:通过监控看流量突增(NIC速率/连接数/异常端口),以及用户端大量超时与后端错误;临时处置:启用供应商清洗/切换到高防IP、在边界限速并拉黑异常源、关闭非必要UDP端口、切换到缓存或降级页面以减少原站压力。
15.
问:日志丢失或采集异常如何排查?
问:先从agent(Filebeat/Promtail)状态和本地磁盘检查(df -h、inode),查看agent日志(/var/log/filebeat/filebeat.log),确认转发目标可达(telnet es_host 5044),检查TLS证书是否过期及logrotate是否误删了活跃日志;修复后通过重放历史文件补齐索引。
来源:高防香港服务器托管部署注意事项运维与日志监控建议