La verificación de puertos en CentOS es una tarea esencial para administrar la seguridad y el rendimiento de su sistema. A través de esta guía, aprenderá cómo verificar y gestionar los puertos abiertos en su servidor CentOS de manera eficiente.
¿Qué son los puertos y por qué son importantes?
Los puertos de red son puntos de comunicación en un servidor que permiten la transferencia de datos entre dispositivos. Es fundamental verificar y controlar estos puertos para proteger su servidor de posibles amenazas y asegurar una comunicación fluida.
Diferencias entre los puertos UDP y TCP
Los puertos UDP (User Datagram Protocol) y TCP (Transmission Control Protocol) son fundamentales en las comunicaciones de red.
TCP es un protocolo orientado a la conexión, que asegura la entrega de datos en el orden correcto y sin pérdida, estableciendo una conexión entre el emisor y el receptor antes de transmitir datos. Es ideal para aplicaciones que requieren fiabilidad, como la navegación web y el correo electrónico.
UDP, por otro lado, es un protocolo sin conexión, que envía datos sin asegurar la entrega o el orden, lo que lo hace más rápido pero menos fiable. Es adecuado para aplicaciones que requieren rapidez y pueden tolerar alguna pérdida de datos, como la transmisión de video y juegos en línea.
En resumen, TCP prioriza la fiabilidad, mientras que UDP prioriza la velocidad.
Lista de los puertos más usados
A continuación, una lista de los puertos de red más usados. Estos puertos son fundamentales para la comunicación en redes y para el funcionamiento de muchas aplicaciones y servicios en Internet:
- Puerto 20/21 (FTP): Utilizado para transferencia de archivos.
- Puerto 22 (SSH): Protocolo para acceso remoto seguro y transferencia de archivos.
- Puerto 23 (Telnet): Protocolo de acceso remoto no seguro.
- Puerto 25 (SMTP): Utilizado para el envío de correos electrónicos.
- Puerto 53 (DNS): Protocolo para resolución de nombres de dominio.
- Puerto 80 (HTTP): Protocolo para navegación web.
- Puerto 110 (POP3): Protocolo para recibir correos electrónicos.
- Puerto 143 (IMAP): Protocolo para recibir correos electrónicos con más funcionalidades que POP3.
- Puerto 443 (HTTPS): Protocolo para navegación web segura.
- Puerto 3389 (RDP): Protocolo para acceso remoto a escritorios.
Escanear puertos en servidores remotos
nmap es una herramienta que nos sirve para escanear puertos desde una perspectiva externa, es decir no necesitamos estar conectados al servidor. Este software permite identificar puertos abiertos y evaluar la seguridad de su red.
Utilizamos el comando, donde IP_ADDRESS es la dirección ip que queremos escanear:
$ sudo nmap -p 1-65535 IP_ADDRESS
Angry IP Scanner: es una herramienta fácil de usar y rápida, que permite escanear rangos de IP y puertos, mostrando información sobre cada host descubierto. Tiene interfaz gráfica.
Zenmap: La interfaz gráfica oficial de nmap, que facilita la configuración y ejecución de escaneos, ideal para aquellos que prefieren una interfaz más amigable.
Verificar los puertos desde el terminal
Para verificar que puertos TCP estamos utilizando en nuestro servidor CentOS abrimos una terminal y escribimos el comando lsof.
Desde la terminal ejecutamos el siguiente comando, para verificar los puertos con el nombre del protocolo (como se muestra en la imagen):
$ sudo lsof -i | grep LISTEN
El siguiente comando, permite verificar el número del puerto (como se muestra en la imagen):
$ sudo lsof -i -P | grep LISTEN
También se pueden verificar los puertos con el comando ss, en el formato:
$ sudo ss -tulpn | grep LISTEN
El comando netstat es una herramienta poderosa, muestra todos los puertos TCP y UDP que están escuchando en el sistema. Asegúrese de revisar periódicamente esta lista para identificar cualquier puerto no autorizado.
$ sudo netstat -tuln
Gestión de puertos con el Firewall
firewalld es una herramienta esencial para la gestión de puertos en CentOS. Puede verificar los puertos permitidos en el firewall con:
$ sudo firewall-cmd --list-all
Para abrir un puerto específico, se utiliza:
$ sudo firewall-cmd --add-port=PORT/PROTOCOL --permanent
$ sudo firewall-cmd --reload
Esto asegura que los puertos necesarios estén abiertos y los no deseados estén bloqueados.
Recomendaciones de seguridad
La seguridad de los puertos de red es crucial en la protección contra amenazas cibernéticas. Los puertos abiertos pueden convertirse en vías de entrada para ataques maliciosos, exponiendo servicios y datos sensibles. Las amenazas incluyen desde escaneos de puertos hasta ataques de denegación de servicio (DDoS) y explotación de vulnerabilidades en servicios específicos. Implementar una política de seguridad de puertos robusta implica cerrar puertos innecesarios, utilizar firewalls para filtrar tráfico no deseado y monitorear continuamente la actividad de red. Además, el uso de herramientas de escaneo de puertos como nmap puede ayudar a identificar y mitigar riesgos potenciales antes de que sean explotados por cibercriminales. Mantenerse proactivo en la gestión de puertos es esencial para la defensa de la infraestructura de red.
Conclusión
Verificar los puertos en CentOS es una tarea esencial para asegurar el correcto funcionamiento y seguridad de su servidor. Utilizando comandos como `lsof` y `ss`, puede obtener información detallada sobre los puertos en uso y los servicios asociados. Este artículo le proporciona instrucciones claras y precisas para ejecutar estos comandos y verificar los puertos activos en su sistema. Siguiendo estas guías, podrá gestionar de manera eficiente los recursos de red y mejorar la administración de su entorno CentOS.