Я уже писал про уязвимость xmlrpc.php в WordPress и как ее убрать. Сегодня расскажу про wp-login.php, который так же подвергается атакам довольно часто. Давненько я уже поднимал тему уязвимости wp-login.php, wp-admin, но тот пост потерял в актуальности, ибо написан был 13 лет назад.
Как защитить wp-login.php?
wp-login.php — самая атакуемая точка в WordPress. Если идут постоянные попытки входа — это типичный brute-force. Решается не одной мерой, а комбинацией, которая помогает существенно снизить порог или вовсе прекратить такие попытки атак.

🔐 Ограничение попыток входа (обязательно)
Через Wordfence Security
Wordfence → All Options → Brute Force Protection
Настрой:
- Lock out after how many login failures →
3–5 - Lock out after how many forgot password attempts →
3 - Amount of time a user is locked out →
1 hour - Immediately lock out invalid usernames → ✅
👉 Это резко уменьшает перебор паролей.
🔐 Включить 2FA (двухфакторку)
В Wordfence:
Login Security → Two-Factor Authentication
- включи для администратора
- желательно для всех пользователей с доступом
✔ Даже если пароль украдут — войти не смогут.
🔐 Скрыть или изменить URL логина
По умолчанию:
/wp-login.php
/wp-admin
👉 боты бьют именно сюда.
Решение:
- плагин WPS Hide Login
или аналог
Пример:
/my-secret-login
✔ снижает 80–90% автоматических атак
🔐 Ограничение по IP (очень эффективно)
Если у тебя статический IP:
Apache (.htaccess)
<Files wp-login.php>
Order Deny,Allow
Deny from all
Allow from YOUR_IP
</Files>
Nginx
location = /wp-login.php {
allow YOUR_IP;
deny all;
}
✔ самый жёсткий и эффективный метод
❗ но только если IP не меняется
🔐 CAPTCHA на логин
В Wordfence или через Google reCAPTCHA:
- добавь CAPTCHA на:
- login
- register
- reset password
✔ блокирует ботов полностью
🔐 Запрет логина по username “admin”
Частая атака — перебор admin
👉 Сделай:
- нет пользователя
admin - используй сложный логин
🔐 Логи и мониторинг
В Wordfence:
Tools → Live Traffic
Смотри:
- IP атакующих
- страны
- частоту запросов
👉 можно вручную блокировать
🔐 Блокировка стран (если нужно)
Если трафик не нужен из некоторых стран:
В Wordfence:
- Country Blocking (в Premium)
⚠️ Чего НЕ надо делать
- ❌ просто менять пароль (недостаточно)
- ❌ отключать
wp-login.phpполностью - ❌ ставить 5 плагинов безопасности одновременно
Почему атаки не прекращаются
Это нормально. Боты:
- сканируют интернет постоянно
- ищут WordPress по сигнатурам
- атакуют даже маленькие сайты
👉 задача не “остановить атаки”, а сделать их бесполезными