Pesquisa de site

3 maneiras de descobrir qual processo Linux está escutando em uma porta


Uma porta é uma entidade lógica que representa um ponto final de comunicação e está associada a um determinado processo ou serviço em um sistema operacional. Em artigos anteriores, explicamos como descobrir a lista de todas as portas abertas no Linux e como verificar se as portas remotas podem ser acessadas usando o comando Netcat.

Neste breve guia, mostraremos diferentes maneiras de encontrar o processo/serviço escutando em uma porta específica no Linux.

1. Usando o comando netstat

O comando netstat (estatísticas de rede) é usado para exibir informações sobre conexões de rede, tabelas de roteamento, estatísticas de interface e muito mais. Ele está disponível em todos os sistemas operacionais do tipo Unix, incluindo Linux e também no sistema operacional Windows.

Caso você não o tenha instalado por padrão, use o seguinte comando para instalá-lo.

sudo apt-get install net-tools    [On Debian/Ubuntu & Mint] 
sudo dnf install net-tools        [On CentOS/RHEL/Fedora and Rocky Linux/AlmaLinux]
pacman -S netstat-nat             [On Arch Linux]
emerge sys-apps/net-tools         [On Gentoo]
sudo dnf install net-tools        [On Fedora]
sudo zypper install net-tools     [On openSUSE]

Uma vez instalado, você pode usá-lo com o comando grep para localizar o processo ou serviço que escuta em uma porta específica no Linux da seguinte maneira (especifique a porta).

netstat -ltnp | grep -w ':80' 

No comando acima, os sinalizadores.

  • l – diz ao netstat para mostrar apenas soquetes de escuta.
  • t – diz para exibir conexões TCP.
  • n – instrui a mostrar endereços numéricos.
  • p – permite mostrar o ID do processo e o nome do processo.
  • grep -w – mostra a correspondência da string exata (:80).

Nota: O comando netstat está obsoleto e substituído pelo comando ss moderno no Linux.

2. Usando o comando lsof

O comando lsof (List Open Files) é usado para listar todos os arquivos abertos em um sistema Linux.

Para instalá-lo em seu sistema, digite o comando abaixo.

sudo apt-get install lsof     [On Debian, Ubuntu and Mint]
sudo yum install lsof         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
sudo emerge -a sys-apps/lsof  [On Gentoo Linux]
sudo pacman -S lsof           [On Arch Linux]
sudo zypper install lsof      [On OpenSUSE]    

Para encontrar o processo/serviço escutando em uma porta específica, digite (especifique a porta).

lsof -i :80

3. Usando o comando do fusor

O comando fuser mostra os PIDs de processos que usam os arquivos ou sistemas de arquivos especificados no Linux.

Você pode instalá-lo da seguinte maneira:

sudo apt-get install psmisc     [On Debian, Ubuntu and Mint]
sudo yum install psmisc         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
sudo emerge -a sys-apps/psmisc  [On Gentoo Linux]
sudo pacman -S psmisc           [On Arch Linux]
sudo zypper install psmisc      [On OpenSUSE]    

Você pode encontrar o processo/serviço escutando em uma porta específica executando o comando abaixo (especifique a porta).

fuser 80/tcp

Em seguida, encontre o nome do processo usando o número PID com o comando ps assim.

ps -p 2053 -o comm=
ps -p 2381 -o comm=

Você também pode verificar estes guias úteis sobre processos no Linux.

Isso é tudo! Você conhece alguma outra maneira de encontrar o processo/serviço escutando em uma porta específica no Linux, informe-nos através do formulário de comentários abaixo.