1.
概述:为什么针对台湾VPS需要特别加固
- 台湾VPS通常提供原生公网IPv4/IPv6,暴露面更大,需要严格访问控制。
- 本手册覆盖系统加固、网络防护、DDoS 缓解与备份恢复流程。
- 目标读者:运维、开发者与中小型 SaaS/电商在台部署负责人。
- 假设环境示例:Ubuntu 20.04 LTS,4 vCPU,8GB RAM,40GB SSD,公网IP 198.51.100.10 和 IPv6 2001:db8::10。
- 本文兼顾命令示例与策略落地,便于复制到生产环境。
2.
基础主机加固步骤(SSH、用户与权限)
- 禁用 root 远程登录:编辑 /etc/ssh/sshd_config,设置 PermitRootLogin no,并重启 sshd。
- 修改默认端口示例:将 SSH 端口改为 2222,配置 Firewall 与 fail2ban。命令示例:ufw allow 2222/tcp。
- 创建管理用户并限制 sudo:adduser ops,usermod -aG sudo ops,并用 chage 设置密码策略。
- 安装并配置 fail2ban:示例 jail.local 针对 sshd:maxretry=5,bantime=3600。
- 文件完整性与恶意软件检测:安装 AIDE 与 rkhunter,cron 每日检查并邮件告警。
3.
网络层安全:iptables/nftables 与 sysctl 优化
- 基本防护:仅开放必要端口(80/443、2222、443/tcp),DROP 其它入站流量。
- 示例 iptables 规则:iptables -A INPUT -p tcp --dport 2222 -m connlimit --connlimit-above 10 -j REJECT。
- conntrack 与内核调整:sysctl 设置示例:net.netfilter.nf_conntrack_max=262144;net.core.somaxconn=1024;net.ipv4.tcp_fin_timeout=15。
- SYN Flood 防护:开启 SYN cookies:net.ipv4.tcp_syncookies=1。
- 日志与告警:使用 fail2ban + logwatch,异常流量触发告警并自动封禁来源 IP。
4.
应用层防护与 CDN/DDoS 缓解部署
- 强烈建议前置 CDN(如 Cloudflare)做引流与 Web 应用防火墙(WAF)。
- 常规规则:开启速率限制、JS 挑战与 Bot 管控,减小直接打到源站流量。
- DDoS 峰值示例:某台北电商遭遇 UDP 放大攻击,峰值约 180 Gbps,未启用 CDN 时源站掉线。
- 缓解后效果:启用 Cloudflare 与 provider 清洗后,打到源站的流量降至 2-5 Gbps,后端防护可承受。
- 结合 ISP 提供商(null-route、scrubbing)与上游 ACL 进行联合防护。
5.
服务与软件层强化(Web、数据库、证书管理)
- Web 服务器建议使用 Nginx,启用 TLS 1.2/1.3,仅允许强密码套件,并配置 HSTS。
- 自动化证书:使用 certbot 自动续期,示例 crontab:0 3 * * * certbot renew --quiet。
- 数据库访问控制:MySQL 绑定本地 127.0.0.1 或私有网段,使用强密码与最小权限账号。
- 应用日志审计:开启 access_log/error_log,结合 ELK 或自建 Graylog 做攻防分析。
- 限速与连接池:针对高并发配置 PHP-FPM/nginx worker_connections 与 upstream keepalive。
6.
备份策略与恢复流程(实用示例)
- 备份分层:每日增量、每周全备、每月归档;保留策略 30 天/12 周/12 个月。
- 工具建议:restic 或 BorgBackup(去重、加密、远程存储)。示例 restic cron:0 2 * * * /usr/bin/restic backup /var/www --tag daily。
- 远端备份目标:SFTP 或对象存储(示例 host backup.example.net:22,带宽 200 Mbps)。
- 恢复演练:每月做 1 次 restore 演练,验证数据库一致性与文件权限。
- 快速恢复要求:制定 RTO(恢复时间目标)与 RPO(恢复点目标),示例 RTO=1 小时,RPO=15 分钟(使用二进制日志或增量备份)。
7.
快照与镜像策略(云主机特有功能)
- 使用云平台快照做短期恢复点:每日凌晨创建快照,快照保留 7 天。
- 镜像制作:在重大升级前制作完整镜像(镜像保存至少 30 天)。
- 磁盘与 IOPS 管理:测试快照恢复后性能,确保磁盘类型(SSD vs NVMe)满足 IOPS 要求。
- 自动化:通过 API 调用自动创建/删除快照,并将元数据写入监控系统。
- 成本控制:统计快照占用空间并归档旧快照到冷存储。
8.
真实案例:台北某电商 VPS 防护与备份落地
- 背景:单台台湾 VPS(配置见下表)用于电商前端,日峰值并发 5k+。
- 问题:遭遇 L7 突发流量与频繁扫描,导致 CPU 与 I/O 飙升。
- 解决方案:启用 Cloudflare、Nginx 缓存、限流规则及后端 rate-limit,数据库读写分离。
- 备份策略:采用 restic 增量备份到异地 SFTP,主库启用 binlog 每 5 分钟推送备份。
- 成果:攻击发生时站点可用率维持 99.5%,备份恢复在 35 分钟内完成,满足 RTO 1 小时目标。
9.
示例配置表:VPS 配置与备份计划
| 项 | 示例值 |
| 公网 IPv4 | 198.51.100.10 |
| IPv6 | 2001:db8::10 |
| CPU / RAM / 磁盘 | 4 vCPU / 8GB / 40GB SSD |
| 带宽 | 1 Gbps 公网,月流量上限 5TB |
| 备份策略 | 每日增量(restic)、每周全备、保留 30/90/365 |
- 表格中示例配置适合中小型电商与 SaaS 服务起步阶段。
10.
运维建议与常见检查清单
- 日常检查:磁盘使用率、内存/CPU、conntrack 使用、异常登录日志。
- 安全巡检:每周更新包(apt update && apt upgrade),及时打补丁。
- 网络检测:定期进行端口扫描与应急压测(非高峰时段)。
- 备份验证:每周一次恢复演练并记录恢复时间与数据完整性。
- 文档化:将所有脚本、cron、API key 管理、紧急联系清单写入运维手册并加密存储。
来源:台湾vps原生ip 云主机安全加固与备份策略实用手册