WordPress安全加固:零基础也能搞定的5个关键步骤
很多新手站长安装好WordPress后,很少关注安全设置。
其实WordPress默认配置留有多个常见安全隐患,比如默认表前缀、开放的版本信息、无限制登录尝试等。
本文围绕WordPress安全加固,从最基础、最有效的5个步骤入手,让你在半小时内完成自我防护。
1. 动手前先备份和准备
任何修改之前,备份数据库和网站文件是第一条铁律。
登录宝塔面板(或你用的服务器面板)→ 数据库 → 对应数据库 → 点击“备份”。
文件的话,压缩 /www/wwwroot/你的网站目录 整个文件夹。
如果只有命令行权限,执行:
mysqldump -u 用户名 -p 数据库名 > wordpress_backup.sql
zip -r site_backup.zip /网站路径
备份完成后,请先确认网站能正常访问。
2. 修改数据库表前缀(最容易被忽略)
默认WordPress的表前缀都是 wp_,黑客会针对这一点进行批量注入。
为了WordPress安全加固,建议修改为自定义前缀,比如 mywp_。
如果你已经建站,必须用插件或手动SQL修改,不能直接改 wp-config.php。
推荐使用插件 “Brozzme DB Prefix Change” 或手动方法(本文用插件法)。
- 后台 → 插件 → 安装插件 → 搜索 “Brozzme DB Prefix Change”。
- 安装并启用后,在工具菜单下找到 “Change DB Prefix”,点击 “Change Table Prefix”,输入新前缀(如
mywp_)。 - 完成后插件会自动更新
wp-config.php中的$table_prefix变量。
注意:操作期间网站会临时无法访问,等几秒就好。
3. 禁用文件编辑功能并关闭XML-RPC(减少攻击面)
WordPress后台默认允许管理员从主题/插件编辑器直接修改PHP文件,一旦后台被猜出密码,攻击者可以插入恶意代码。
关闭方法:
- 用FTP或文件管理器打开网站根目录下的
wp-config.php文件,在/* 好了!请不要再继续编辑。请保存本文件。*/上一行添加:
define('DISALLOW_FILE_EDIT', true);
另外,旧版WordPress的XML-RPC接口也常被用于暴力破解。
如果不需要手机客户端或Jetpack远程发布,建议关闭。
在宝塔面板 → 网站设置 → 伪静态 → 添加一行:
location = /xmlrpc.php {
deny all;
return 403;
}
保存后重启Nginx。
4. 限制登录尝试次数(防爆破)
WordPress默认允许无限次登录尝试,黑客可以用字典暴力破解。
安装免费插件 “Limit Login Attempts Reloaded”,安装后进入设置 → Limit Login Attempts。
推荐设置:
- 最大重试次数:3
- 锁定时间:300 分钟
- 锁定方式:选择 “封锁IP和用户名”
- 勾选 “立即锁定恶意IP”。
保存后,插件会自动在登录页面增加验证机制。
如果你不想用插件,也可以在网站根目录的 .htaccess 中添加规则(Apache环境),但新手建议用插件更省心。
5. 隐藏WordPress版本号并移除REST API暴露信息
版本号会告诉黑客你可能有哪些已知漏洞。
在主题的 functions.php 文件末尾添加:
remove_action('wp_head', 'wp_generator');
add_filter('the_generator', '__return_empty_string');
想要彻底隐藏,还可以安装插件 “Hide My WP Ghost”,它不仅能隐藏版本号,还能重写登录地址、隐藏插件路径等。
本文推荐至少完成以上代码修改。
🚧 避坑指南(新手最容易出错的地方)
- 修改表前缀后一定要重新注册插件:因为很多插件使用硬编码表名,修改后可能报错。建议修改前停用所有插件,改完后重新启用。
- 关闭XML-RPC前确认你没有使用Postman或OAuth插件:如果网站使用了REST API授权的插件,关闭XML-RPC可能导致功能异常。可以在插件中开启“仅限登录用户”模式而非完全拒绝。
wp-config.php配置错误导致白屏:一定要在/* 好了!请不要再继续编辑。*/之前添加配置,否则不生效。添加后如果网站白屏,通过FTP删除刚加的代码即可恢复。
✅ 效果验证(看看加固是否生效)
- 检查版本隐藏:用浏览器打开网站页面,右键查看源代码,搜索“generator”字段,如果找不到
则成功。 - 测试文件编辑禁用:登录后台 → 外观 → 主题文件编辑器,如果看到“抱歉,此功能已被禁用。”则成功。
- 测试XML-RPC封锁:在浏览器打开
https://你的域名/xmlrpc.php,应返回403错误或空白页。如果出现“XML-RPC服务就绪”说明没封成功,检查伪静态规则。 - 测试登录限制:故意输错3次密码,第4次输入正确密码,看是否提示“该IP已被临时封锁”。如果提示封锁,说明插件生效。
如果你正在处理WordPress安全加固,建议先完整执行上述步骤,再根据自己的环境微调。
遇到异常时优先检查备份是否完整、配置项是否放对了位置。
安全没有一劳永逸,定期更新WordPress核心、主题、插件,并每隔三个月重复检查这几项设置,网站才能一直保持健康。