Me gustaría saber qué proceso (en particular, la identificación del proceso) está utilizando un puerto determinado. El único inconveniente es que no quiero usar sudo, ni estoy conectado como root. Los procesos para los que quiero que esto funcione son ejecutados por el mismo usuario para el que quiero encontrar la identificación del proceso, por lo que habría pensado que esto era simple.
Ambos lsof
y netstat
no me dirán la identificación del proceso a menos que los ejecute usando sudo; sin embargo, me dirán que el puerto se está utilizando.
Como contexto adicional: tengo varias aplicaciones que se conectan a través de SSH a un servidor que administro y que crean reenvío de puerto inverso. Una vez que están configurados, mi servidor procesa un poco utilizando el puerto reenviado, y luego se puede cortar la conexión. Si puedo asignar puertos específicos (cada aplicación tiene su propio) a los procesos, este es un script simple. ¿Alguna sugerencia?
Esto está en una caja de Ubuntu, por cierto, pero supongo que cualquier solución será estándar en la mayoría de las distribuciones de Linux.
-an
.netstat -pant
También funciona y es más fácil de recordar.