wp-admin 与 wp-login.php wp-cron.php防护

在后台日志中,经常发现wp-login.php wp-cron.php xmlrpc.php wp-admin 等被机器访问

如果你有一个固定IP,或者能利用主机的SSH代理登录访问

比如我的主机IP是 15.164.48.65 (修改为你自己的IP地址 )

可以修改wordpress安装目录下的 .htaccess 为

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule ^xmlrpc\.php$ https://xl.cool [L,R=301]
</IfModule>

# Allow only specific IP addresses to access wp-admin and wp-login.php
<FilesMatch "^(wp-admin|wp-login\.php|wp-cron\.php)$">
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1$
        RewriteCond %{REMOTE_ADDR} !^15\.164\.48\.65$
        RewriteRule ^ https://xl.cool [L,R=301]
    </IfModule>
    <IfModule !mod_rewrite.c>
        Order deny,allow
        Deny from all
        Allow from 127.0.0.1
        Allow from 15.164.48.65
    </IfModule>
</FilesMatch>

# END WordPress

这样,如果其他IP访问,就会自动跳转到 博客首页了。

而且只要用你的固定IP登录后,就可以切换回来,依然是可以登录后台的。