保护你的 WordPress 不被暴力破解

| | 标签: | 发表评论

WordPress 的暴力破解非常常见,过去我们也曾经在 blog 上讨论过有关 WordPress 的此类问题。

一些常见的建议有:使用强密码、更改 wp-login.php 的名称等等。从服务器层面而言,有一个更简单的防止机器人暴力破解 WordPress 的方法。

以 Apache 为例:

1. 新建一个页面 /home/.wpbf/wpbf-fix.html 以判断是否是机器人在访问 wp-login.php

<!DOCTYPE html>
<html>
<meta charset="UTF-8">
<script type="text/javascript">
document.cookie = "bfcookie=true;max-age=" + 60 * 60 * 24;
  if (document.cookie == "")
  {
document.write("<center>Sorry, cookies must be enabled.<br/>Please change your browser&#39;s options, then <a href=\"\">try again</a>.</center>")
  } else {
document.write("<center>Redirecting...<BR>Click <a href=\"\">here</a> if not redirected within 5 seconds.</center>");
window.location.reload(true);
  }
</script>
<noscript>
<div class="noscript"><center>Sorry, JavaScript must be enabled.<br/>Please change your browser&#39;s options, then <a href="">try again</a>.</center></div>
</noscript>
</html>

2.在 Apache 的 conf 文件中添加如下规则:

Alias /wpbf-fix /home/.wpbf/wpbf-fix.html
<LocationMatch "/wp-login.php">
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_COOKIE} !^.*bfcookie.*$ [NC]
RewriteRule  ^(.+)?$  /wpbf-fix [PT]
</IfModule>
</LocationMatch>

3.重启 Apache 服务即可。

如果是 Nginx 服务器,可以参照以上设置,原理是一样的。

分类:未分类

发表评论