Como obter sockets que estão escutando em uma porta específica no linux?

4

Uma aplicação pode estar ligando vários sockets a uma porta específica, como posso obter a linha de comando desses sockets?

    
por kernel 19.06.2011 / 14:43

3 respostas

11

lsof também fornecerá informações sobre soquetes abertos:

$ lsof -i TCP:17500        
COMMAND PID    USER   FD   TYPE     DEVICE SIZE/OFF NODE NAME
Dropbox 244 username  19u  IPv4 0x05584748      0t0  TCP *:17500 (LISTEN)
    
por 19.06.2011 / 15:21
8

Netstat pode fornecer esta informação:

petrus@srv:~$ sudo netstat -taunp
Connexions Internet actives (serveurs et établies)
Proto Recv-Q Send-Q Adresse locale          Adresse distante        Etat        PID/Program name
tcp        0      0 127.0.0.1:4949          0.0.0.0:*               LISTEN      7837/munin-node 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      6399/sshd       
udp        0      0 0.0.0.0:56317           0.0.0.0:*                           9639/rpc.statd  
udp        0      0 0.0.0.0:911             0.0.0.0:*                           9639/rpc.statd  

Saída reduzida para maior clareza.

    
por 19.06.2011 / 14:59
1

Se você estiver usando o sistema * bsd (não sei se existe para o linux e outro * nix), existe este comando socksat, que faz o que você está procurando.

    
por 20.06.2011 / 08:40

Tags