Cómo comprobar los puertos abiertos en Linux
Mientras se depuran los servicios que se ejecutan en un sistema Linux, verificar los puertos abiertos es una de las tareas que cualquier usuario o administrador debe considerar. Si se espera que un servicio se esté ejecutando pero por algún motivo no lo está, lo más probable es que el puerto asociado con ese servicio esté cerrado y deba abrirse.
En este tutorial, demostraremos cómo comprobar los puertos abiertos en Linux desde la línea de comandos.
1) Verifique los puertos abiertos usando el comando ss
El comando ss de Linux le brinda información detallada sobre los puertos abiertos y los sockets de escucha. Extrae información del kernel de Linux y se prefiere al comando obsoleto netstat.
Para mostrar las conexiones TCP de escucha, ejecute el comando
$ ss -tl
Muestra de salida
l – Mostrar tomas de escucha
t – representa el puerto TCP
Para mostrar las conexiones UDP de escucha, emita el comando
$ ss -lu
Muestra de salida
u – representa el puerto UDP
o
Para mostrar tanto tcp como udp, el nombre del proceso
$ ss -lntup
p – Muestra el nombre del proceso que abrió los sockets
Para imprimir todas las conexiones de socket, simplemente use el comando ss en el formato predeterminado
$ ss
Muestra de salida
2) Verifique los puertos abiertos usando el comando netstat
El comando netstat es una poderosa herramienta de comando que se usa para verificar la apertura TCP y UDP puertos junto con otros atributos. Para comprobar los puertos abiertos, ejecute el comando:
$ netstat -pnltu
Muestra de salida
Echemos un vistazo más de cerca a las opciones de pedido:
pags – Muestra el ID de proceso asociado con un servicio o nombre de programa
norte – Muestra el número numérico del puerto en ejecución, p. 3306 por mysqldy 22 por sshd.
eso – Mostrar tomas de escucha
t – Mostrar conexiones TCP
tu – Mostrar conexiones UDP
3) Verifique los puertos abiertos usando el comando lsof
El comando lsof es una herramienta de comando de red que también se puede usar para verificar los puertos abiertos en un sistema Linux. Para mostrar los puertos abiertos, emita el comando
$ lsof -i
Muestra de salida
Si desea mostrar sockets abiertos, use lsof
comando y dirige la salida a grep como se muestra:
$ lsof -n -P | grep LISTEN
Muestra de salida
Para ver todas las conexiones TCP, ejecute:
$ lsof -i tcp
Muestra de salida
Para mostrar todas las conexiones UDP, ejecute el comando:
$ lsof -i udp
Muestra de salida
4) Verifique los puertos abiertos usando la utilidad Nmap
Nmap es una herramienta de escaneo de red gratuita y de código abierto, que generalmente se usa para reconocimiento en piratería ética para descubrir puertos abiertos en sistemas remotos. De forma predeterminada, Nmap no está instalado en su sistema. Para instalar Nmap, ejecute el comando
$ sudo apt install nmap (For Debian/ Ubuntu)
$ sudo yum install nmap (For RedHat/ CentOS)
$ sudo dnf install nmap (For Fedora)
$ pacman -S nmap (ArchLinux)
Para buscar puertos TCP abiertos, ejecute el comando
$ nmap -sT -O localhost
Muestra de salida
Para buscar puertos UDP abiertos, ejecute el comando:
$ nmap -sU localhost
Muestra de salida
conclusión
Estos son los comandos y herramientas de Linux que se utilizan para escanear puertos para comprobar los puertos abiertos en un sistema Linux. Como siempre, sus comentarios son bienvenidos. Si tiene otras ideas sobre cómo verificar los puertos abiertos, contáctenos.