netstat-1

Como todos sabemos, un puerto sólo es utilizado por un proceso o servicio a la vez. El puerto identifica un servicio o un proceso en particular que se ejecuta en el sistema. A veces, mientras se solucionan los problemas, necesitamos saber qué número de puerto está escuchando un determinado proceso. Todos los procesos que se ejecutan en un sistema están asociados a un número de identificación de proceso (PID) y a un número de puerto. Para encontrar el número de puerto que un determinado proceso está escuchando, hay algunas formas de las que hablaremos en este artículo.

Antes de proceder al artículo, hay que decir que necesitaremos privilegios de sudo. Le ayudará a obtener una información completa sobre los procesos que se ejecutan en su sistema.

lsof

Con la orden lsof, puedes ver una lista de todos los archivos abiertos por los procesos que se están ejecutando en tu sistema. Lsof puede actuar como una herramienta única para obtener información que de otra forma implicaría un gran conjunto de herramientas de administración. De forma similar a la orden netstat, necesitarás privilegios de sudo para obtener información detallada.

Si lsof no está ya instalado en tu sistema, utiliza lo siguiente en la terminal para instalarlo:

sudo apt install lsof

Una vez instalado, puedes utilizar lsof para encontrar procesos que se ejecutan en puertos específicos. Si ejecutas lsof sin ningún parámetro, te devolverá mucha información que será difícil de entender. Sin embargo, el uso de parámetros con lsof puede ayudarle a filtrar y concentrarse en la salida deseada.

Ahora, para encontrar la escucha del proceso en un puerto específico, digamos el puerto 993, usa la siguiente orden:

sudo lsof -i :993

lsof

fuser

Fuser es una orden de terminal de GNU/Linux que se usa para encontrar qué identificación de proceso está usando un archivo, directorio o sistemas de archivos. Podemos usar fuser para encontrar el proceso que se está ejecutando en un puerto específico.

Necesitarás la herramienta psmisc para usar fuser. Si no está ya instalada en el sistema, búscala en tu gestor de software. Para ver los procesos que se están ejecutando en cualquier puerto, digamos el puerto TCP 4662 de nuestro aMule, ejecuta la siguiente orden en la terminal:

sudo fuser 4662/tcp

fuser

La salida anterior ha devuelto la escucha del proceso en el puerto número 4662. Para ver el número del proceso  se usa la sintaxis:

puerto protocolo [ID_del_proceso]

netstat

Netstat es una utilidad de línea de órdenes de uso más común que puede utilizarse para mostrar información sobre conexiones de red, estadísticas de interfaz y tablas de enrutamiento. También puede utilizarse para encontrar el número de puerto que utiliza un determinado proceso. No es necesario instalarlo, ya que ya está instalado en los repositorios de todas las distribuciones de GNU/Linux.

Para encontrar los números de puerto que están siendo escuchados por los procesos, ejecuta la siguiente orden en la terminal:

sudo netstat -ltnp

netstat-1

Arriba se muestran los números de puerto que utilizan ciertos procesos junto con sus identificadores de proceso (PID).

Si no tienes privilegios de sudo y ejecutas el comando anterior sin sudo, no mostrará el nombre del programa y el PID como se ve en la siguiente salida.

netstatnosu

Ahora veamos qué significa ltnp en la anterior salida:

l – Muestra los sockets de escucha

t – Muestra las conexiones TCP

n – Muestra las direcciones IP y los números de puerto en forma numérica

p – Muestra el PID/nombre del programa

Si miramos la salida de sudo netstat -ltnp, la cuarta columna es exactamente lo que buscamos: El número de puerto en el que un proceso está escuchando.

Para obtener la información del puerto de un solo proceso, simplemente se puede canalizar la salida de netstat con grep.

netstat –ltnp | grep tcp

Donde con tcp quiero ver las conexiones de ese protocolo.

grep

 

Fuente: maslinux

 

Protege-3-

¿Quién está en línea?

Hay 24811 invitados y ningún miembro en línea