Me gustaría poder averiguar qué proceso está utilizando actualmente un determinado puerto en Linux. ¿Hay alguna forma de hacer esto?
Me gustaría poder averiguar qué proceso está utilizando actualmente un determinado puerto en Linux. ¿Hay alguna forma de hacer esto?
Respuestas:
Tienes unas cuantas opciones:
lsof -i tcp:80
le dará la lista de procesos usando el puerto tcp 80.
Alternativamente,
sudo netstat -nlp
le dará todas las conexiones de red abiertas.
lsof -i | grep {username}también es muy útil, es decirlsof -i | grep apache
-n: no resuelva los nombres -l: muestre los sockets del servidor de escucha,: -pmuestre el PID / nombre del programa para los sockets.
-Ppara lsof -i tcp:$PORTNUMBERque el puerto me vuelva a imprimir como un número.
Estoy usando "CentOS 7 minimal" que no tiene ni netstatninguno lsof. Pero muchas distribuciones de Linux tienen el comando de estadísticas de socket (es decir ss).
Aquí hay un ejemplo de ejecución:
# ss -tanp | grep 6379
LISTEN 0 128 127.0.0.1:6379 *:* users:(("redis-server",pid=2531,fd=4))
netstat -anb