Здравствуйте, уважаемые читатели!
Приношу свои извинения за то, что сайт какое-то время был недоступен. Мы лежали под DDoS атакой. Как я это заметил? Просто напросто ресурс перестал открываться. При этом, доступ физически сохранился. Тут я понял, что проблема в Apache.
# netstat -an | grep :80
вывело мне туеву хучу соединений. Сомнений не оставалось. Мы под DDoS-ом.
Собрал все IP в Excel-файл, пробил по странам. Совершенно разные, Чехословакия, Турция… Пробежался по Google. Оказывается, не я первый. Множество сайтов долбилось бот-сетями. Рискнул предположить, что брутят админку на Litl-Admin.ru. Проверить очень легко:
# tcpdump dst port 80 -XX -vvv -c 10
Заловил 10 пакетов, вот что увидел в одном из них:
Так и есть, перебирают пароли. Решил остановить Апач.
# apache2ctl stop
До тех пор, пока не воздвигну ещё один эшелон защиты, решил сервер не включать.
В плане защиты WordPress-блока информации хватает. Решил сделать .htaccess защиту на файл авторизации.
Как создать Basic Auth защиту
- Создаем файл .htaccess в корне сайта;
- Записываем в него:
<FilesMatch "wp-login.php">
AuthName "Unauthorized"
AuthType Basic
AuthUserFile /tmp/.htpasswd (тут используйте другой путь!!!)
require valid-user
</FilesMatch> htpasswd -c /tmp/.htpasswd testuser
<вводим пароль для пользователя>- Теперь при попытке доступа к файлу wp-login.php будет выдаваться дополнительное окно авторизации, в котором необходимо ввести имя пользователя testuser и пароль, заданный при создании файла .htpasswd
Перезапустил сервер. Сайт доступен, попытки долбёжки еще есть, но уже в разы меньше. Будем держаться. Мы с вами до конца!
Я так понимаю, сейчас защита не стоит? Доступ к wp-login нормальный.
Да, не стоит. Убрал. Хочу сделать реактивную защиту на базе iptables+apache log analyzer