Итак, у меня есть сайт WordPress, и все мы знаем, насколько уязвимыми могут быть плагины WordPress со временем. Мне любопытно узнать, что вы думаете о том, что, возможно, просто запретите IP-адрес любого, кто получает HTTP 404. Очевидно, я должен был бы убедиться, что сайт не отправляет никаких запросов на недопустимые ссылки и все такое, но я решил, что это будет довольно хороший способ отпугнуть злоумышленников.
Я имею в виду, что если кто-то заходит на сайт и нажимает на ссылки, которые есть на сайте, нет причин, по которым они должны получать HTTP 404. Если кто-то получает HTTP 404, они, скорее всего, ничего не замышляют.
При этом есть ли простой способ добиться этого?
На мой взгляд, это плохая идея. Даже у хорошо обслуживаемых веб-сайтов и плагинов будет периодически появляться ошибка 404. Это может произойти, например, если плагин обновлен, и они забывают обновить один URL-адрес при изменении версии, если браузер запрашивает значок, а вы его не используете, если вы нет карты сайта и т. д.
Я думаю, что если вы сделаете это, вы в конечном итоге будете время от времени блокировать доступ всех к вашему сайту, и вы сделаете доступ излишне трудным. Если у вас нет карты сайта, вы можете заблокировать все поисковые системы.
Если вы хотите защитить свой сервер, используйте fail2ban. Я использую комбинацию fail2ban и CloudFlare, как я описываю в связанном руководстве. Это для Amazon Linux, но должно достаточно хорошо работать в других Linux.
NB: Я включил комментарии снизу, чтобы упростить чтение / понимание. Кредит авторам комментария.
В дополнение к причинам, указанным Тимом, вы также должны иметь в виду, что десятки или сотни человек могут быть подключены к NAT за одним и тем же общедоступным IP.
Так что в таком случае вы могли заблокировать и легальных пользователей!
Взгляните на Fail2Ban. У нас есть правило, которое гласит, что если на IP-адресе больше 10 404-х, чтобы запретить IP.
Даже если вы запретите эти IP-адреса, они будут продолжать атаковать вас с других IP-адресов. Многие ботнеты имеют доступ к десяткам тысяч IP-адресов. На мой взгляд, это все же стоит сделать, хотя вы можете заблокировать небольшое количество законных пользователей, если не будете осторожны.