VPS 安全:服务器配置与防护实战
VPS 上线几分钟就会被自动扫描。可靠防护不是换一个 SSH 端口,而是最小权限、及时更新、受控网络、异地备份与能及时发现异常的监控。

先确定要保护什么
列出数据、服务、管理员、用户和外部依赖,并思考账号被盗、漏洞利用、误删、勒索、DDoS 与服务商故障的影响。不同项目重点不同:博客要保护内容与域名,商店还涉及订单和个人数据,VPN 则应保护密钥与访问日志。
同时确定恢复目标:允许丢多少数据、多久恢复,以及谁有权限采取紧急操作。无法恢复的“安全服务器”仍然不可靠。
拿到 VPS 后第一小时要做什么
- 从控制面板确认镜像来源和初始访问方式。
- 更新系统并重启需要新内核的主机。
- 创建独立管理员用户,配置 SSH 密钥与 sudo。
- 在新会话验证登录后,再禁用 root 和密码登录。
- 启用默认拒绝的防火墙,只开放必要端口。
- 配置自动安全更新、时间同步、日志和基础监控。
- 建立第一份异地备份并记录恢复方式。
安全的 SSH 访问
每位管理员使用独立密钥,私钥应有密码并妥善保存。离职或设备丢失时删除对应公钥,不要共享一个 root 密钥。限制 AllowUsers,关闭空密码和不需要的转发功能;高价值环境可通过 VPN、堡垒机或 IP 白名单访问。
更换端口只能减少日志噪声,不是主要防护。Fail2ban 可抑制暴力尝试,但强密钥、最小权限和补丁更重要。
防火墙与最小攻击面
只公开用户真正需要的服务。数据库、Redis、Docker API 和管理面板不应直接暴露互联网;让它们监听 localhost、私有网络或经 VPN 访问。IPv6 也要配置规则,不能只保护 IPv4。
| 端口/服务 | 建议 | 风险 |
|---|---|---|
| SSH | 密钥、限制来源或 VPN | 账号暴力尝试 |
| HTTP/HTTPS | 仅 80/443,经反向代理 | Web 漏洞与 DDoS |
| 数据库 | 仅本机或私网 | 数据泄露与弱口令 |
| 管理面板 | VPN、MFA、限制来源 | 高权限入口 |
如何更新而不意外停机
启用安全更新,但区分可自动安装的小补丁与需要重启、数据库迁移的重大升级。订阅发行版和应用安全公告,在测试环境演练。更新前确认备份有效、磁盘有余量、回滚路径明确。
不要长期使用停止维护的系统或运行时。比“永不更新”更安全的是小批量、可观察、可回滚地频繁更新。
权限、密钥与应用防护
- 每个应用使用独立非 root 用户与数据库账号。
- secret 不写进镜像、仓库、命令行历史或公开日志。
- 文件默认不可写,仅给 uploads 等目录必要权限。
- HTTPS 使用受信证书并自动续期。
- 对登录和敏感操作启用 MFA、限流和审计。
- 依赖固定版本并定期扫描已知漏洞。
- Web 应用即使有 WAF 也必须修复代码漏洞。
如何知道防护正在工作
监控可用性、CPU、内存、磁盘、网络、5xx、登录失败、权限变更和新开放端口。将告警发到服务器之外,避免主机故障时一起丢失。日志设置轮转、保留和访问控制,并统一时间。
建立基线比收集所有日志更重要。异常流量、突然增加的进程、未知用户、定时任务变化或出站连接都值得调查。定期从干净环境恢复备份并复核权限。
VPS 所有者的典型错误
- 先关闭旧 SSH 登录再验证新密钥。容易把自己锁在服务器外。
- 数据库监听公网。弱口令会迅速被扫描。
- 把 secret 提交到 Git。删除文件并不能从历史中清除泄露。
- 所有应用以 root 运行。单个漏洞即可控制主机。
- 只依赖服务商快照。账号或区域故障会同时影响副本。
- 没有磁盘告警。日志写满磁盘后数据库和备份都会失败。
- 认为 CDN 等于 DDoS 全防护。源站暴露或非 HTTP 攻击仍有风险。
最终检查清单
- 管理员使用独立密钥和最小 sudo 权限。
- 系统、运行时和应用处于支持周期。
- 防火墙覆盖 IPv4/IPv6,仅开放必要服务。
- 数据库和管理接口不直接暴露公网。
- 异地加密备份已成功恢复测试。
- 可用性、资源、证书、备份与异常登录均有告警。
- 事件响应、密钥轮换和回滚步骤已有记录。
常见问题
Linux VPS 需要杀毒软件吗?
视用途而定。文件上传、邮件或 Windows 文件交换可能需要扫描,但杀毒不能替代补丁、最小权限和隔离。
只更换 SSH 端口够吗?
不够。它只减少自动日志噪声,密钥认证、禁止 root、限制网络与及时更新才是核心。
多久备份一次?
由可接受的数据丢失量决定。频繁写入的商店可能每小时或持续备份,静态站每天即可;都要定期测试恢复。
能自己完全抵御 DDoS 吗?
大流量攻击会在到达 VPS 前占满上游带宽,需要服务商或专业清洗。你仍应隐藏源站、限流并准备应急方案。
