Nginx - модуль GeoIP

{title}

Бывают случаи, когда наше приложение интересует нас, чтобы оно было видно только для определенного места или определенного количества команд, поэтому мы можем гарантировать, что наши ресурсы будут доступны тем, кто действительно заинтересован.
Для достижения этого блока могут быть разные методы, но один из самых простых - через IP-адрес, с помощью этих данных мы можем блокировать определенные терминалы, интернет-провайдеров и даже страны, просто настраивая некоторые опции в Nginx .
Модуль GeoIP
При определении того, что группа IP-адресов не должна видеть наш сервер по той причине, которую мы определили, мы можем заблокировать ваш доступ к нашему серверу, для достижения этого существует множество способов, но одним из наиболее полных является использование модуля GeoIP .
Что это делает?

Имея этот модуль на нашем сервере Nginx, мы можем определить страну, из которой клиент получает доступ благодаря базе данных, предварительно скомпилированной со всей этой информацией. Для идентификации эта база данных в соответствии с IP-адресом клиента идентифицирует ее с помощью 3-символьного кода, представляющего страну, с помощью которого мы можем создать интересные правила для защиты нашего сервера.
В дополнение к модулю GeoIP мы также можем использовать вместе геомодуль, который позволяет нам установить базовый интерфейс для привязки переменных на основе IP-адресов соединений с клиентами.
Практический пример
Представьте себе, что на данный момент мы создаем инфраструктуру для швейцарского банка, здесь нам понадобятся публичные части, которые будут видны для поисковых целей в поисковых системах, однако мы хотим, чтобы только тот, кто может получить доступ, принадлежал стране .
Кроме того, мы должны установить ряд исключений, так как мы наняли службу аудита, которая будет гарантировать, что наш сервис работает надлежащим образом, для этой цели будет установлена ​​переменная, которая по умолчанию будет определена как 0, предотвращая Сайт виден и только после прохождения необходимых проверок размещается на 1, чтобы разрешить доступ к сервису.
Давайте посмотрим, как должен выглядеть наш файл конфигурации на следующем рисунке:

{title}


операция

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

  • 0