Nginx - Bloqueia o acesso por endereço IP

Com o tempo, quando temos um site ativo usando Nginx estamos percebendo um comportamento estranho de alguns endereços IP, geralmente esses endereços pertencem a robôs ou agentes maliciosos que atacam nosso serviço.

Embora tenhamos visto como bloquear o acesso e o tráfego usando o Módulo GeoIP, existe também uma forma mais simples e direta de realizar este tipo de travas, graças a isso se não tivermos o Módulo GeoIP disponível podemos fazer um bom conjunto de regras que nos permitem regular o acesso ao nosso site.

Lista negra


Realizar a administração de um servidor implica que temos certas políticas que garantem a segurança dos nossos dados além de assegurar o correto funcionamento dos nossos recursos, obstáculo que enfrentamos são os ataques e as consultas massivas por parte de bots, scripts do explorer ou até mesmo agentes maliciosos.

Pelas razões acima, devemos gerenciar uma lista negra que nos permite bloquear endereços IP que sabemos que são estruturados e não pertencem ao tráfego orgânico para nossos sites atendidos por Nginx.

Para construir essas listas negras, podemos bloquear por IP ou por conjunto de endereços IP, desta forma podemos amenizar um pouco a situação e ter um desenvolvimento de serviço mais saudável.

Como construir a lista negra?


Para construir nossa lista negra, devemos usar as regras negar Y permitir para que possamos especificar os intervalos de IPs a serem bloqueados ou simplesmente colocar endereços específicos, isso deve ser feito com muito cuidado, pois podemos bloquear mais usuários do que o desejado se não colocarmos a regra corretamente.

Vamos ver na imagem a seguir um exemplo de código de como fazer uma configuração básica de bloqueio de acesso:

No código, vemos como usamos negar para especificar um determinado IP e, em seguida, com permitir, especificamos um intervalo de endereços usando o sub-máscara / 24, Este exemplo é amplamente utilizado quando segmentamos um serviço em uma rede local, de modo que um departamento não possa se conectar ao serviço que hospeda Nginx.

ImportanteOutro aspecto que podemos combinar ao usar este tipo de bloqueios é saber qual erro devemos lançar sobre eles, por exemplo, se estamos bloqueando possíveis ataques, é melhor lançar um erro 404 Página Não Encontrada para não estimular um ataque mais forte se o atacante souber que está sendo impedido de entrar, mas em um ambiente de rede local talvez o mais ideal seja que indiquemos com um 403 que está acessando uma área restrita.

Para finalizar este tutorial vemos que realizar este tipo de bloqueio é muito simples e não dependemos de outros módulos, graças a isto com uma instalação standard ou reduzida de Nginx seremos capazes de implementar nossas políticas de segurança.

Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo
wave wave wave wave wave