wordpress账户防暴力破解攻击
一、修改数据库表前缀
默认的表前缀是wp_,如果你安装博客的时候没有修改,可以参考这篇文章修改下表前缀。
修改完登录测试下,如果登录成功后提示“您没有足够的权限访问该页面”,说明前缀没有修改完整,参照这篇文章搜索下剩下的,然后一个个手动修改即可。
二、去除wordpress特征
在当前主题(wp-contents/themes/xxx) functions.php 文件末尾添加以下代码去掉 WordPress 版本信息,减少被特征提取的机率。
1
|
remove_action( 'wp_head', 'wp_generator');
|
三、修改默认用户名admin
默认的用户名不要为 admin,通过一条 SQL 语句修改 admin 的用户名:
1
|
UPDATE xxx_users SET user_login = 'username' WHERE user_login = 'admin';
|
将xxx_users中的xxx替换为你第一步改的前缀。
四、保护wp-login.php
将下面的代码添加到当前主题的 functions.php 文件:
1
2
3
4
|
add_action('login_enqueue_scripts','login_protection');
function login_protection(){
if($_GET['key'] !='pass')header('Location: /404.html');
}
|
这样一来,后台登录的唯一地址就是 http://hostname/wp-login.php?key=pass,如果不是这个地址,就会自动跳转到 404.html 页面。
建议修改上面的key pass为其他字符串,例如wp-login.php?zheshihoutaidizhi=hehehehehehehehehhhh,404.html也可以换为网站主页地址http://blog.b1uew01f.net/ http要带。
这时候,由于访问/wp-admin/时是跳转到wp-login.php进行登录的,经过上面的修改后,会再跳转到404.html页面,也启到一定的疑惑作用。
五、主机安全加固
wordpress博客只是主机中一个web应用,如果主机安全没有做好也是容易被攻击沦陷的,下面是我前面写的几篇关于配置安全linux服务器的文章,核心的思想就是:更改默认服务端口、增加防火墙判断,防止服务被暴力攻击。