限制 IP 访问 WordPress 登录页面

WordPress 是目前最流行的 CMS,正因为如此,针对它的登录爆破就时刻从未停止过。

如果你安装了一款名叫「Simple Login Log」的插件,你就会知道,每天的暴力破解次数是多么丧心病狂。该插件会记录每一次登录后台的操作,不管是成功或失败都会留下记录。

正因如此,还是未雨绸缪做一些防范比较好。本次介绍在使用 Apache 的 VPS 上,如何限制 IP 访问 WordPress 后台登录画面。

Apache httpd 的设定方法

使用 Apache 可以限制 IP 访问某个特定的文件或文件夹。具体教程可以参考:Files Directive
下面简单介绍如何限制 WordPress 后台登录画面的文件「wp-login.php」。
举例来说,只允许 IP 地址「192.168.2.1」访问,按照如下设定,写入 Apache 的配置文件「httpd.conf」或者网站根目录下的「.htaccess」都可以。

<Files "wp-login.php">
    Order Deny,Allow
    Deny from all
    Allow from 192.168.2.1
</Files>

只允许某 IP 地址段「192.168.2.*」访问,则为:

<Files "wp-login.php">
    Order Deny,Allow
    Deny from all
    Allow from 192.168.2
</Files>

允许多个 IP 地址「192.168.2.1」「192.168.2.2」访问,则为:

<Files "wp-login.php">
    Order Deny,Allow
    Deny from all
    Allow from 192.168.2.1 192.168.2.2
</Files>

没有固定 IP 的对应方法

如果你已经有了 VPS,当然这个问题就不是问题了。
VPS 都是使用固定 IP 的,搭建好shadowsocks服务器,然后挂上 socks5 代理,不就是固定 IP 了么。

当然,如果不想使用以上方法,那么还有一个选择,就是安装「SiteGuard WP Plugin」插件。

插件网盘下载:https://pan.baidu.com/s/1lk2DV9Orx7O3NgCgeq_fjA


WordPress