Verificação de portas abertas e de escuta no Linux usando netstat e ss
O monitoramento de portas abertas e de escuta em um sistema Linux é essencial para a segurança, a solução de problemas de rede e a administração do sistema. Saber quais portas estão sendo usadas e por quais serviços pode ajudar a detectar possíveis vulnerabilidades ou acesso não autorizado. Duas ferramentas comuns usadas para esse fim são netstat e ss.
Neste artigo, abordaremos como usar os comandos netstat e ss para verificar as portas abertas e de escuta em um sistema Linux.
1. Entendendo as portas e seus tipos
Antes de nos aprofundarmos nas ferramentas, é importante entender os tipos básicos de portas que você pode encontrar:
- Portas abertas: São portas nas quais os aplicativos estão ativamente escutando conexões.
- Portas de escuta: São portas às quais um serviço ou aplicativo se vinculou e está aguardando ativamente o tráfego de rede de entrada.
- Protocolos comuns:
- TCP: Protocolo de Controle de Transmissão (confiável, baseado em conexão).
- UDP: Protocolo de Datagrama do Usuário (sem conexão, menos confiável, mas mais rápido).
2. Verificação de portas com o netstat
O que é o netstat?
o netstat é uma ferramenta clássica de linha de comando que fornece estatísticas de rede e informações sobre conexões de rede, incluindo portas abertas e de escuta. Embora tenha sido preterido em favor de ferramentas mais novas, como o ss, ele ainda é muito usado.
Instalação do netstat
o netstat faz parte do pacote net-tools. Nas distribuições modernas do Linux, talvez seja necessário instalá-lo manualmente:
- Debian/Ubuntu:
- CentOS/RHEL:
Uso do netstat para verificar portas abertas e de escuta
Para verificar todas as portas de escuta em seu sistema, incluindo TCP e UDP, use o seguinte comando:
- –t: Mostra portas TCP.
- –u: Mostrar portas UDP.
- –l: Mostrar somente portas de escuta.
- –n: Mostrar endereços numéricos em vez de resolver nomes de host e serviços.
Exemplo de saída:
- Endereço local: O IP e a porta em que o serviço está escutando.
- Endereço externo: O IP e a porta do cliente remoto (para conexões ativas).
- Estado: O estado da conexão (por exemplo, LISTEN para portas abertas).
Filtragem de portas ou serviços específicos com o netstat
Você pode filtrar a saída para se concentrar em portas ou serviços específicos. Por exemplo, para verificar as portas relacionadas a HTTP (porta 80):
Isso exibirá todos os serviços que estão escutando na porta 80.
3. Verificação de portas com ss
O que é o ss?
o ss é um utilitário moderno que substituiu o netstat em muitas distribuições Linux. Ele é mais rápido e mais eficiente que o netstat, principalmente ao lidar com um grande número de conexões. O ss pode exibir portas abertas, informações sobre soquetes de rede e muito mais.
Uso do ss para verificar portas abertas e de escuta
A sintaxe do ss é bastante semelhante à do netstat. Para verificar todas as portas TCP e UDP em escuta, use:
- –t: Mostra soquetes TCP.
- –u: Mostrar soquetes UDP.
- –l: Mostrar somente os soquetes em escuta.
- –n: Mostra endereços numéricos (não resolve nomes de host).
Exemplo de saída:
Essa saída mostra todas as portas em escuta e seus estados (semelhante ao netstat).
Uso avançado do ss
o ss oferece opções mais avançadas para filtrar e exibir conexões com base em diferentes critérios.
Exibir somente portas TCP de escuta:
Exibir somente as portas UDP que estão escutando:
Exibir portas de escuta por ID de processo (PID):
Para ver qual processo está associado a uma porta de escuta, use:
A opção p mostra o processo que está usando a porta, o que é útil para a solução de problemas.
4. Comparação entre netstat e ss
Tanto o netstat quanto o ss têm finalidades semelhantes, mas há diferenças que merecem ser observadas:
- Velocidade e eficiência: o ss é mais rápido que o netstat e consome menos recursos. Ele pode lidar com um grande número de conexões de forma mais eficiente.
- Disponibilidade: o ss é incluído por padrão na maioria das distribuições modernas do Linux, enquanto o netstat requer a instalação do pacote net-tools em alguns sistemas.
- Formato de saída: Ambos fornecem informações detalhadas sobre portas e conexões, mas o ss tem mais opções para filtrar e exibir informações específicas.
Quando usar o netstat:
- Quando estiver trabalhando em sistemas Linux mais antigos.
- Quando você estiver familiarizado com a sintaxe do netstat e não quiser mudar.
Quando usar o ss:
- Quando você precisa de melhor desempenho, especialmente em sistemas com um grande número de conexões.
- Para filtragem e análise de rede mais avançadas.
5. Outras ferramentas para verificação de portas abertas
Além do netstat e do ss, há outras ferramentas que você pode usar para verificar as portas abertas e em escuta no Linux:
o lsof lista os arquivos abertos, que podem incluir soquetes de rede. Você pode usá-lo para verificar qual processo está escutando em uma porta específica
Isso mostra os processos que usam a porta 80.
o nmap é uma ferramenta de varredura de rede que pode ser usada para verificar se há portas abertas em um sistema.
Esse comando verifica as portas TCP no host local.
Conclusão
O monitoramento de portas abertas e de escuta é uma tarefa essencial para os administradores de sistemas, e ferramentas como netstat e ss facilitam essa tarefa. Embora o netstat ainda seja usado em sistemas mais antigos, o ss se tornou a ferramenta preferida devido à sua velocidade e eficiência. Quer esteja solucionando problemas de rede ou protegendo seu servidor Linux, essas ferramentas o ajudarão a acompanhar os serviços ativos e a garantir que suas portas sejam gerenciadas adequadamente.
Use o netstat se estiver mais familiarizado com ele ou mude para o ss para um monitoramento mais rápido e eficiente das portas abertas e de escuta do seu sistema.
Entre em contato comigo se precisar de mais esclarecimentos ou ajuda!