你的 WordPress 网站每天可能被扫描上千次。不是危言耸听——任何一个没打补丁的插件、一个弱密码、一个没关掉的目录浏览,都可能让几个月的心血瞬间归零。
这一份清单,按优先级排列,逐项检查,做完以后基本能防住 90% 的攻击。
一、登录安全(5项)
登录入口是攻击者的首选目标。
- [ ] 1. 禁用 admin 用户名
- 为什么重要:暴力破解的第一步是猜用户名。
admin是默认用户名,攻击者第一个试。 -
怎么配置:新建一个管理员账户(如
你的名字拼音),用新账户登录后删除admin用户。建账户时勾选”将现有内容归属给新用户”。 -
[ ] 2. 强制强密码策略
- 为什么重要:弱密码 = 门没锁。
123456、password、admin123这种几秒被破。 -
怎么配置:安装 Wordfence 或 iThemes Security,启用”强制强密码”选项。复杂密码至少 12 位,含大小写+数字+特殊字符。
-
[ ] 3. 限制登录尝试次数
- 为什么重要:不限制的话,攻击者可以无限撞库。
-
怎么配置:Wordfence → 登录安全 → 设置登录失败上限为 3-5 次 → 锁定时间 30 分钟。
-
[ ] 4. 修改默认登录地址
- 为什么重要:默认
/wp-admin和/wp-login.php是全世界都知道的入口。 -
怎么配置:用 WPS Hide Login 插件,把登录地址改成只有你知道的路径,如
/my-login-2024。不要用login、admin这类常见词。 -
[ ] 5. 启用双因素认证(2FA)
- 为什么重要:密码泄露了还有第二道防线。
- 怎么配置:安装 Wordfence(免费版自带 2FA)或 Two Factor Authentication 插件。用 Google Authenticator 扫码绑定。所有管理员账户必须开启。
二、文件安全(5项)
- [ ] 6. 禁用文件编辑
- 为什么重要:后台的”外观→主题文件编辑器”和”插件→插件文件编辑器”是安全隐患。攻击者拿到管理员权限后可以直接写入恶意代码。
-
怎么配置:在
wp-config.php中添加define('DISALLOW_FILE_EDIT', true); -
[ ] 7. 关闭目录浏览
- 为什么重要:开启目录浏览等于把网站文件结构暴露给攻击者。
-
怎么配置:在
.htaccess顶部加一行Options -Indexes。然后访问yoursite.com/wp-content/uploads/确认返回 403。 -
[ ] 8. 保护 wp-config.php
- 为什么重要:这是全站最重要的文件,存着数据库密码和密钥。
-
怎么配置:在
.htaccess中添加规则阻止外部访问 wp-config.php。同时把文件权限设成 400 或 440。 -
[ ] 9. 阻止 PHP 执行在 uploads 目录
- 为什么重要:攻击者经常通过文件上传漏洞把 PHP 马传到 uploads 目录然后执行。
-
怎么配置:在
wp-content/uploads/.htaccess中添加:
<Files *.php>
deny from all
</Files> -
[ ] 10. 正确设置文件权限
- 为什么重要:权限太松等于邀请攻击者改写你的文件。
- 怎么配置:目录设为 755,文件设为 644,wp-config.php 设为 440。用 FileZilla 或命令行
chmod批量修改。
三、数据库安全(5项)
- [ ] 11. 修改数据库表前缀
- 为什么重要:默认前缀
wp_是 SQL 注入攻击的已知目标。 -
怎么配置:安装时就把前缀改成随机字符串,如
wp_mx8k_。如果已建站,用 Change Table Prefix 插件修改。 -
[ ] 12. 定期备份数据库
- 为什么重要:被黑了至少有恢复手段。快照是最后的底牌。
-
怎么配置:安装 UpdraftPlus,设置每天自动备份到 Google Drive 或 Dropbox,保留最近 7 天的备份。
-
[ ] 13. 限制数据库用户权限
- 为什么重要:网站只用 CRUD(增删改查),不需要 DROP、ALTER 这类危险权限。
-
怎么配置:在 phpMyAdmin 检查数据库用户权限,只保留 SELECT、INSERT、UPDATE、DELETE。去掉 CREATE、DROP、ALTER。
-
[ ] 14. 关闭数据库错误显示
- 为什么重要:SQL 报错会泄漏数据库路径和结构。
-
怎么配置:在
wp-config.php中确保define('WP_DEBUG_DISPLAY', false);,线上环境define('WP_DEBUG', false); -
[ ] 15. 使用安全的数据库密码
- 为什么重要:数据库密码跟网站密码一样重要。
- 怎么配置:在 cPanel → MySQL 数据库 → 生成 20 位以上随机密码,更新到
wp-config.php。
四、服务器安全(5项)
- [ ] 16. 安装 SSL 证书并强制 HTTPS
- 为什么重要:HTTP 明文传输,中间人攻击可以偷走登录凭证和用户数据。
-
怎么配置:用 Really Simple SSL 插件一键配置。或 Let’s Encrypt 免费证书。确保所有页面自动跳转 HTTPS。
-
[ ] 17. 保持核心/主题/插件更新
- 为什么重要:绝大多数被黑案例都是因为没更新。漏洞公布到被利用通常只有 24-48 小时。
-
怎么配置:开启 WordPress 自动更新小版本。大版本发布后 1-2 周内手动更新。每周至少登录后台检查一次更新提示。
-
[ ] 18. 安装安全防火墙(WAF)
- 为什么重要:WAF 是网站门口的安检员,拦截 SQL 注入、XSS、文件包含等攻击。
-
怎么配置:安装 Wordfence(免费版够用),开启防火墙学习模式运行一周,然后切换到”启用保护”模式。
-
[ ] 19. 定期扫描恶意代码
- 为什么重要:有些后门潜伏很久才发作。
-
怎么配置:Wordfence → 扫描 → 设置自动扫描每周一次。或使用 Sucuri SiteCheck 在线工具定期手动扫描。
-
[ ] 20. 删除未使用的主题和插件
- 为什么重要:不用的插件/主题没人维护 = 潜在的漏洞入口。
- 怎么配置:保留一个默认主题(如 Twenty Twenty-Four)作为备用,删除其他不用的。禁用并删除不用的插件。
执行建议
| 优先级 | 分类 | 预计耗时 |
|---|---|---|
| 紧急 | 1-5(登录安全)、17(更新) | 1 小时 |
| 重要 | 11-15(数据库)、18(WAF) | 1 小时 |
| 建议 | 6-10(文件安全)、16、19-20 | 1.5 小时 |
建议今天先把”紧急”项做完,剩下的一周内补上。每做完一项就打勾,养成交付前必查的习惯。
需要帮忙?私信我。