做完本页清单,你的站点可快速提升到“实用级”安全水位:强密码与 2FA、变更登录入口、限速与 WAF、关闭 XML-RPC、代码/数据库最小暴露、持续扫描与告警。
声明
这篇是给“想把坑踩在我脚下”的站长朋友准备的。安全不是一次性操作,而是一套要持续打理的“卫生系统”。攻击者的套路不复杂:
扫描后台与默认登录口暴力破解;爬用户名、撞库;
扫插件/主题/核心的已知漏洞;
滥用 XML-RPC 做暴力/放大攻击;
XSS/SQL 注入、恶意上传、后门主题/插件等;
甚至持续探测你网站的速率上限,以扫描“假装 DDoS” 导致宕机。
这些都是真实发生过的事:安全插件的仪表板基本天天能看到探测与拦截,所以“装了就忘”的神话是不存在的。我们追求的是降低风险、把攻击成本抬高,把损害控制在可承受范围内。
威胁模型与安全目标
主要威胁:暴力破解与撞库、插件/主题漏洞利用、XML-RPC 滥用、XSS/SQLi、恶意上传、弱权限与配置泄露、扫描导致的资源耗尽。
我们的目标:缩小暴露面 + 主动拦截 + 持续监控 + 可恢复。这四件事缺一不可。
基础加固:先把「门窗」关好
更换默认登录路径(用 WPS Hide Login 或代码):
用插件把 /wp-login.php 改成不易猜的路径,暴力破解流量会显著下降。
主题/插件卫生
不用盗版与来源不明的主题/插件;
定期更新核心/插件/主题;
删掉不用的插件/主题,停用 ≠ 删除。
Wordfence安装
如果想在同一插件里做应用层防火墙、限速与扫描,Wordfence 是常用选择。
WordPress后台 -> 插件 -> 安装插件 -> 搜索 Wordfence -> 安装并启用
获取VORDFENCE许可证 -> 选择free版 -> 我可以等待30天以免受新威胁的保护 -> 填入邮箱即可 -> 等待邮件并点击立即安装 -> 填入许可证并安装
左侧菜单栏 -> Wordfence -> 启用自动更新(自定)
此时界面上方出现:“为了使您的网站尽可能安全,请花点时间优化Wordfence Web应用程序防火墙”,此时点击这里配置 -> 继续:一开始将处于学习模式:这允许 Wordfence 了解网站,以便了解如何保护它以及如何允许普通访问者通过防火墙。如果网站受到了攻击,需要手动选择启用和保护模式。
左侧菜单栏 -> Wordfence -> 防火墙 -> 管理防火墙
左侧菜单栏 -> Wordfence -> 扫描 -> 管理扫描 -> 基本扫描类型选项(自定)
左侧菜单栏 -> Wordfence -> 扫描-> 开始新扫描
左侧菜单栏 -> Wordfence -> 工具 -> 实时流量 -> 实时流量选项(自定)
左侧菜单栏 -> Wordfence -> 登录安全性:为这些角色启用双重安全机制 -> 按需要开启2FA
左侧菜单栏 -> Wordfence -> 登录安全性:为这些角色启用双重安全机制 -> 设置 -> 验证码 -> 按需要开启:在登录和用户注册页面上启用reCAPTCHA -> 点击下方的网址 (需要魔法工具)-> 进入网站后点击 Get started -> 填写标签(随意)、reCAPTCHA类型:基于分数(v3)、域名、所有者邮箱后,勾选接受”reCAPTCHA服务条款”后,点击提交,即可获取reCAPTCHA密钥 -> 将密钥分别填入即可(会出现保存配置时发生错误:因为国内访问不了谷歌网站):
WordPress Wordfence 插件中需要替换的文件 :
/wp-content/plugins/wordfence/modules/login-security/classes/controller/wordfencels.php
/wp-content/plugins/wordfence/modules/login-security/classes/controller/settings.php
/wp-content/plugins/wordfence/modules/login-security/classes/controller/captcha.php
将以上文件的www.google.com 换成 www.recaptcha.net -> 点击 保存
左侧菜单栏 -> Wordfence -> 全局选项 -> 需要通过电子邮件通知的选项 -> 将此严重程度以上的扫描结果通知我 -> 中
左侧菜单栏 -> Wordfence -> 全局选项 -> 需要通过电子邮件通知的选项 -> 勾选 当有管理员权限的人登录时提醒我、仅在管理员从新设备或位置登录时提醒我、当非管理员用户登录时提醒我、仅当该用户从新设备或位置登录时才提醒我 -> 右上角 保存更改
左侧菜单栏 -> Wordfence -> 全局选项 -> 常规Wordfence选项 -> 勾选 隐藏WordPress版本 -> 右上角 保存更改
左侧菜单栏 -> Wordfence -> 全局选项 -> 管理防火墙 -> 强力保护 -> 在多少次忘记密码尝试后锁定 -> 改为5次 -> 右上角 保存更改
左侧菜单栏 -> Wordfence -> 全局选项 -> 管理防火墙 -> 限速 -> 可以设置比较严格的参数,我的设置为:
120/每分钟、120/每分钟、60/每分钟、120/每分钟、60/每分钟、2小时 -> 右上角 保存更改
左侧菜单栏 -> Wordfence -> 防火墙 -> 拦截 -> 可以查看拦截的ip
Login Lockdown Protection安装
记录失败登录的 IP 与时间戳,短时间内超过阈值就临时封禁该 IP(段)继续尝试,用来阻断暴力破解。它不是 DDoS 防护工具,定位清晰、开箱即用。
WordPress后台 -> 插件 -> 安装插件 -> 搜索 Login LockDown -> 安装并启用
WordPress后台 -> 设置 -> Login LockDown -> 可以更改参数(其实设置默认参数即可)
WPS Hide Login安装
把默认 /wp-login.php 与 /wp-admin 登录入口改成你自定义的“暗门”,能明显降低批量扫描的命中率。
WordPress后台 -> 插件 -> 安装插件 -> 搜索 WPS Hide Login -> 安装并启用
WordPress后台 -> 设置 -> WPS Hide Login -> 登录地址 -> 可以修改为自己想要的即可(以后登录地址就会发生变化,注意要保存该网站)
— 完 —
