50% de descuento Todos los planes, tiempo limitado. A partir de $2.48/mo
Quedan 9 minutos
Seguridad y redes

¿Cómo comprobar los puertos abiertos en Linux con comandos o PowerShell?

Kelly Watson By Kelly Watson 9 minutos de lectura Actualizado el 28 de octubre de 2025
Un corredor digital con "puertas" de puertos numeradas a la derecha, una abierta y otra cerrada, que simboliza la respuesta a "¿cómo comprobar los puertos abiertos en Linux en busca de vulnerabilidades?"

La mayoría de la gente piensa que comprobar los puertos abiertos es una tarea sólo para expertos en seguridad hasta que su servidor se ve comprometido a través de un puerto expuesto que ni siquiera sabían que estaba escuchando. Puede verificar los puertos abiertos en Linux usando comandos integrados como netstat, ss, lsof, nmap y netcat, o escanear puertos de forma remota usando PowerShell desde sistemas Windows. Cada método ofrece diferentes niveles de detalle y requiere distintos permisos.

La gestión portuaria es más importante que nunca. Las actividades de reconocimiento automatizado siguen aumentando y los atacantes buscan constantemente puntos de entrada vulnerables. Ya sea que esté protegiendo servidores de producción o probando servicios locales, dominar la seguridad de los puertos es fundamental para mantener un sistema seguro y funcional.

TL;DR: Descripción rápida

  • Utilice ss o netstat para realizar comprobaciones rápidas de los puertos de escucha sin instalar herramientas adicionales
  • Implemente nmap cuando necesite un escaneo completo de puertos con detección detallada de servicios
  • Utilice lsof para identificar qué proceso específico está utilizando un puerto en particular
  • Utilice Test-NetConnection de PowerShell desde Windows para verificar puertos en servidores Linux remotos

¿Qué es un puerto en términos simples?

Una ilustración en 3D de un servidor como un edificio con muchas "puertas" de puertos numeradas, que explica qué es un puerto en términos simples.

Piense en los puertos como puertas numeradas en su servidor. Cada puerto sirve como punto final de comunicación por donde el tráfico de red entra o sale de su sistema. Los números de puerto varían de 0 a 65.535, divididos en tres categorías: puertos conocidos (0-1023), puertos registrados (1024-49151) y puertos dinámicos (49152-65.535).

En palabras más simples, cuando navega por un sitio web, su navegador accede al puerto 80 para HTTP o al puerto 443 para HTTPS. Los servidores de correo electrónico responden en el puerto 25 para SMTP, mientras que el acceso remoto SSH opera en el puerto 22. Estos puertos de escucha actúan como puertas de enlace para el tráfico legítimo, pero también pueden convertirse en puntos de entrada para los atacantes si se dejan desprotegidos.

Los puertos funcionan en conjunto con dos protocolos de transporte principales: TCP para una comunicación confiable y orientada a la conexión y UDP para una transferencia de datos más rápida y sin conexión. Comprender cómo funcionan los puertos le ayuda a tomar decisiones informadas sobre cuáles mantener abiertos y cuáles cerrar para mayor seguridad.

Cómo comprobar los puertos abiertos en Linux

Una lupa con la etiqueta "netstat" que inspecciona las conexiones de red, lo que simboliza el papel del comando en el análisis de la red.

Linux proporciona varias herramientas poderosas para el análisis de puertos, cada una con distintas ventajas. Algunos vienen preinstalados, mientras que otros requieren instalación. La elección de la herramienta adecuada depende de su nivel de permiso, los detalles requeridos y el caso de uso específico.

Usando el comando netstat

El comando netstat ha sido una herramienta confiable para el análisis de redes durante décadas. Para comprobar los puertos abiertos, utilice netstat-tuln donde cada indicador tiene un propósito específico: -t muestra conexiones TCP, -u muestra conexiones UDP, -l filtra solo para puertos de escucha y -n presenta resultados en formato numérico en lugar de resolver nombres de host.

Cuando ejecute este comando, verá un resultado que muestra el protocolo, la dirección local con número de puerto, la dirección extranjera y el estado de la conexión. Por ejemplo, 0.0.0.0:22 indica que SSH está escuchando en todas las interfaces de red en el puerto 22. Cada entrada proporciona visibilidad inmediata de los servicios activos y su estado de red.

El Comando netstat de Linux ofrece indicadores adicionales para un análisis más detallado. Agregar -p muestra qué proceso posee cada conexión, aunque esto requiere privilegios de root. Por ejemplo, sudo netstat-tulnp revela tanto el puerto como el ID del proceso que lo utiliza.

Usando el comando ss

El comando ss sirve como reemplazo moderno de netstat y ofrece un rendimiento superior y estadísticas de socket más detalladas. Usar ss-tuln con las mismas banderas que netstat para una producción comparable. Sin embargo, ss procesa información más rápido, especialmente en sistemas con numerosas conexiones.

Para comprobar los puertos abiertos con filtrado avanzado, ss proporciona potentes opciones de sintaxis. Correr ss-tulnp | grep :22 muestra solo conexiones relacionadas con SSH. el comando ss -tn estado establecido muestra todas las conexiones TCP establecidas, lo que le ayuda a monitorear las sesiones activas.

Una ventaja de ss es su capacidad de filtrar según criterios específicos. Por ejemplo, ss -t '( dport = :80 o deporte = :80 )' muestra solo conexiones relacionadas con el tráfico web en el puerto 80. Esta precisión hace que ss sea invaluable para solucionar problemas de servicios específicos.

Usando el comando lsof

El comando lsof sobresale en identificar qué proceso está utilizando un puerto específico. Correr sudo lsof -i -P -n muestra todas las conexiones de red con detalles del proceso. El indicador -i filtra las conexiones a Internet, -P evita la conversión del número de puerto a nombres de servicios y -n omite la resolución de DNS para obtener resultados más rápidos.

Cuando necesita encontrar qué está utilizando un puerto específico, lsof proporciona la respuesta. Por ejemplo, sudolsof-i: 3306 revela si MySQL se está ejecutando y qué ID de proceso es el propietario. Esto resulta crucial a la hora de solucionar conflictos de puertos o identificar servicios no autorizados.

También puede filtrar los resultados por aplicaciones específicas. Si sospecha que un programa en particular está escuchando en puertos inesperados, sudo lsof -i -a -p [PID] muestra todas las conexiones de red para ese ID de proceso específico.

Usando Nmap para escanear puertos

Un mapa de red escaneado por Nmap, que parece un barrido de sonar que identifica puertos abiertos y cerrados en diferentes dispositivos.

Nmap se erige como una de las herramientas de escaneo de puertos más completas disponibles. Primero, instálelo con sudo apto instalar nmap en sistemas Ubuntu o Debian. Para verificaciones en puertos locales, utilice servidor local nmap or mapa nm 127.0.0.1 para un escaneo básico.

Para servidores remotos, especifique la dirección IP: mapa n 192.168.1.100. Nmap proporciona información detallada sobre puertos abiertos, versiones de servicios e incluso detección del sistema operativo con indicadores avanzados. el comando nmap -sV localhost realiza la detección de la versión del servicio, revelando exactamente qué software se está ejecutando en cada puerto.

Los equipos de seguridad valoran la capacidad de Nmap para probar reglas de firewall. Correr mapan-Pn [IP] escanea un host incluso si el ping está bloqueado. Sin embargo, asegúrese siempre de tener permiso antes de escanear servidores remotos, ya que el escaneo de puertos no autorizados puede violar las políticas de seguridad.

Usando Netcat (nc) para verificar los puertos abiertos

Netcat ofrece un enfoque sencillo para la verificación de puertos con una sobrecarga mínima. el comando nc-zv localhost 22-80 escanea el rango de puertos del 22 al 80, mostrando qué puertos aceptan conexiones. El indicador -z habilita el modo de escaneo sin enviar datos, mientras que -v proporciona una salida detallada.

Para la verificación de un solo puerto, nc -zv nombre de host 443 confirma rápidamente si HTTPS es accesible. Este método resulta útil en scripts y flujos de trabajo de automatización. Puede combinar netcat con shell loops para un escaneo más amplio: para el puerto en {1..1000}; hacer nc -zv localhost $puerto 2>&1 | grep tuvo éxito; hecho

El oyente netcat La funcionalidad se extiende más allá de la verificación de puertos hasta las pruebas de servicios reales y la transferencia de datos, lo que la convierte en una herramienta versátil en el conjunto de herramientas de cualquier administrador.

Uso de PowerShell para comprobar los puertos abiertos

PowerShell permite a los usuarios de Windows comprobar puertos abiertos en servidores Linux remotos sin instalar software adicional. el comando Test-NetConnection -NombreEquipo [Linux-IP] -Puerto 22 verifica la accesibilidad SSH desde una máquina con Windows.

Para escanear varios puertos, cree un bucle de PowerShell simple: 1..1024 | ForEach-Object { Test-NetConnection -ComputerName 192.168.1.100 -Port $_ -WarningAction SilentlyContinue } | Objeto-Dónde { $_.TcpTestSucceeded }. Este método funciona eficazmente al comprobar puertos en Ubuntu, Debian o cualquier otra distribución de Linux desde sistemas Windows.

La ventaja de PowerShell radica en su integración con la infraestructura de Windows. Puede exportar resultados a CSV, enviar alertas por correo electrónico o activar respuestas automáticas según el estado del puerto, lo que lo hace ideal para el monitoreo de entornos híbridos.

Comparación de métodos de escaneo de puertos

Herramienta Sintaxis del comando Mejor para Requisitos previos
netstat netstat-tuln Descripción rápida de los puertos de escucha Preinstalado en la mayoría de los sistemas
ss ss-tuln Rendimiento rápido, información detallada del socket Preinstalado (Linux moderno)
lsof sudo lsof -i -P -n Encontrar qué proceso utiliza un puerto Se requiere acceso root/sudo
nmapa servidor local nmap Escaneo completo de puertos Debe instalarse por separado
netcat nc -zv puerto de host Pruebas simples de conectividad de puertos Preinstalado o fácil instalación
PowerShell Prueba-NetConnection Escaneo remoto desde Windows Se requiere una máquina Windows

Puertos comunes de Linux y sus servicios asociados

Puerto Servicio Protocolo Uso común
22 SSH tcp Acceso remoto seguro mediante Conexión remota SSH
80 HTTP tcp Tráfico web no cifrado
443 HTTPS tcp Tráfico web cifrado
21 ftp tcp Transferencias de archivos
25 SMTP tcp Envío de correo electrónico
3306 mysql tcp Conexiones de bases de datos
5432 PostgreSQL tcp Conexiones de bases de datos

La configuración del puerto requiere conocimiento de la configuración del firewall y los enlaces de servicios. Muchos administradores cambiar el puerto SSH en Linux del 22 predeterminado a un puerto no estándar para reducir los intentos de ataques automatizados. El Telnet frente a SSH El debate destaca por qué el puerto 23 (Telnet) debería permanecer cerrado en favor del protocolo SSH cifrado del puerto 22.

Comprender los puertos abiertos en Linux

Una muralla de fortaleza con puertas de puerto numeradas, una de las cuales está abierta y vulnerable, lo que simboliza los riesgos de seguridad de los puertos abiertos.

Cada puerto abierto representa un punto de entrada potencial a su sistema. Las implicaciones para la seguridad se han intensificado, con un aumento de la actividad de escaneo automatizado de puertos. 16,7% a nivel mundial, ya que los actores de amenazas buscan continuamente puntos de entrada vulnerables. Estas actividades de reconocimiento escanean miles de millones de puertos mensualmente, en busca de servicios mal configurados o software desactualizado.

Es cierto, pero ¿qué sucede realmente cuando los atacantes encuentran un puerto abierto? Los estados portuarios te cuentan la historia. Un puerto en estado LISTEN acepta conexiones entrantes, ESTABLECIDO indica transferencia de datos activa y TIME_WAIT muestra una conexión cerrada recientemente pero aún rastreada. Los atacantes explotan los puertos abiertos mediante varios métodos: ataques de fuerza bruta en SSH (puerto 22), inyección de SQL a través de puertos web (80/443) y ejecución remota de código a través de servicios vulnerables.

Abrir puertos de forma segura requiere un enfoque de defensa en profundidad. Comience con una política de firewall de denegación predeterminada. Verifique su configuración con iptables muestra reglas. Abra solo los puertos para los servicios que utiliza activamente y ciérrelos inmediatamente cuando ya no los necesite. Considere cambiar los puertos predeterminados de los servicios comunes para reducir el éxito del escaneo automatizado.

El ecosistema Linux enfrentó importantes desafíos de seguridad, con cientos de vulnerabilidades que requerían parches. La auditoría periódica de puertos le ayuda a descubrir servicios no autorizados antes de que lo hagan los atacantes. Utilice herramientas de transferencia de archivos que respeten los límites de seguridad, como copiar archivos a través de SSH en lugar de FTP sin cifrar. Al mover archivos entre sistemas, utilizando SCP para copiar archivos desde un sistema remoto a local proporciona transferencia cifrada a través del canal seguro de SSH.

Las mejores prácticas incluyen implementar la activación de puertos para servicios confidenciales, usar fail2ban para bloquear fallas de autenticación repetidas y mantener registros detallados de los intentos de conexión. Programe auditorías de seguridad periódicas para revisar qué puertos permanecen abiertos y si todavía sirven para fines legítimos.

Cómo el VPS Linux de Cloudzy simplifica la gestión de puertos

La gestión de puertos se vuelve mucho más fácil con una infraestructura bien configurada. Nuboso VPS Linux Las soluciones proporcionan configuraciones de seguridad preconfiguradas que incluyen reglas de firewall inteligentes y administración de puertos optimizada a través de un panel de control intuitivo. Con acceso completo a la raíz, usted mantiene un control total sobre qué puertos abrir o cerrar.

Alojamiento VPS Linux

Consiga un VPS Linux económico o premium para alojar su sitio web o escritorio remoto, al precio más barato que existe. VPS que se ejecuta en Linux KVM para una mayor eficiencia y funciona en hardware potente con almacenamiento SSD NVMe para una mayor velocidad.

Leer más

El rendimiento importa a la hora de comprobar y gestionar puertos. El almacenamiento NVMe de Cloudzy garantiza que sus herramientas de escaneo de puertos se ejecuten de manera eficiente, mientras que las conexiones de hasta 10 Gbps manejan un tráfico de gran volumen sin cuellos de botella. La infraestructura se beneficia del hecho de que Linux impulsa una parte importante de la infraestructura global de servidores, lo que hace que estas configuraciones optimizadas sean confiables y probadas en batalla.

A partir de sólo $3,96 mensuales, obtendrá un entorno de nivel profesional perfecto para practicar técnicas de gestión portuaria. Múltiples ubicaciones de centros de datos le permiten probar configuraciones distribuidas geográficamente, mientras que el soporte 24 horas al día, 7 días a la semana lo ayuda con configuraciones complejas de firewall o resolución de problemas relacionados con puertos. Ya sea que esté aprendiendo a verificar puertos abiertos en Linux o implementando servicios de producción, tener un entorno VPS flexible acelera sus implementaciones de seguridad.

Conclusión

Entonces, ¿cuál es la mejor manera de comprobar los puertos abiertos? Para decirlo claramente, no existe ninguno. Para verificaciones locales rápidas, ss o netstat hacen el trabajo sin problemas. Cuando necesita auditorías de seguridad integrales, Nmap lo revela todo. Para rastrear qué proceso posee un puerto, lsof ahorra horas de conjeturas. PowerShell une Windows y Linux cuando necesita verificación remota.

La verdadera lección aquí no se trata de memorizar comandos. Se trata de hacer de la auditoría de puertos una rutina en lugar de una respuesta de pánico. Programe análisis semanales, cierre los puertos no utilizados en el momento en que los detecte y documente qué servicios necesitan qué puertos. Ese enfoque transforma la inspección portuaria de una lucha reactiva contra incendios a una defensa proactiva.

Compartir

Más del blog

Sigue leyendo.

Una imagen de título de Cloudzy para una guía de VPN MikroTik L2TP, que muestra una computadora portátil que se conecta a un rack de servidores a través de un túnel digital azul y dorado brillante con íconos de escudo.
Seguridad y redes

Configuración de MikroTik L2TP VPN (con IPsec): Guía de RouterOS (2026)

En esta configuración de VPN MikroTik L2TP, L2TP maneja el túnel mientras IPsec maneja el cifrado y la integridad; emparejarlos le brinda compatibilidad con el cliente nativo sin la edad de terceros

Rexa CiroRexa Ciro 9 minutos de lectura
Ventana de terminal que muestra un mensaje de advertencia SSH sobre el cambio de identificación del host remoto, con el título de Fix Guide y la marca Cloudzy sobre un fondo verde azulado oscuro.
Seguridad y redes

Advertencia: la identificación del host remoto ha cambiado y cómo solucionarlo

SSH es un protocolo de red seguro que crea un túnel cifrado entre sistemas. Sigue siendo popular entre los desarrolladores que necesitan acceso remoto a las computadoras sin necesidad de un gráfico.

Rexa CiroRexa Ciro 10 minutos de lectura
Ilustración de la guía de solución de problemas del servidor DNS con símbolos de advertencia y servidor azul sobre fondo oscuro para errores de resolución de nombres de Linux
Seguridad y redes

Fallo temporal en la resolución de nombres: ¿Qué significa y cómo solucionarlo?

Mientras usa Linux, puede encontrar una falla temporal en el error de resolución de nombres al intentar acceder a sitios web, actualizar paquetes o ejecutar tareas que requieren una conexión a Internet.

Rexa CiroRexa Ciro 12 minutos de lectura

¿Listo para implementar? Desde $2,48/mes.

Nube independiente, desde 2008. AMD EPYC, NVMe, 40 Gbps. Devolución de dinero en 14 días.