4 formas de averiguar qué puertos están escuchando en Linux

4 formas de averiguar qué puertos están escuchando en Linux

El estado de un puerto es abierto, filtrado, cerrado, o sin filtro. Se dice que un puerto está abierto si una aplicación en la máquina de destino está escuchando conexiones/paquetes en ese puerto.

En este artículo, explicaremos cuatro formas de verificar los puertos abiertos y también le mostraremos cómo encontrar qué aplicación está escuchando en qué puerto de Linux.

1. Usando el comando netstat

NetStat es una herramienta ampliamente utilizada para consultar información sobre el subsistema de redes de Linux. Puede usarlo para imprimir todos los puertos abiertos como este:

$ sudo netstat -ltup 

La bandera -l le dice a NetStat que imprima todos los enchufes de escucha, -T muestra todas las conexiones TCP, -u Muestra todas las conexiones UDP y -pag habilita la impresión de la aplicación/nombre del programa escucha en el puerto.

Verifique los puertos abiertos usando el comando netstat

Para imprimir valores numéricos en lugar de nombres de servicio, agregue el -norte bandera.

$ sudo netstat -lntup 
Mostrar valores numéricos

También puede usar el comando GREP para averiguar qué aplicación está escuchando en un puerto en particular, por ejemplo.

$ sudo netstat -lntup | Grep "Nginx" 
Buscar el puerto de ejecución de la aplicación

Alternativamente, puede especificar el puerto y encontrar la aplicación vinculada, como se muestra.

$ sudo netstat -lntup | Grep ": 80" 
Encuentre la aplicación usando un número de puerto

2. Uso del comando ss

El comando SS es otra herramienta útil para mostrar información sobre los enchufes. Su salida se parece a la de netstat. El siguiente comando mostrará todos los puertos de escucha para TCP y UDP conexiones en valor numérico.

$ sudo ss -lntu 
Buscar puertos abiertos usando el comando SS

3. Usando el comando nmap

NMAP es una herramienta de exploración de red potente y popular y escáner de puertos. Para instalar NMAP en su sistema, use su Administrador de paquetes predeterminado como se muestra.

$ sudo apt install nmap [en Debian/Ubuntu] $ sudo yum instalación nmap [en centos/rhel] $ sudo dnf instalación nmap [en Fedora 22+] 

Para escanear todos los puertos abiertos/de escucha en su sistema Linux, ejecute el siguiente comando (que debería tardar mucho en completarse).

$ sudo nmap -n -pn -st -su -p- localhost 

4. Usando el comando LSOF

La herramienta final que cubriremos para consultar puertos abiertos es el comando LSOF, que se utiliza para enumerar archivos abiertos en Linux. Dado que todo es un archivo en Unix/Linux, un archivo abierto puede ser una transmisión o un archivo de red.

Para enumerar todos los archivos de Internet y red, use el -i opción. Tenga en cuenta que este comando muestra una combinación de nombres de servicios y puertos numéricos.

$ sudo lsof -i 
Lista de abrir archivos de red utilizando el comando LSOF

Para encontrar qué aplicación está escuchando en un puerto en particular, ejecute LSOF ene sta forma.

$ sudo lsof -i: 80 
Buscar la aplicación usando puerto

Eso es todo! En este artículo, hemos explicado cuatro formas de verificar los puertos abiertos en Linux. También mostramos cómo verificar qué procesos están vinculados en puertos particulares. Puede compartir sus pensamientos o hacer cualquier pregunta a través del formulario de comentarios a continuación.