WordPress服务器安全组需要开放的端口清单
结论: 搭建WordPress网站时,安全组至少需要开放80(HTTP)、443(HTTPS)、22(SSH)端口,MySQL数据库若与Web服务同服务器则需开放3306端口,但建议通过内网访问以提升安全性。
必须开放的核心端口
-
80端口(HTTP)
- 用于未加密的Web流量访问,所有浏览器默认通过该端口访问网站。
- 注意: 若未配置HTTPS,用户数据将以明文传输,存在安全风险。
-
443端口(HTTPS)
- 必须强制启用,用于加密的Web流量(SSL/TLS)。
- 通过Let's Encrypt等工具免费获取证书,提升安全性并避免浏览器警告。
-
22端口(SSH)
- 用于远程管理服务器(如通过PuTTY或终端)。
- 强烈建议 限制访问IP(如仅允许办公网络或X_X),或改用密钥认证替代密码登录。
可选端口(根据架构决定)
-
3306端口(MySQL/MariaDB)
- 仅当数据库与Web服务分离时需开放,允许Web服务器连接远程数据库。
- 最佳实践: 同区域服务器间通过内网通信(如AWS的VPC内网、阿里云的专有网络),避免暴露3306到公网。
-
21端口(FTP)或自定义端口(SFTP/SSH)
- 用于文件上传(如插件/主题管理),但FTP明文传输不安全。
- 推荐替代方案: 使用SFTP(基于SSH的22端口)或rsync。
需关闭的高风险端口
-
25端口(SMTP)
- 除非自建邮件服务器,否则无需开放。WordPress发信建议通过API(如SMTP2GO)或第三方服务(Mailchimp)。
-
3389端口(RDP)
- Windows服务器专用,Linux服务器无需开放,避免暴力破解风险。
安全强化建议
-
最小化开放原则
- 仅开放必要端口,其他一律默认拒绝(Deny All)。
- 例如:测试环境完成后关闭8080、8888等临时端口。
-
IP白名单限制
- 对SSH(22)、数据库(3306)等管理端口,仅允许可信IP访问。
-
防火墙工具补充
- 使用
ufw(Linux)或云平台WAF,例如:sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw enable
- 使用
-
定期端口扫描
- 通过
nmap或云安全中心检测异常开放端口,例如:nmap -sV your-server-ip
- 通过
总结
- 核心端口:80、443、22 是WordPress服务器的基本需求,443端口必须强制启用HTTPS。
- 数据库端口3306应避免公网暴露,优先通过内网或SSH隧道连接。
- 安全组配置需遵循“最小权限”原则,结合IP白名单和防火墙工具降低攻击面。
CLOUD云计算