Nginx - блокирует доступ по IP адресу

{title}

С течением времени, когда у нас есть работающий сайт, использующий Nginx, мы начинаем осознавать странное поведение некоторых IP-адресов, обычно эти адреса принадлежат роботам или вредоносным агентам, которые атакуют наш сервис.

Хотя мы видели, как блокировать доступ и трафик с помощью модуля GeoIP, существует также более простой и более прямой способ выполнения этого типа блокировки, благодаря этому, если у нас нет доступного модуля GeoIP, мы можем составить хороший набор правил, которые мы разрешить регулировать доступ к нашему сайту.

черный список


Администрирование сервера означает, что у нас есть определенные политики, которые гарантируют безопасность наших данных, в дополнение к обеспечению правильной производительности наших ресурсов, препятствием, с которым мы сталкиваемся, являются атаки и массивные запросы с помощью ботов, скриптов или злонамеренных агентов .

По вышеуказанным причинам мы должны обработать черный список, который позволяет нам блокировать IP-адреса, которые, как мы знаем, имеют структуру и которые не относятся к органическому трафику для наших сайтов, обслуживаемых Nginx .

Для создания этих черных списков мы можем выполнять блокировки по IP-адресу или по набору IP-адресов, таким образом, мы можем немного облегчить ситуацию и добиться более здорового развития услуг.

Как построить черный список?


Чтобы создать наш черный список, мы должны использовать правила запрета и разрешения, чтобы мы могли указать диапазоны IP-адресов для блокировки или просто разместить определенные адреса, это должно быть сделано очень осторожно, поскольку мы можем заблокировать больше пользователей, чем нужно, если мы не разместим Править правильно.

Давайте посмотрим на следующем примере пример кода, как сделать базовую конфигурацию блокировки доступа :

{title}

В коде мы видим, как мы используем deny для указания конкретного IP-адреса, а затем с помощью allow мы указываем диапазон адресов с помощью подмаски / 24, этот пример широко используется, когда мы сегментируем сервис в локальной сети, чтобы отдел не может подключиться к сервису, на котором размещается Nginx .

важно

Еще один аспект, который мы можем комбинировать при использовании этого типа блокировки, состоит в том, чтобы знать, какую ошибку мы должны выбросить, например, если мы блокируем возможные атаки, лучше выдать ошибку 404 страницы, которая не найдена, чтобы не стимулировать более сильную атаку, если злоумышленник знает, что ему запрещен вход, но в локальной сетевой среде, пожалуй, наиболее идеальным является указание на 403, что он получает доступ к ограниченной области .

В завершение этого урока мы видим, что выполнение этого типа блокировки очень просто, и мы не зависим от других модулей, благодаря этому при стандартной или сокращенной установке Nginx мы можем реализовать наши политики безопасности.

  • 0