Saltar al contenido
Guías

Cómo comprobar los puertos abiertos: desde fuera, en el equipo y con Nmap

Un puerto abierto es una puerta por la que se puede llegar a un servicio de tu red. Saber cuáles hay es el primer paso para cerrar lo que sobra. Aquí está cómo comprobarlo desde fuera, en cada equipo y con Nmap, y cómo leer lo que sale.

Tres puertas blancas cerradas en una pared pintada de amarillo, naranja y lilaFoto: Image Hunter, en Pexels
Redacción de Firewalls Hardware · Actualizado el · 5 min de lectura
En este artículo

Un puerto, explica INCIBE, es el punto donde se intercambia la información entre un equipo y una web, otro equipo o un servidor. Según INCIBE, un router tiene 65.536, numerados del 0 al 65.535. Un puerto abierto es uno en el que hay un servicio esperando conexiones. Si se puede llegar a él desde internet, cualquiera puede intentarlo.

INCIBE lo explica así: si los puertos se quedan abiertos sin necesidad, un simple análisis desde el exterior los pone en el radar de los ciberdelincuentes, y muchos programas maliciosos usan puertos concretos para atacar. Por eso conviene saber qué está abierto, y no suponerlo.

Las tres formas de mirarlo

No es lo mismo un puerto abierto en un ordenador que un puerto abierto a internet. Hay que mirar desde varios sitios:

Dónde mirar y qué responde cada comprobación
ComprobaciónResponde aCon qué
Desde internet, contra tu IP públicaQué ve un atacante de tu oficinaUn servicio en línea de comprobación de puertos o un escáner lanzado desde fuera
En el panel del router o del cortafuegosQué reglas dejan pasar tráfico desde fueraLas secciones de NAT, redirección de puertos y UPnP
En cada equipoQué programas están escuchando y en qué puertosnetstat en Windows, o el equivalente en otros sistemas

Desde fuera: lo que ve internet

Es la comprobación que más importa, porque es la que hace cualquiera que te ataque. INCIBE recomienda a las empresas conocer su IP pública, en el panel del router o con una web que la muestre, y comprobar qué puertos tiene abiertos al exterior. Cita la herramienta gratuita de la Asociación de Internautas, que revisa los puertos de los protocolos más comunes.

Un detalle importante: la prueba tiene que salir de fuera de tu red. Como explica la guía de Nmap, más abajo, lo que se ve de un puerto depende de desde dónde se mire, y una prueba lanzada desde la propia oficina puede no coincidir con lo que ve internet. Lo seguro es usar un servicio en línea o una conexión ajena, como los datos del móvil.

En el router: las reglas que abren puertos

Un puerto queda abierto a internet porque alguna regla lo permite. INCIBE indica que esa configuración suele estar en los apartados de NAT, Port Forwarding u opciones avanzadas del router. Revisa:

  • Las redirecciones de puertos, que se explican en la guía de NAT. Cada una debería tener un motivo que sigue vigente.
  • Las aperturas automáticas por UPnP, que los equipos de la red hacen sin preguntar.
  • Si hay un equipo en la opción «DMZ» del router. Mira en el manual de tu modelo qué hace exactamente: no tiene por qué ser lo mismo que una DMZ de verdad, con su propia red y sus reglas, y puede dejar el equipo mucho más expuesto.

INCIBE avisa también de que no conviene abrir puertos a mano si luego no se cierran cuando dejan de hacer falta.

En el equipo: netstat

En Windows, el comando netstat muestra las conexiones y los puertos que tiene el propio equipo. Según la documentación de Microsoft:

  • netstat -a muestra todas las conexiones TCP activas y los puertos TCP y UDP en los que escucha el equipo.
  • -n muestra direcciones y puertos en número, sin intentar traducirlos a nombres.
  • -o añade el identificador del proceso (PID), que se puede buscar en la pestaña de procesos del Administrador de tareas.
  • -b muestra el programa que ha abierto cada conexión o puerto.

La combinación netstat -ano da la lista completa con el proceso de cada línea. Las que interesan son las que están en estado de escucha. Un puerto que escucha en un equipo no está necesariamente abierto a internet: solo lo está si el router o el cortafuegos dejan llegar el tráfico. Pero sí está abierto para el resto de la red local, que es por donde se mueve un atacante que ya ha entrado.

Con Nmap: un escáner de verdad

Nmap es un escáner de puertos libre y muy extendido. Según su guía de referencia, la orden más sencilla, nmap seguido de la dirección, revisa los 1.000 puertos TCP más habituales. Con la opción -p- revisa todos, del 1 al 65.535, y con -sU revisa los puertos UDP, que la guía recuerda que no conviene olvidar: servicios como DNS o SNMP funcionan por UDP y los atacantes no los ignoran.

Cómo leer el resultado

Nmap no se limita a «abierto» o «cerrado». Distingue seis estados, y aclara que no son una propiedad del puerto sino de cómo lo ve Nmap desde donde se lanza:

Los estados principales de un puerto según Nmap
EstadoQué significaQué hacer
open (abierto)Hay un programa aceptando conexiones en ese puertoComprobar que es un servicio que debe estar ahí y que está actualizado
closed (cerrado)El puerto responde, pero no hay ningún programa escuchandoNo es grave, pero delata que hay un equipo en esa dirección. Nmap sugiere a los administradores bloquearlo con el cortafuegos
filtered (filtrado)Un filtro impide que las sondas lleguen al puerto, sea un cortafuegos, las reglas de un router o el cortafuegos del propio equipoEs lo esperado en lo que no debe estar expuesto
open|filteredNmap no puede distinguir si está abierto o filtrado, algo habitual en UDPComprobarlo por otro medio, por ejemplo con netstat en el equipo

Los otros dos estados, unfiltered y closed|filtered, solo aparecen con tipos de escaneo menos habituales. La guía de Nmap pone un ejemplo de por qué importa desde dónde se mira: el mismo puerto 135 puede salir abierto escaneando desde la red local y filtrado escaneando a la vez desde internet.

Qué hacer con lo que encuentres

Esto es criterio de esta web, a partir de lo anterior:

  • Cada puerto abierto a internet necesita un motivo. Si nadie sabe para qué está, se cierra y se mira quién protesta.
  • Nada de administración a la vista. El escritorio remoto, SSH o el panel del propio router no deberían salir abiertos desde fuera. Para entrar desde casa, mejor una VPN. Lo que queda expuesto recibe intentos de fuerza bruta casi desde el primer minuto, y es una de las vías de entrada del ransomware.
  • Lo que sí debe estar abierto, limitado y vigilado: si se puede, solo para las IP que lo usan, con el software al día y con un IPS o, al menos, con los registros revisados.
  • Repetir la comprobación. Después de cada cambio en el router, al instalar un equipo nuevo y de vez en cuando, porque las reglas se acumulan y UPnP abre puertos solo.

Escanea solo lo tuyo. Es criterio de esta web: comprueba tu propia IP pública y tus propios equipos, o los de un cliente que te lo haya pedido por escrito. Escanear redes ajenas sin permiso puede causar problemas, incluso legales, y en una red de empresa conviene avisar antes al responsable para que nadie lo tome por un ataque.

Preguntas frecuentes

¿Cómo sé qué puertos tengo abiertos en el router?

Hay que mirarlo desde fuera: con un servicio en línea de comprobación de puertos, como el de la Asociación de Internautas que cita INCIBE, o con un escáner como Nmap lanzado desde una conexión ajena a la oficina contra tu IP pública. También conviene revisar en el panel del router las reglas de redirección de puertos y las abiertas por UPnP.

¿Cómo veo los puertos abiertos en Windows?

Con el comando netstat. Según Microsoft, la opción -a muestra las conexiones activas y los puertos TCP y UDP en los que escucha el equipo, -n los muestra en número y -o añade el identificador del proceso, que se puede buscar en el Administrador de tareas.

¿Qué significa que un puerto esté filtrado en Nmap?

Que Nmap no puede saber si está abierto porque un filtro, como un cortafuegos o las reglas de un router, impide que sus sondas lleguen al puerto. Para quien protege la red, es lo que se espera ver en lo que no debe estar expuesto.

¿Cuántos puertos tiene un router?

Según INCIBE, 65.536, numerados del 0 al 65.535. Los habituales de la web son el 80 para HTTP y el 443 para HTTPS.

Fuentes

Te puede interesar