В последнее время сильно участились атаки на WordPress c целью подбора паролей. Атакующие запрашивают доступ к файлу wp-login.php, соотвественно самым простым методом защиты будет закрыть им всякий доступ к этому файлу.
Реализовать это можно несколькими способами:
1) Закрыть с помощью файла .htaccess доступ для всех айпи адресов
В файле .htaccess нужно прописать
<Files wp-login.php>
order deny,allow
deny from all
allow from 1.2.3.4
</Files>
Что это означает:
<Files wp-login.php> – Правило для файла wp-login.php order deny,allow – Определяет логику работы.
deny from all – Запрещаем просматривать файлы всем.
allow from 1.2.3.4 – Разрешаем доступ к файлу wp-login.php для ip адреса 1.2.3.4
Адрес 1.2.3.4 вам нужно заменить на ваш айпи адрес, который можно узнать тут: https://tuthost.ua/ip/ или https://2ip.ua
Однако стоить иметь в виду, что если провайдер не выдает вам статический адрес, то он будет у вас постоянно меняться.
2) Второй способ заключается в том, чтобы переименовать файл wp-login.php
1. Оригинальный wp-login.php переименовуем в любое другое название, хоть в «4xqtbgkqs60.php».
2. Затем заменим все слова wp-login.php на новое имя, в нашем случае на 4xqtbgkqs60.php, в файле 4xqtbgkqs60.php (старый wp-login.php) и в файле wp-includes/general-template.php.
3. Заключительным шагом станет полное ограничение доступа к файлу wp-login.php в .htaccess:
<Files wp-login.php>
Order Deny,Allow
Deny from all
</Files>
Закрывать доступ к несуществующему уже файлу wp-login.php нужно потому, что злоумышленники все равно будут его запрашивать, а движок будет выдавать страничку 404 (файл не существует), что также создает большую нагрузку на сайт.
4. Обратите внимание, если Вы создаете конструкцию deny from all, убедитесь в том есть ли у Вас файл 403.shtml в корне вашего сайта, если нету, тогда создайте. Иначе запросы ошибки 403 будет перехватывать wordpress и в таком случае нагрузка на сайт не уменьшится.