Como fazer uma pesquisa reversa de DNS em meus logs do Apache?

3

Pesquisas reversas de DNS são desativadas dentro do Apache, agora eu quero ver de onde os IPs estão nos logs. Como posso converter facilmente os IPs dos meus antigos logs do Apache em nomes de host?

    
por guaka 05.08.2014 / 12:26

2 respostas

11

O Apache vem por padrão com logresolve ; um programa de pós-processamento separado para resolver endereços IP nos arquivos de log de acesso do Apache.

logresolve [ -s statistics-filename ] [ -c ] < access_log > access_log.new

Geralmente, o pós-processamento é significativamente mais eficiente do que permitir que o Apache faça pesquisas reversas de DNS para cada solicitação.

    
por 05.08.2014 / 12:38
4

Você pode realizar uma pesquisa de DNS reversa com um comando dig :

dig +short -x <IP-ADDRESS>

Você receberá de volta um nome de host do sistema com o endereço IP especificado, no entanto, o que este nome de host dependerá de como o (s) registro (s) de PTR está configurado para o domínio. Então, em outras palavras, você não deve esperar recuperar nenhum nome de host em particular.

Quanto aos registros do Apache, como HBruijn já mencionado, você pode usar logresolve ou pode escrever seu próprio script Para verificar o arquivo de log, extraia o endereço IP, faça uma pesquisa inversa e imprima todas as informações no formato necessário. Qual solução você escolhe depende do que você está tentando alcançar. logresolve espera que o endereço IP seja a primeira coisa em cada linha e seja separado do restante da linha por um espaço, o que pode ou não ser o caso em seus arquivos de log.

    
por 05.08.2014 / 12:39