Este artículo explica cómo verificar los puertos de escucha y el uso de puertos en un sistema Linux®.
Usando el lsof
comando
El lsof
El comando (List Open Files) produce una lista de archivos que están actualmente abiertos junto con los procesos que los abrieron. Cuando se combina con grep
comando, el lsof
El comando puede realizar búsquedas y listados avanzados.
General lsof
comando
`lsof -i -P -n`
[root@server-01 ~]# lsof -i -P -n
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
chronyd 799 chrony 5u IPv4 19739 0t0 UDP 127.0.0.1:323
chronyd 799 chrony 6u IPv6 19740 0t0 UDP [::1]:323
sshd 1252 root 5u IPv4 26992 0t0 TCP :22 (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :22 (LISTEN)
La última línea del ejemplo anterior muestra que la aplicación sshd
está escuchando en el puerto TCP 22.
La siguiente lista muestra las opciones en el ejemplo de comando anterior:
-i
:Mostrar archivos abiertos por conexiones de red (Internet).-n
:evita que las redes se cambien a nombres de host.-P
:evita que los números de puerto se cambien por nombres de puerto para archivos de red.
Usando grep
con el lsof
comando
Usa el lsof
comando con grep
comando para refinar una búsqueda para incluir solo líneas con los criterios de búsqueda LISTEN
.
`lsof -i -P -n | grep (criteria)`
Salida de ejemplo:
[root@server-01 ~]# lsof -i -P -n | grep LISTEN
sshd 1252 root 5u IPv4 26992 0t0 TCP :22 (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :22 (LISTEN)
Especifique un puerto en un lsof
buscar
Por último, puede especificar un puerto específico para buscar procesos.
`lsof -i :(Port Number)`
[root@server-01 ~]# lsof -i :22
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1252 root 5u IPv4 26992 0t0 TCP :ssh (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :ssh (LISTEN)
Usando el netstat
comando
El netstat
(Estadísticas de red) muestra las conexiones de red, el uso de puertos, los protocolos y otra información.
General netstat
comando
`netstat -tulpn`
Salida de ejemplo:
[root@server-01 ~]# netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1252/sshd
tcp6 0 0 :::22 :::* LISTEN 1252/sshd
udp 0 0 127.0.0.1:323 0.0.0.0:* 799/chronyd
udp6 0 0 ::1:323 :::* 799/chronyd
La siguiente lista muestra las opciones utilizadas en el ejemplo de comando anterior:
-l
:Mostrar tomas de escucha.-n
:Impedir la resolución de nombres de servicios.-p
:Muestra la lista de nombres de procesos que tienen sockets abiertos.-t
:Mostrar conectores TCP.-u
:Mostrar enchufes UPD.
Usando grep
con el netstat
comando
Usa el netstat
comando con grep
comando para refinar una búsqueda para incluir solo líneas con los criterios de búsqueda LISTEN
.
`netstat -tulpn | grep (Criteria)`
[root@server-01 ~]# netstat -tulpn | grep LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1252/sshd
tcp6 0 0 :::22 :::* LISTEN 1252/sshd
Usando el ss
comando
El ss
El comando (Estadísticas de socket) muestra información relacionada con el socket de red. También puedes usar el ss
en los sistemas más nuevos porque ahora reemplaza al netstat
comando.
General ss
comando
`ss -tulwn`
Salida de ejemplo:
[root@server-01 ~]# ss -tulwn
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
icmp6 UNCONN 0 0 *:58 *:*
udp UNCONN 0 0 127.0.0.1:323 0.0.0.0:*
udp UNCONN 0 0 [::1]:323 [::]:*
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
tcp LISTEN 0 128 [::]:22 [::]:*
La siguiente lista muestra las opciones utilizadas en el ejemplo de comando anterior:
-l
Mostrar tomas de escucha.-n
Impedir la resolución de nombres de servicios.-t
Mostrar conectores TCP.-u
Mostrar enchufes UPD.-w
Mostrar tomas RAW.
Usando el nmap
comando
El nmap
El comando (Network Mapper) realiza el escaneo de puertos y el descubrimiento de hosts.
General nmap
comando
`nmap -sT -O localhost`
[root@server-01 ~]# nmap -sT -O localhost
Starting Nmap 7.70 ( https://nmap.org ) at 2020-06-10 22:49 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00036s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 999 closed ports
PORT STATE SERVICE
22/tcp open ssh
La siguiente lista muestra las opciones utilizadas en el ejemplo de comando anterior:
-sT
:Exploración de conexión TCP-O
:Detección del sistema operativo