在搭建 WordPress 网站时,如果你使用的是云服务器(如阿里云、腾讯云、AWS 等),需要正确配置安全组规则来开放必要的端口,以确保网站正常运行并兼顾安全性。以下是推荐开放的端口及其用途说明:
✅ 必须开放的端口
| 端口 | 协议 | 用途 | 建议来源IP |
|---|---|---|---|
| 80 | TCP | HTTP 流量,用于访问网站和 Let’s Encrypt SSL 证书申请(ACME 验证) | 0.0.0.0/0(公网访问) |
| 443 | TCP | HTTPS 流量,加密访问网站 | 0.0.0.0/0 |
💡 大多数 WordPress 网站在启用 HTTPS 后仍需保留 80 端口,用于自动跳转到 HTTPS 或证书续期验证。
✅ 可选但常见的端口(根据需求开启)
| 端口 | 协议 | 用途 | 建议来源IP |
|---|---|---|---|
| 22 | TCP | SSH 远程登录服务器(Linux) | 建议限制为你的公网 IP(如 123.123.123.123/32),避免对所有人开放 |
| 3306 | TCP | MySQL 数据库远程访问 | ❌ 不建议开放给公网! 若必须远程管理数据库,应限制为可信 IP,并考虑使用 SSH 隧道或内网连接 |
| 8888 / 8080 / 其他自定义端口 | TCP | 用于宝塔、phpMyAdmin 等面板 | 仅限信任 IP 访问,不建议对 0.0.0.0/0 开放 |
⚠️ 注意:数据库端口(如 3306)默认应只允许本地(127.0.0.1)访问,通过 SSH 隧道或私有网络连接更安全。
❌ 建议关闭或禁止的端口
- 所有未使用的高危端口(如 FTP 21、Telnet 23、RDP 3389 等)
- 避免开放 ICMP(Ping)虽非必要,但可用于探测,可选择性关闭
🔐 安全建议
- 最小权限原则:只开放必需端口。
- 限制 SSH 访问 IP:将 22 端口限制为你的固定公网 IP。
- 使用防火墙工具:
- Linux 上使用
ufw或firewalld做第二层防护。
- Linux 上使用
- 使用 Web 应用防火墙(WAF):
- 如阿里云 WAF、Cloudflare,防御 SQL 注入、XSS 等攻击。
- 定期更新系统与 WordPress 插件,防止已知漏洞被利用。
示例:典型安全组规则(云服务器)
| 类型 | 协议 | 端口范围 | 源地址 | 说明 |
|---|---|---|---|---|
| 自定义 TCP | TCP | 80 | 0.0.0.0/0 | HTTP |
| 自定义 TCP | TCP | 443 | 0.0.0.0/0 | HTTPS |
| 自定义 TCP | TCP | 22 | 你的IP/32 | SSH(仅限你访问) |
| 自定义 TCP | TCP | 3306 | 127.0.0.1 | 仅本地访问 MySQL(或关闭公网) |
若使用宝塔等面板,建议将面板端口(如 8888)绑定到内网或通过反向X_X + 域名 + HTTPS 访问,避免直接暴露。
总结
✅ 推荐开放端口:
- 80 (HTTP)
- 443 (HTTPS)
- 22 (SSH) —— 仅限可信 IP
🚫 尽量不要开放:
- 3306(MySQL)到公网
- 面板端口(如 8888)对所有人开放
🔒 加分项:配合 WAF、定期备份、强密码策略、禁用 root 登录等提升整体安全性。
如有使用 CDN(如 Cloudflare),还可以隐藏源站 IP,进一步增强防护。
如果你使用的是 LNMP、LAMP 或宝塔面板,可以告诉我具体环境,我可以提供更详细的配置建议。
ECLOUD博客