Identificando qué proceso está usando un puerto en GNU/Linux

Muchas veces nos encontramos con que en nuestro servidor tenemos escuchando un puerto y no sabemos que proceso lo está ejecutando.

Vamos a ver varias formas de como sacar está información
Netstat:

netstat -punlt |grep ‘:80’
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2188/apache2

 

  • Muestra las conexiones para el protocolo especificado que puede ser TCP o UDP
  • Lista todos los puertos UDP
  • t  Lista todos los puertos TCP
  • n Nos muestra el numero de puerto
  • a Mostrar los sockets que están escuchando.

lsof

lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
apache2 2188 root 4u IPv4 8672 TCP *:www (LISTEN)
apache2 7599 www-data 4u IPv4 8672 TCP *:www (LISTEN)

 
FUSER:

fuser -n tcp 80
80/tcp: 2188 11996 12219 17687 25366 31871 3416 3804 4291 5570 5656 5657 7634 10528 10877 10929 10932

Como podemos observar obtenemos el PID del proceso en todos los ejemplos. Mediante un PS podemos ver todos los procesos que se están ejecutando en ese puerto.

ps -fea |grep 2188
root 2188 1 0 Jun28 ? 01:39:49 /usr/sbin/apache2 -k start
www-data 11996 2188 0 22:19 ? 00:00:00 /usr/sbin/apache2 -k start

 

 

Un saludo. rokitoh!

Deja una respuesta

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