詳細検索

Impedir que nginx divulgue logs de acesso para checagens de saúde

Avatar
por miyashitak
2 min de leitura

Impedir que nginx divulgue logs de acesso para checagens de saúde
Traduzido do 日本語 • Ver original

Bom dia. Aqui é Miyashita da infraestrutura.
Desta vez será uma configuração relacionada a logs para nginx.


Sumário

  1. Introdução
  2. Sobre ngx_http_geo_module
  3. Configuração do nginx
  4. Site de referência

Introdução

Queria implementar uma configuração no nginx que não gera logs de um NW específico usando a definição de setenv, que é frequentemente implementada no Apache, mas não tinha a mesma função, então pesquisei. Quanto ao uso, pode ser usado quando for conveniente não gerar logs, como verificar a saúde do balanceador de carga ou conectar a partir de um servidor de monitoramento. Não é necessário para análise, e também reduz entradas/saídas desnecessárias do DISCO.

O que é ngx_http_geo_module

Documentação oficial

Você pode definir o endereço IP como uma variável conforme descrito na documentação.
É comumente usado quando o NW em um país específico se recusa a se conectar. Nesses casos, também é possível gerenciá-lo com um arquivo separado registrado em grandes quantidades por inclusão.

Configurando nginx

nginx.conf.
[shell]# vi nginx.conf http { include mime.types; # não acesso_log IP geo $no_log { padrão 0; 172.0.1.0/24 1; } servidor { (omitido) localização / { raiz /var/www/html; índice index.cgi index.php index.html index.htm; if ($no_log) { access_log desligado; } } } } [/shell]

A sintaxe básica é geo [$address] $variable { ... }. "default" é "0" para tudo que não está incluído na condição, e o IP especificado é "1". Se ($variable) { access_log off; } estiver escrito no local da hierarquia que você deseja restringir, se () { access\ off; } Se você escrever "1", o log correspondente a "1" não será gerado.

Por fim, reinicie o nginx.

[shell]# /etc/init.d/nginx reiniciar[/shell]
Agora o acesso _log não mostra mais os registros de conexão das versões 172.0.1.0/24.
Parece que dá para fazer com Serenv como Apache, mas isso foi mais fácil com Enginx.

Site de Referência

NGX_http_geo_module módulo Geo do NGinx é conveniente demais

Related Articles