Como monitorizar a sua máquina linux com netstat

Netstat é uma ferramenta de linha de comando Linux extremamente útil que permite verificar qual serviço está se conectando a uma porta em sua máquina. É muito útil para analisar o que está acontecendo em sua máquina quando você está enfrentando ou tentando para evitar um ataque contra ele. Você pode encontrar informações como o número de conexão estão sendo feitos em uma porta, que aborda IP essas conexões originam, e muito mais. navios netstat com a maioria das distribuições de Linux para que ele já deve estar instalado no seu.

Lançar um terminal shell em sua máquina e execute o seguinte comando:

# Netstat -ant
Conexões Internet Ativas (servidores e estabeleceu)
Proto Recv-Q Send-Q Endereço local Endereço externo Estado
tcp 0 0 :: ffff: 192.168.1.19: 80 :: ffff: 192.168.1.240: 63049 TIME_WAIT
tcp 0 0 :: ffff: 192.168.0.19: 80 :: ffff: 192.168.1.240: 62.793 TIME_WAIT
tcp 0 0 :: ffff: 192.168.1.19: 80 :: ffff: 192.168.1.240: 62795 TIME_WAIT

A saída provavelmente será muito longo. Eu acabei de dar um instantâneo da saída acima. Como você pode ver nos dados acima, existe uma ligação feita a partir de 192.168.1.240 à porta do meu servidor 80 utilizando o protocolo TCP e a conexão no estado de TIME_WAIT. O posto para fora que você obter para o seu servidor terá informações sobre todas as portas em sua máquina, e não apenas de porta 80.

A primeira coisa que você percebe é que uma produção tão grande não é de muito uso. Então, vamos organizá-lo um pouco. Aqui estão alguns truques que eu uso para analisar a natureza das ligações sendo feitas para de do meu servidor. a primeira coisa que faço é descobrir quais os serviços que deseja analisar. Geralmente é a porta 80 já que é a porta padrão para o servidor web para rodar em e porta 3306, que é a porta padrão para o MySQL para correr. Então eu uso a seguinte consulta para ver o que está acontecendo na porta 80:

Video: Configuração de Rede Básica - Comandos dig, ping e whois - Linux

# Netstat -ant | grep 80

Mais uma vez eu ficar grande lista de conexões, menor do que o primeiro, mas ainda muito grande de entender. Então, eu uso o comando “wc -l” para contar o número de linhas na saída para ver aproximadamente quantas ligações eu tenho no meu porta 80:

# Netstat -ant | grep 80 | wc -l
625



E então eu faço o mesmo para o MySQL:

Video: Como configurar mais de um Monitor(display) com xrandr no Linux

# Netstat -ant | grep 3306 | wc -l
61

Agora, se eu quiser obter uma imagem completa do que está acontecendo no meu servidor em termos da natureza das ligações aqui está o que eu faço:

# Netstat -ant | awk ‘{print $ 6}` | tipo | uniq -c | tipo -n

1 estabelecido)
1 Exterior
4 FIN_WAIT2
8 OUVIR
16 CLOSE_WAIT
134 ESTABELECIDO
409 TIME_WAIT

Isso me diz quantas conexões de diferentes tipos de estado eu tenho na minha máquina. Posso executar um comando semelhante ao ver um quadro completo do estado de todas as ligações feitas para o meu servidor web:

netstat -ant | grep 80 | awk ‘{print $ 6}` | tipo | uniq -c | tipo -n

1 FIN_WAIT1
4 ESCUTE
6 FIN_WAIT2
17 CLOSE_WAIT
94 ESTABELECIDO
534 TIME_WAIT

Você pode realizar muito mais coisas complexas usando Netstat juntamente com outras ferramentas de linha de comando do Linux. Ele pode ser útil para estar familiarizado com alguns truques para obter este tipo de informação usando Netstat, especialmente quando você está enfrentando um ataque em seu servidor.


Artigos relacionados