Cargando

Ir a contenido

X

 


Cómo encontrar y ver puertos abiertos en sistemas Linux

Tutorial para poder ver puertos abiertos Linux en Centos o Ubuntu o saber qué puertos tengo abiertos.


Escrito por abr 29 2020 15:25 ubuntu debian fedora centos

En la gestión cotidiana de diversos entornos de sistemas operativos debemos siempre estar atentos a los diferentes parámetros de los equipos bajo nuestro cargo o soporte con el fin de monitorear amenazas, encontrar errores e incrementar la seguridad de los mismos con el fin de evitar tareas administrativas y de gestión innecesarias.Uno de los temas que muchas veces pasamos inadvertidos está asociado a los puertos que usan nuestros equipos para la respectiva comunicación en la red y esto puede convertirse en una vulnerabilidad critica en el correcto funcionamiento de los sistemas operativos.

 

Hoy veremos en detalle cómo ver puertos abiertos Linux en diversas distros de Linux como ver puertos abiertos CentOs 8, con el fin de comprender y conocer que puertos tengo abiertos y están “escuchando” la información. Es importante que controlemos los puertos abiertos Linux porque podemos estar comprometiendo nuestra seguridad. Si al ver puertos abiertos Linux comprobamos que tenemos alguno que no usamos, es mejor que los cerremos para evitar accesos indeseados. Hoy veremos la importancia de listar puertos abiertos Linux y controlar si tenemos algún fallo de seguridad.

 

Qué son los puertos abiertos en Linux
En primer lugar debemos comprender que un puerto no es abierto automáticamente por la distro de Linux, es un determinado programa que lo abre para cumplir con una tarea específica.

 

De modo que si deseamos cerrar un puerto deberíamos sencillamente cerrar el programa que usa dicho puerto. O cerrar directamente el puerto a través de Firewall del sistema.

 

Tutorial para saber cómo ver, cerrar o abrir puertos en CentOS 8 paso a paso de manera práctica.

 

Puertos Linux
Entre los puertos más conocidos tenemos:

 

  • 21: Puerto de FTP
  • 80: Puerto del HTTP
  • 25: Puerto del SMTP

 

 

Un puerto es básicamente un número de 16 bits comprendido entre 0 y 65535 el cual diferencia un programa a otro en el sistema operativo.

 

 

Categoría de puertos
La categoría de los puertos puede ser clasificada de la siguiente manera:

 

  • 0-1023: Son los puertos del sistema.
  • 1024-49151: Son puertos registrados o puertos de usuario.
  • 49152-65535: Son puertos dinámicos o puertos privados.

 

 

Como podemos ver tener un claro conocimiento de los puertos abiertos en las diversas distros de Linux nos permiten tener un control centralizado sobre qué acción está siendo ejecutada por el equipo a nivel interno.

 

 


1. Ver puertos abiertos Ubuntu

 

Paso 1

En primer lugar para ver el listado completo de las aplicaciones y su respectivo protocolo podemos usar el siguiente comando:
cat /etc/services

puertos-de-red-linux-1.png

 

 

Paso 2

Podemos ver en detalle la aplicación, el número de puerto y el grupo al cual pertenece. También es posible usar el siguiente comando que nos permite ver de forma más detallada cada protocolo. Allí basta con pulsar Enter para ir desplazando hacia abajo la lista de los comandos.
cat /etc/services | less

puertos-de-red-linux-2.png

 

 


2. Ver puertos TCP, UDP abiertos Linux Ubuntu

 

Paso 1

Es posible que deseemos visualizar un grupo determinado de puertos en Ubuntu, por ejemplo, si deseamos listar únicamente los puertos TCP y UDP usaremos el siguiente comando:
netstat -lntu
Paso 2

Obtendremos el siguiente resultado:

 

 

 

 

netstat-lntu-3.png

 

 

Paso 3

Gracias a netsat podemos ver las estadísticas de la red en tiempo real y los demás parámetros agregados son:

 

  • -l: Permite ver exclusivamente los puertos de escucha
  • -n: Permite ver el número de puerto
  • -t: Visualiza los puertos TCP
  • -u: Visualiza los puertos UDP

 

 

Paso 4

Podemos usar el siguiente comando para visualizar todos los puertos que están “escuchando”, es decir, abiertos.
Netstat -l

activar-zocalo-dominios-server-linux-4.png

 

 

Paso 5

También podemos usar los siguientes comandos:

 

netstat -lt
Listar todos los puertos TCP abiertos

 

netstat -lu
Listar todos los puertos UDP abiertos

 

netstat -au
Listar todas las conexiones UDP

 

 

Paso 6

Un último comando útil en Ubuntu 16 es el siguiente:
ss -lntu
El parámetro SS permite ver los respectivos sockets en el sistema, en este caso hemos agregado los valores -lntu para desplegar los sockets de los puertos TCP y UDP.

 

 


3. Ver puertos abiertos CentOS 7, CentOS 8

 

Paso 1

En CentOS 7 una de las formas más prácticas como podemos ver los puertos abiertos es usando nmap, para ello debemos ejecutar el siguiente comando:
Nmap localhost
Paso 2

El resultado obtenido será el siguiente. Podemos ver que puertos tenemos abiertos en el momento, el número de puerto y el servicio que lo está abriendo, del mismo modo podemos ver cuantos puertos están cerrados.

 

 

 

 

 

 

nmap-localhost-5.png

 

 

Nota
En caso de no tener instalado nmap podemos usar el siguiente comando para instalarlo en CentOS 7:
sudo yum install nmap

 

Paso 3

Usando Nmap podemos visualizar los puertos abiertos en un sitio web desde CentOS 7, por ejemplo para ver los puertos abiertos de Solvetic.com usaremos el siguiente comando. Podemos ver número, estado y tipo de servicio del puerto.
nmap 178.33.118.246

puertos-abiertos-nmap-linux-6.png

 

 

Paso 4

Adicionalmente podemos usar el comando netstat para ver en detalle el estado de los puertos en CentOS 7, para ver el listado completo de puertos usaremos el siguiente comando:
netstat -l

listening-puertos-7.png

 


4. Ver puertos TCP, UDP abiertos Linux CentOS 8, 7

 

 

Paso 1

En CentOS 7 o CentOS 8podemos usar la siguiente sintaxis para ver el estado de determinados tipos de puertos:
netstat -lt(Iniciales de puerto)
Paso 2

Por ejemplo, para ver exclusivamente los puertos TCP y UDP usaremos el siguiente comando:
netstat -ltup

comando-netstat-mostrar-puertos-8.png

 

Paso 3

Si deseamos ver solo los puertos TCP usaremos:
netstat -ltp

comando-netstat-9.png

 

Paso 4

Finalmente en CentOS 8 podemos hacer uso de NetCat para determinar el estado de un puerto, para ello debemos usar la siguiente sintaxis:
nc -vn 1 (Dirección IP) (Numero de puerto)
Paso 5

En este ejemplo validaremos si el puerto 21 de la dirección IP 192.168.0.29 está o no abierto, para ello ingresamos lo siguiente:
nc -vn 1 192.168.0.29 21
Paso 6

El resultado obtenido será el siguiente:

 

 

 

 

 

comando-nc-linux-connection-refused-10.png

 

 

Paso 7

Si el mensaje retornado es Connection refused indica que el puerto esta cerrado. Si el mensaje desplegado es Connected significa que el puerto está abierto.

 

comando-nc-linux-11.png

 

 


5. Ver puertos abiertos Debian

 

 

Paso 1

En Debian el comando básico para verificar los puertos abiertos es el siguiente:
Nmap -sT -O localhost

comando-nmap-linux-12.png

 

Nota
Este comando debe correrse con privilegios de root.

 

Paso 2

Podemos usar el comando netcat (nc) para realizar la validación de un puerto en particular del equipo, para esto es importante conocer la dirección IP de la máquina.

 

Una vez tengamos la IP, en este caso 192.168.0.31, usaremos el siguiente comando. En este caso hemos recibido el mensaje Connection refused el cual indica que el puerto 25 en la IP indicada se encuentra cerrado, si el mensaje desplegado es Connected indica que el puerto está abierto.

nc -zv 192.168.0.31 25

comando-nc-linux-13.png

 

 

 


6. Ver puertos abiertos Debian desde web


En Debian 11 es posible usar nmap para consultar los puertos abiertos de un determinado sitio web.

 

 

Paso 1

Para ello usaremos la siguiente sintaxis:
nmap -v -A (Sitio web)
Paso 2

Por ejemplo veremos que puertos abiertos tiene el sitio web Solvetic.com:

 

 

 

 

 

nmap-ltp-linux-14.png

 

 

Paso 3

Podemos ver que el resultado nos indica número de puerto, estado y dirección. Otra de las alternativas que nos ofrece Debian para verificar los puertos abiertos de un servicio en exclusivo podemos usar el siguiente comando:
netstat -lt(Inicial protocolo)
Paso 4

Por ejemplo para ver los puertos TCP usaremos el siguiente comando:
netstat -ltp

netstat-ltp-linux-15.png

 

Así mismo podemos usar el comando netstat -l para obtener un listado completo de todos los puertos abiertos en Debian .

 

 


7. Ver puertos abiertos Fedora


Para verificar los puertos abiertos en Fedora 25 podemos usar alguna de las opciones mencionadas en las distros anteriores con total confianza.

 

 

Paso 1

Para ver un listado completo de todos los puertos abiertos podemos usar dos opciones:
netstat -l
nmap -sT -O localhost
Paso 2

En ambos casos el resultado nos indicará que puertos están abiertos actualmente en Fedora 25.

 

 

 

 

 

comando-linux-nmap-16.png

 

 


8. Ver puertos abiertos TCP Linux Fedora

 

Paso 1

Para verificar esto podemos usar el comando netstat seguido del respectivo parámetro, por ejemplo, para validar los puertos TCP podemos usar el siguiente comando:
netstat -ltp

comando-linux-netstat-17.png

 

Paso 2

Del mismo modo podemos agregar el parámetro del puerto requerido para su respectiva consulta.
Si deseamos verificar los sockets que están siendo usados por un puerto en particular podemos usar el siguiente comando:
ss -lnt  (Listar los sockets usados por TCP)

comando-linux-ss-18.png

 

 


9. Listar puertos abiertos Linux

 

También podemos usar el siguiente comando isof que permite ver archivos abiertos pero también nos permitirá ver los puertos abiertos.

 

Paso 1

Para listar puestos abiertos Linux usaremos el siguiente comando:
lsof -i -P -n
#yum install lsof para RHEL y CentOS
apt install lsof para Debian y Ubuntu
Paso 2

Si queremos listar puerto concreto Linux, podemos usar el siguiente comando poniendo el puerto que nos interesa:
lsof -i :puerto
lsof -i :22
De esta manera contamos con diversas formas de verificar todos los puertos o un puerto en específico cuyo estado sea en “escucha” para de este modo determinar si este puerto debe o no estar abierto y en caso de no ser así tomar medidas preventivas.

 

Aprende cómo abrir o agregar un puerto en el Firewall de CentOS7 y así habilitar la conexión a través de él.



AYUDA A MEJORAR ESTE TUTORIAL!

¿Crees que puedes corregir o mejorar este tutorial? Puedes enviar tu Edición con los cambios que consideres útiles.
0 usuarios han editado este tutorial. ¡Edita y conviértete en un reconocido experto!


Tutoriales Relacionados



Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!


  Información

  •   Publicado abr 29 2020 15:25
  •   Visitas 141.2K
  •   Nivel
    Avanzado