WordPress(以下简称“WP”,我的wp版本是4.9)作为全球最大的开源网站程序,每天都有对博客进行暴力猜解密码的事件,虽然这个攻击可能不是针对我们的网站,但可能因为密码比较简单成为中招对象。今天告诉大家两招简单设置可以极大提高安全,而且还不用安装插件。以下是操作不走:
方法一: 隐藏保护wp-login.php
1.进入wp-includes目录,找到functions.php并打开,在文中加入以下代码(我是加载文章最后)
add_action('login_enqueue_scripts','login_protection');
function login_protection(){
if($_GET['root'] != 'xxdtl')header('Location: /');
注意,以上代码是一个示例,实际使用过程中,可以把蓝色文字 为自己需要的就可以,以后正确的访问后台的地址则变成了下面的地址:
如果输错了域名,就会跳转到baidu(你也可以设置成其他),这样就可以确保登录入口的隐蔽性。
方法二:给后台添加验证码
同样在functions.php文件中,添加以下代码:
//后台登陆数学验证码
function myplugin_add_login_fields()
$num1 = rand(0, 9);
$num2 = rand(0, 9);
echo "<p><label for='math' class='small'>验证码</label><br /> {$num1} + {$num2} = ?<input type='text' name='sum' class='input' value='' size='25' tabindex='4'>" . "<input type='hidden' name='num1' value='{$num1}'>" . "<input type='hidden' name='num2' value='{$num2}'></p>";
add_action('login_form', 'myplugin_add_login_fields');
function login_val()
$sum = $_POST['sum'];
//用户提交的计算结果
switch ($sum) {
case $_POST['num1'] + $_POST['num2']:
break;
case null:
wp_die('错误: 请输入验证码.');
break;
default:
wp_die('错误: 验证码错误,请重试.');
add_action('login_form_login', 'login_val');
演示效果如下:
这样我们在后台登录时可以添加数字验证码来有效的防止暴力破解了!
以上两个小妙招希望你能get到!