Cómo encontrar el proceso que está escuchando en un puerto

Monday, January 24, 2011 13:45

Es posible que en muchas ocasiones queramos matar un proceso que está escuchando en un determinado puerto. Para conocer el proceso en cuestión podemos utilizar la herramienta lsof.

Si no tenemos instalada esta magnifica herramienta lo único que tendremos que hecer es descargarnosla e instalarla, simplemente utilizar algún gestor de paquetes como apt-get:

root@server:~# apt-get install lsof

Una vez que tenemos instalado el paquete anterior, ahora podremos conocer que procesos se encuentran escuchando en un determinado puerto.
Para conocer el nombre del proceso, el ID (pid), y otros detalles tendremos que ejecutar el siguiente comando:

lsof -i :port

Si por ejemplo queremos saber que proceso se encuentra escuchando en el puerto 80, tendriamos que ejecutar el siguiente comando:

root@server~# lsof -i :80

lo que nos dará la siguiente salida:

COMMAND   PID     USER   FD   TYPE   DEVICE SIZE NODE NAME
apache2  5859 www-data    3u  IPv4 21745101       TCP *:www (LISTEN)
apache2  5969 www-data    3u  IPv4 21745101       TCP *:www (LISTEN)
apache2  5993 www-data    3u  IPv4 21745101       TCP *:www (LISTEN)
apache2  6012 www-data    3u  IPv4 21745101       TCP *:www (LISTEN)
apache2  6013 www-data    3u  IPv4 21745101       TCP *:www (LISTEN)
apache2  6015 www-data    3u  IPv4 21745101       TCP *:www (LISTEN)
apache2  6030 www-data    3u  IPv4 21745101       TCP *:www (LISTEN)
apache2  6031 www-data    3u  IPv4 21745101       TCP *:www (LISTEN)

Con esta información podremos saber que en el puerto 80 están corriendo los anteriores procesos  de apache, ejecutados como www-data. Con el PID ya podríamos si quisieramos cargarnos los procesos para que el puerto 80 se liberase.

You can leave a response, or trackback from your own site.

Leave a Reply