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:
awk
– imprime o arquivo access.log.2016-05-08.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.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.