Saber que proceso utiliza un puerto en Linux

Muchas veces nos encontramos con que en nuestra máquina tenemos escuchando un puerto y no sabemos que proceso o programa lo ha abierto. Aunque existen varias maneras sencillas saber que proceso utiliza un puerto, aquí voy a proponer 2 distintas:

netstat -punlt |grep ':X'

donde XX es el número de puerto que buscamos. Probemos con el 22, para el servidor de SSH:

root@hostname:~# netstat -puntl |grep ':22'
tcp        0      0 0.0.0.0:22           0.0.0.0:*               LISTEN      1265/sshd

Podemos ver que el proceso sshd, con PID 1265 es el que tiene abierto el puerto tcp/22

Si bien esta forma es perfectamente válida, podemos optar por hacerlo de esta otra:

lsof -i:22

Obteniendo:

COMMAND   PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd     1265    usuario    3u  IPv4   9592      0t0  TCP *:22 (LISTEN)
sshd     5980    usuario    3u  IPv4  26729      0t0  TCP ip_del_servidor:22->ip_del_cliente:54764 (ESTABLISHED)
sshd     5981    usuario    3u  IPv4  26735      0t0  TCP ip_del_servidor:22->ip_del_cliente:54763 (ESTABLISHED)
sshd     5982    usuario    3u  IPv4  26761      0t0  TCP ip_del_servidor:22->ip_del_cliente:54765 (ESTABLISHED)

lsof nos permite acotar en función del protocolo y especificarle TCP:X o UDP:X como puerto a buscar.

Ahora ya has aprendido como saber que proceso utiliza un puerto en linux

Este articulo puede contener enlaces de afiliación

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *