Como verificar portas abertas no Linux

How Check Open Ports Linux



Verificar se há portas abertas está entre as primeiras etapas para proteger o seu dispositivo. Os serviços de escuta podem ser a entrada para invasores que podem explorar as vulnerabilidades dos serviços para obter acesso ou interromper um sistema. Um serviço de escuta ou porta de escuta é uma porta aberta com um aplicativo aguardando a conexão de um cliente (por exemplo, um servidor FTP aguardando um cliente FTP) Não faz sentido manter um servidor web em execução se você não estiver servindo um site, nem para manter a porta 22 aberta se você não usar ssh. Este tutorial mostra como verificar portas abertas remotamente e localmente e como fechá-las.

O comando netstat está presente em todos os sistemas operacionais (sistemas operacionais) de computador para monitorar as conexões de rede. O comando a seguir usa netstat para mostrar todas as portas de escuta usando o protocolo TCP:







netstat -lt



Onde:
netstat: chama o programa.
-a: lista as portas de escuta.
-t: especifica o protocolo TCP.



A saída é amigável, bem ordenada em colunas mostrando o protocolo, pacotes recebidos e enviados, endereços IP locais e remotos e o estado da porta.





Se você alterar o protocolo TCP para UDP, o resultado, pelo menos no Linux, exibirá apenas as portas abertas sem especificar o estado porque ao contrário do protocolo TCP, o protocolo UDP não tem estado .

netstat -Lu



Você pode evitar a especificação de protocolos e usar apenas a opção -l ou –listen para obter informações sobre todas as portas ouvindo independentemente do protocolo:

netstat --ouço

A opção acima exibirá informações para os protocolos de soquete TCP, UDP e Unix.

Todos os exemplos acima mostram como imprimir informações em portas de escuta sem conexões estabelecidas. O comando a seguir mostra como exibir portas de escuta e conexões estabelecidas:

netstat -agua

Onde:
netstat: chama o programa
-v: verbosidade
-para: mostra conexões ativas.
-t: mostra conexões tcp
-n: mostra as portas em valor numérico

Digamos que você identificou um processo suspeito em seu sistema e deseja verificar as portas associadas a ele. Você pode usar o comando lsof usado para listar arquivos abertos associados a processos.

lsof-eu 4 -para -p <Número do Processo>

No próximo exemplo, verificarei o processo 19327:

lsof-eu 4 -para -p 19327

Onde:
lsof : chama o programa
-eu: lista arquivos que interagem com a internet, a opção 4 instrui para imprimir apenas IPv4, a opção 6 está disponível para IPv6.
-para: instrui a saída a ser colocada em AND.
-p: especifica o número PID do processo que você deseja verificar.

Como você pode ver, o processo está associado à porta smtp de escuta.

Como verificar se há portas abertas no Linux remotamente


Se você deseja detectar portas em um sistema remoto, a ferramenta mais usada é o Nmap (Network Mapper). O exemplo a seguir mostra uma varredura de porta única em Linuxhint.com:

nmaplinuxhint.com

A saída é ordenada em 3 colunas mostrando a porta, o estado da porta e o serviço escutando atrás da porta.

Não mostrado:988portas fechadas
SERVIÇO DE ESTADO PORTUÁRIO
22/tcp abertossh
25/tcp open smtp
80/tcp aberto http
161/SNMP filtrado por tcp
443/https aberto tcp
1666/tcp filtrado netview-aix-6
1723/tcp pptp filtrado
6666/tcp filtrado irc
6667/tcp filtrado irc
6668/tcp filtrado irc
6669/tcp filtrado irc
9100/jetdirect filtrado tcp

Por padrão, o nmap verifica apenas as 1000 portas mais comuns. Se você quiser que o nmap escaneie todas as portas, execute:

nmap -p-linuxhint.com

No Artigos relacionados Na seção deste tutorial, você pode encontrar tutoriais adicionais sobre Nmap para fazer a varredura de portas e destinos com muitas opções adicionais.

Removendo serviços no Debian 10 buster

Além de regras de firewall para manter suas portas bloqueadas, recomenda-se a remoção de serviços desnecessários. No Debian 10 Buster, isso pode ser feito com o apt.
O exemplo a seguir mostra como remover o serviço Apache 2 usando apt:

apt remove apache2

Se solicitado, pressione E para encerrar a remoção.

Como fechar portas abertas no Linux usando UFW

Se encontrar portas abertas, você não precisa estar aberto, a solução mais fácil é fechá-las usando UFW (Uncomplicated Firewall)
Existem duas maneiras de bloquear uma porta, usando a opção negar e com a opção rejeitar , a diferença é que a instrução de rejeição informará ao segundo lado que a conexão foi rejeitada.

Para bloquear a porta 22 usando a regra negar apenas corra:

ufw negar22

Para bloquear a porta 22 usando a regra rejeitar apenas corra:

ufw rejeitar22

No Artigos relacionados seção no final deste tutorial, você pode encontrar um bom tutorial sobre Firewall descomplicado.

Como fechar portas abertas no Linux usando iptables

Embora o UFW seja a maneira mais fácil de gerenciar portas, é um front-end para Iptables.
O exemplo a seguir mostra como rejeitar conexões com a porta 22 usando iptables:

iptables-EUENTRADA-ptcp--dport 22 -jREJEITAR

A regra acima instrui para rejeitar todas as conexões tcp entrantes (INPUT) para a porta de destino (dport) 22. Sendo rejeitada a fonte será informada que a conexão foi rejeitada.

A regra a seguir apenas descarta todos os pacotes sem informar a fonte de que a conexão foi rejeitada:

iptables-PARAENTRADA-ptcp--dport 22 -jDERRUBAR

Espero que você tenha achado este breve tutorial útil. Continue seguindo LinuxHint para atualizações adicionais e dicas sobre Linux e rede.

Artigos relacionados:

  • Trabalhando com UFW (Firewall Descomplicado)
  • Tutorial de noções básicas de NMAP
  • Como listar portas abertas no Firewalld
  • Digitalização de rede Nmap
  • Instalando e usando Zenmap (Nmap GUI) no Ubuntu e Debian
  • Nmap: varre intervalos de IP
  • Usando scripts nmap: captura de banner Nmap
  • 30 exemplos de Nmap