Откуда хакеры пытаются войти, если wp-login.php заблокирован по IP

How do hackers enter the site when wp-login.php is hidden by ip

Where can the hacker try to sign in to my site

Итак, проблема: плагин Sucuri на дэшборде показывает бесконечные попытки входа, то есть перебор паролей. Даже при сильном пароле за год они все равно до вас доберутся — это все делается в автоматическом режиме. При этом через .htaccess доступ к wp-login.php скрыт по айпи. Но Sucuri показывает, что ломятся с разных айпи. Вносить в черный список тоже бесполезно — меняют на другой. Оказывается, в Вордпрессе есть еще один файл, через который можно получить доступ. Через этот файл по задумке Wp общается с внешним миром на уровне роботов. Например, плагин Jetpack пользуется этим файлом для связи со своими серверами. Поэтому необходимо этот файл тоже скрыть по IP:

# Block WordPress xmlrpc.php requests
Order Deny,Allow
Deny from all

Если вы используете Jetpack, чтобы он по-прежнему мог общаться с внешним миром, нужно его айпи-адреса дать в качестве исключения:

#allow Jetpack, deny all:

Order Deny,Allow
Deny from all
Allow from 185.99.6.207
Allow from 192.0.64.0/18;
Allow from 64.34.206.0/24;
Allow from 198.181.116.0/22;
Allow from 66.155.105.128/26;
Allow from 69.90.253.0/24;
Allow from 76.74.248.128/25;
Allow from 76.74.255.0/25;
Allow from 2001:1978:1e00:3::/64;
Allow from 2620:115:c000::/40;

Если сайт на NGINX, исключения добавляются в etc/nginx/sites-available/ваш_конфиг_файл.conf:

location = /xmlrpc.php {
    #allow Jetpack, deny all:
    allow 192.0.64.0/18;
    allow 64.34.206.0/24;
    allow 198.181.116.0/22;
    allow 66.155.105.128/26;
    allow 69.90.253.0/24;
    allow 76.74.248.128/25;
    allow 76.74.255.0/25;
    allow 2001:1978:1e00:3::/64;
    allow 2620:115:c000::/40;
    deny all;
  }