Pesquisa de site

Encontre os 10 principais endereços IP que acessam seu servidor Web Apache


Ao executar um servidor web que pode ser acessado de uma rede aberta ou pública, como a Internet, é sempre uma boa prática de administração do sistema monitorar o acesso ao seu servidor.

Uma coisa boa no monitoramento do acesso ao seu servidor web é a existência de arquivos de log de acesso que armazenam informações sobre todas as atividades de acesso que acontecem no servidor.

Trabalhar com arquivos de log é sempre muito importante, pois eles fornecem um relato de tudo o que aconteceu dentro de um sistema ou aplicação, neste caso o seu servidor web Apache. No caso de qualquer problema relacionado ao desempenho ou ao acesso, os arquivos de log podem ajudá-lo a apontar o que pode estar errado ou está acontecendo.

Leia mais sobre gerenciamento de log no Linux: 4 melhores ferramentas de gerenciamento de log para Linux

Neste artigo, veremos como encontrar os 10 principais endereços IP que acessam seu servidor web Apache.

O caminho padrão para o log do servidor web Apache é:

/var/log/http/access_log      [For RedHat based systems]
/var/log/apache2/access.log   [For Debian based systems]
/var/log/http-access.log      [For FreeBSD]

Para descobrir os 10 principais endereços IP que acessam seu servidor web Apache para domínio, basta executar o seguinte comando.

awk '{ print $1}' access.log.2016-05-08 | sort | uniq -c | sort -nr | head -n 10
Saída de amostra
5482 103.28.37.178
5356 66.249.78.168
1977 66.249.93.145
1962 157.55.39.251
1924 66.249.93.142
1921 66.249.93.148
1890 64.233.173.178
1860 108.61.183.134
1841 64.233.173.182
1582 157.55.39.251

No comando acima:

  1. awk – imprime o arquivo access.log.2016-05-08.
  2. sort – ajuda a classificar linhas em um arquivo access.log.2016-05-08, a opção -n compara linhas com base no número o valor das strings e a opção -r revertem o resultado das comparações.
  3. uniq – ajuda a reportar linhas repetidas e a opção -c ajuda a prefixar linhas de acordo com o número de ocorrências.

Leia mais sobre como usar o comando awk no Linux.

Resumo

Existem muitos métodos que podem ser utilizados para conseguir isso, se você conhece alguma maneira melhor de compartilhar nos comentários e também em caso de alguma sugestão ou dúvida, lembre-se de deixar um comentário na seção de comentários abaixo e discutiremos juntos. Espero que este artigo seja útil e lembre-se de estar sempre conectado ao Tecmint.