Como saber qual programa está escutando numa determinada porta?
From ForNix
Primeiro execute o comando para lista quais portas estao abertas:
$ netstat -tupan (Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:2049 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:47080 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:53809 0.0.0.0:* LISTEN - tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:39295 0.0.0.0:* LISTEN -
Depois execute o comando para mostrar o PID do programa que abriu uma determinada porta, no caso vamos descobrir o processo que esta abrindo a porta 111:
# fuser -n tcp 111 111/tcp: 4616
Como podemos ver o PID do processo neste caso e' 4616 agora basta ver a lista de processo que tem este PID:
# ps ax | grep 4616 4616 ? Ss 0:00 /sbin/portmap
Pronto, descobrimos que o portmap e' o programa que abriu a porta 111. O mesmo pode ser feito para qualquer outra porta, apenas tome o cuidado de verificar se a conexao na porta e' tcp ou udp e mudar o parametro do fuser de acordo com o tipo da conexao.
Outro modo é usar a seguinte opção:
fuser -vn udp 631
COMANDO DE ACESSO DO USUÁRIO PID
631/udp: root 5663 F.... cupsd
Assim temos o programa que está utilizando a porta, em uma linha de comando apenas!

