本文目录导读:

WordPress 作为全球使用率最高的 CMS(内容管理系统),其安全性至关重要,由于其开源特性和庞大的插件/主题生态,它也是黑客攻击的主要目标。
以下是一套从低到高、从基础到进阶的 WordPress 安全加固与防护措施,覆盖服务器环境、核心配置、用户管理、插件/主题、数据备份五大维度。
第一阶段:基础必做(消除常见漏洞)
这些措施成本最低,能阻挡 90% 的自动化攻击。
核心文件与目录权限(最关键)
- 文件权限: 所有文件设置为
644,目录设置为755。 - 根目录权限:
wp-config.php设置为600(仅所有者可读写)。 - 禁止直接访问: 在
.htaccess或nginx.conf中禁止直接访问wp-admin/includes/和wp-content/uploads/目录下的 PHP 文件。
数据库与用户安全
- 数据库前缀: 安装时默认前缀为
wp_,不要使用,改为随机字符串(如a1b2c3_)。 - 数据库密码: 使用强密码(>16位,包含大小写、数字、特殊字符)。
- 用户表: 尽量避免使用
admin作为用户名,或删除默认的admin用户。
更新管理
- 核心、插件、主题: 保持 最新版本,这是防御已知漏洞最有效的手段。
- 自动更新: 开启次要版本和关键安全更新自动推送(默认通常是开启的)。
第二阶段:进阶加固(防御针对性攻击)
登录与用户管理
- 双因素认证 (2FA/MFA): 强制管理员使用 Google Authenticator、Duo 等插件。这是防止密码泄露后网站被接管的最佳手段。
- 限制登录尝试: 安装插件(如 Limit Login Attempts Reloaded)限制单 IP 或用户名的失败次数,防止暴力破解。
- 防止用户名泄露: 禁止通过
/wp-json/wp/v2/users/1这样的 REST API 端点枚举用户名,可以在.htaccess或插件中禁用 REST API 的公开访问。 - 强密码策略: 强制所有用户使用复杂密码,定期更换。
隐藏与欺骗技术
- 隐藏版本号: 移除 WordPress 版本号(
remove_action('wp_head', 'wp_generator');),防止黑客针对特定版本攻击。 - 更改登录地址: 将默认的
/wp-login.php或/wp-admin修改为自定义路径(如/mysecretlogin)。需配合插件或代码实现。 - 禁用 XML-RPC: 这个协议常被用于 DDoS 攻击和暴力破解,如在
.htaccess中禁用xmlrpc.php的访问。
文件上传与执行限制
- 禁止执行 PHP: 在
wp-content/uploads/目录的.htaccess中添加:<Files *.php> deny from all </Files>
- 限制上传文件类型: 只允许上传图片、PDF、ZIP 等必要类型,禁止上传 .svg(可注入恶意代码)、.php、.exe。
安全标头(HTTP Headers)
在 .htaccess 或 nginx 配置中添加:
- X-Frame-Options:
SAMEORIGIN(防止点击劫持) - X-Content-Type-Options:
nosniff(防止 MIME 类型混淆攻击) - Strict-Transport-Security:
max-age=31536000; includeSubDomains(强制 HTTPS) - Content-Security-Policy: 严格定义可加载资源的白名单(防止 XSS 和数据注入)
第三阶段:高级防护(云端与基础设施)
服务器级安全
- 使用防火墙(WAF): 推荐 Cloudflare(免费版也有基础防护)或 Sucuri,能有效过滤 SQL 注入、XSS、DDoS 攻击。
- 禁用不必要服务: 在服务器上禁用
file_edito(禁用插件/主题在线编辑器,防止后台被黑后直接写马)、allow_url_fopen、register_globals。 - 使用 HTTPS: 强制全站 SSL/TLS 加密通信,使用 Let‘s Encrypt 免费证书。
插件与主题的“毒理学”
- 来源: 只从 WordPress.org 官方仓库、CodeCanyon 等信誉好的平台下载。避免使用“破解版”插件,它们几乎都含有后门。
- 数量: 只保留必要插件,删除所有不用的插件和主题。
- 审计: 定期检查插件是否长时间不更新或有已知漏洞报告,可使用 WPScan 扫描。
备份(最后的救命稻草)
- 频率: 数据库每日备份(建议增量),文件每周备份。
- 存储: 3-2-1 原则:本地 1 份 + 远程(云存储如 S3、Dropbox)2 份。
- 恢复测试: 至少每季度做一次完整的恢复演练,确保备份文件有效。
第四阶段:监控与应急响应
启用日志与审计
- 文件完整性检查: 使用 Wordfence、iThemes Security 等插件(免费版也有)监控核心文件、插件文件的哈希值变化,发现异常修改立即告警。
- 登录日志: 记录所有成功/失败登录,追踪可疑 IP。
定期安全扫描
- 使用工具: Sucuri SiteCheck、Wordfence 扫描、Quttera Web Malware Scanner。
- 恶意文件、后门(eval、base64_decode、system 等危险函数)、被篡改的页面、SEO 垃圾注入。
安全是动态的,不是一次性的
最低成本但最有效的三步:
- 更新(核心、插件、主题)
- 强密码 + 双因素认证(2FA)
- 限制登录尝试
中大型网站建议的方案:
- 前端防护: Cloudflare(CDN + WAF)
- 插件组合: Wordfence Security(防火墙+扫描) + Limit Login Attempts(登录限制) + UpdraftPlus(备份)
- 代码级: 隐藏版本号 + 禁止文件直接执行 + 修改登录地址
- 定期巡检: 每月一次漏洞扫描 + 每季度一次恢复演练
常见误区:
- 只靠插件,不修改服务器配置。
- 不更新插件/主题,认为“稳定最重要”。
- 使用弱密码或共享密码。
- 忽视子站点的安全(如多站点中的低权限用户被攻破)。
如果需要针对特定场景(比如商城网站 WooCommerce、企业站)或遇到具体问题,可以进一步细化方案。