Guía de firewall y puertos de red en Windows

Cómo abrir, cerrar y comprobar puertos abiertos en Windows 10 y Windows 11

Guía práctica para administrar puertos TCP y UDP en Windows: crear reglas de firewall, eliminar reglas inseguras, encontrar puertos en escucha, identificar el proceso que usa un puerto y solucionar conexiones bloqueadas.

🖥 Windows 10 🪟 Windows 11 🛡 Firewall de Windows Defender ⚙ PowerShell 🔎 netstat

Qué son los puertos abiertos en Windows

Un puerto de red es un punto de comunicación numerado que utiliza una aplicación o un servicio de Windows. Por ejemplo, un servidor web normalmente escucha en el puerto 80 para HTTP o en el puerto 443 para HTTPS. Escritorio remoto suele usar el puerto TCP 3389, mientras que DNS normalmente utiliza el puerto 53.

Cuando se dice que un puerto está “abierto” en Windows, puede significar dos cosas diferentes:

Significado Qué quiere decir Cómo comprobarlo
Un programa está escuchando Una aplicación o servicio está esperando conexiones entrantes en ese puerto. netstat, PowerShell, Monitor de recursos
El firewall permite el puerto El Firewall de Windows Defender tiene una regla que permite el tráfico por ese puerto. Firewall de Windows Defender, reglas de firewall en PowerShell
ℹ️
Diferencia importante Abrir un puerto en el firewall no inicia automáticamente un servicio. Un puerto solo aparecerá como en escucha si una aplicación está realmente ejecutándose y vinculada a ese puerto.

Antes de abrir un puerto en Windows 10 o Windows 11

Abrir puertos puede ser necesario para servidores de juegos, servidores web locales, acceso a bases de datos, herramientas de administración remota, uso compartido de archivos, entornos de desarrollo y algunas aplicaciones peer-to-peer. Sin embargo, cada puerto entrante abierto también puede aumentar la superficie de ataque del PC.

⚠️
Advertencia de seguridad No abras puertos para servicios que no entiendes. Ten especial cuidado con Escritorio remoto, el uso compartido SMB, bases de datos y paneles de administración. Si necesitas acceso externo, considera usar una VPN en lugar de exponer el servicio directamente a internet.

Cómo abrir un puerto en el Firewall de Windows Defender

La consola gráfica del firewall es el método más seguro para la mayoría de los usuarios, porque muestra claramente el tipo de regla, protocolo, número de puerto, perfil de red y nombre de la regla.

  1. Presiona Win + R, escribe wf.msc y pulsa Enter.
  2. En el panel izquierdo, haz clic en Reglas de entrada.
  3. En el panel derecho, haz clic en Nueva regla....
  4. Selecciona Puerto y haz clic en Siguiente.
  5. Elige TCP o UDP.
  6. Selecciona Puertos locales específicos e introduce el número de puerto, por ejemplo 8080. También puedes introducir un rango como 5000-5010.
  7. Selecciona Permitir la conexión.
  8. Elige los perfiles donde se aplicará la regla: Dominio, Privado y/o Público.
  9. Introduce un nombre claro para la regla, por ejemplo Permitir TCP 8080 - Servidor web local.
  10. Haz clic en Finalizar.
Práctica recomendada Asigna a cada regla personalizada del firewall un nombre descriptivo. Más adelante será mucho más fácil encontrar y eliminar reglas como Permitir TCP 8080 - Servidor web local que reglas llamadas simplemente Puerto o Prueba.

Cómo abrir un puerto en Windows usando PowerShell

PowerShell es más rápido para administradores y resulta útil cuando necesitas crear la misma regla de firewall en varios equipos.

  1. Haz clic con el botón derecho en Inicio.
  2. Selecciona Terminal (Administrador), Windows PowerShell (Administrador) o Windows Terminal (Administrador).
  3. Ejecuta el comando siguiente, sustituyendo el número de puerto y el nombre de la regla si es necesario.
New-NetFirewallRule -DisplayName "Allow TCP 8080" -Direction Inbound -Protocol TCP -LocalPort 8080 -Action Allow -Profile Private

Este ejemplo abre el puerto TCP entrante 8080 solo en el perfil de red Privado.

Abrir un puerto UDP con PowerShell

New-NetFirewallRule -DisplayName "Allow UDP 27015" -Direction Inbound -Protocol UDP -LocalPort 27015 -Action Allow -Profile Private

Abrir un puerto en todos los perfiles de red

New-NetFirewallRule -DisplayName "Allow TCP 8080 All Profiles" -Direction Inbound -Protocol TCP -LocalPort 8080 -Action Allow -Profile Any
⚠️
Usa Profile Any con cuidado -Profile Any aplica la regla a redes de Dominio, Privadas y Públicas. En un portátil, esto puede exponer el puerto en redes Wi-Fi de hoteles, aeropuertos o cafeterías.

Cómo abrir un puerto en Windows usando Símbolo del sistema

También puedes abrir puertos con netsh, que funciona tanto en Windows 10 como en Windows 11 y es útil en archivos por lotes.

  1. Abre Símbolo del sistema como administrador.
  2. Ejecuta uno de los comandos siguientes.

Abrir el puerto TCP 8080

netsh advfirewall firewall add rule name="Allow TCP 8080" dir=in action=allow protocol=TCP localport=8080 profile=private

Abrir el puerto UDP 27015

netsh advfirewall firewall add rule name="Allow UDP 27015" dir=in action=allow protocol=UDP localport=27015 profile=private

Abrir un rango de puertos

netsh advfirewall firewall add rule name="Allow TCP 5000-5010" dir=in action=allow protocol=TCP localport=5000-5010 profile=private

Cómo cerrar un puerto en Windows 10 y Windows 11

Para cerrar un puerto, normalmente debes hacer una de estas dos cosas: eliminar o deshabilitar la regla de firewall que permite el puerto, y detener la aplicación que está escuchando en ese puerto. Si un servicio sigue ejecutándose, el puerto puede seguir apareciendo como LISTENING localmente, aunque el firewall bloquee el tráfico entrante.

Cerrar un puerto usando el Firewall de Windows Defender

  1. Presiona Win + R, escribe wf.msc y pulsa Enter.
  2. Abre Reglas de entrada.
  3. Busca la regla que permite el puerto.
  4. Haz clic derecho sobre la regla y elige Deshabilitar regla si quizá la necesites más adelante.
  5. Elige Eliminar si quieres quitarla permanentemente.

Cerrar un puerto con PowerShell

Remove-NetFirewallRule -DisplayName "Allow TCP 8080"

Para deshabilitar la regla en lugar de eliminarla:

Disable-NetFirewallRule -DisplayName "Allow TCP 8080"

Cerrar un puerto con Símbolo del sistema

netsh advfirewall firewall delete rule name="Allow TCP 8080" protocol=TCP localport=8080
💡
Consejo Si no conoces el nombre de la regla, abre wf.msc y ordena o filtra las reglas de entrada por Puerto local, Protocolo o estado Habilitado.

Cómo ver puertos abiertos en Windows

Windows incluye varias herramientas integradas para ver puertos abiertos y conexiones activas. Las más útiles son netstat, PowerShell, Monitor de recursos y los registros del Firewall de Windows Defender.

Símbolo del sistema

Ideal para obtener rápidamente una lista de puertos en escucha e identificadores de proceso.

netstat -ano | findstr LISTENING

PowerShell

Ideal para filtrar y automatizar la revisión de escuchas TCP activas.

Get-NetTCPConnection -State Listen

Monitor de recursos

Ideal para usuarios que prefieren una interfaz gráfica.

resmon

Ver puertos en escucha con netstat

netstat -ano | findstr LISTENING

La salida muestra el protocolo, la dirección local, el puerto, el estado de la conexión y el PID. Por ejemplo:

TCP    0.0.0.0:8080     0.0.0.0:0     LISTENING     1234

En este ejemplo, el puerto 8080 está en escucha y el identificador del proceso es 1234.

Mostrar todas las conexiones activas y puertos en escucha

netstat -ano

Ver puertos TCP en escucha con PowerShell

Get-NetTCPConnection -State Listen | Sort-Object LocalPort | Select-Object LocalAddress,LocalPort,OwningProcess

Ver endpoints UDP con PowerShell

Get-NetUDPEndpoint | Sort-Object LocalPort | Select-Object LocalAddress,LocalPort,OwningProcess

Ver puertos abiertos en Monitor de recursos

  1. Presiona Win + R, escribe resmon y pulsa Enter.
  2. Abre la pestaña Red.
  3. Expande Puertos de escucha.
  4. Comprueba las columnas Imagen, PID, Dirección, Puerto, Protocolo y Estado del firewall.

Cómo saber qué programa está usando un puerto en Windows

Si un puerto ya está en uso, otro programa puede no iniciarse. Puedes identificar el proceso relacionando el número de puerto con un PID y después relacionando ese PID con una aplicación.

Paso 1: encontrar el PID de un puerto

netstat -ano | findstr :8080

Mira el último número de la línea. Ese es el identificador del proceso.

Paso 2: encontrar el nombre del programa por PID

tasklist /fi "PID eq 1234"

Sustituye 1234 por el PID del comando anterior.

Alternativa con PowerShell

Get-Process -Id 1234

Detener el proceso si es necesario

taskkill /PID 1234 /F
⚠️
Ten cuidado No finalices procesos del sistema desconocidos. Si el proceso pertenece a Windows, a un controlador, a un antivirus, a un motor de base de datos o a una plataforma de máquinas virtuales, detenerlo puede interrumpir servicios activos o causar pérdida de datos.

Cómo comprobar si un puerto está abierto o bloqueado

Después de crear una regla de firewall, conviene verificar si el puerto realmente es accesible. Una prueba correcta requiere tres cosas: un servicio escuchando en el puerto, una regla de firewall que permita el tráfico y un enrutamiento de red correcto.

Probar un puerto TCP con PowerShell

Test-NetConnection 192.168.1.10 -Port 8080

Si la salida muestra TcpTestSucceeded : True, el puerto TCP es accesible desde ese equipo.

Comprobar el estado de escucha local

netstat -ano | findstr :8080

Comprobar reglas de firewall para un puerto

Get-NetFirewallPortFilter | Where-Object {$_.LocalPort -eq "8080"}
🌐
Nota sobre el acceso desde internet Si quieres que un puerto sea accesible desde fuera de tu red doméstica, normalmente también necesitas configurar el reenvío de puertos en el router y disponer de una dirección IP pública. Abrir un puerto solo en el Firewall de Windows no es suficiente.

Puertos comunes de Windows que puedes encontrar

Estos son puertos comunes que puedes encontrar al revisar puertos abiertos en un equipo Windows. No los abras públicamente salvo que entiendas exactamente por qué son necesarios.

HTTP: TCP 80 HTTPS: TCP 443 DNS: TCP/UDP 53 RDP: TCP/UDP 3389 SMB: TCP 445 WinRM HTTP: TCP 5985 WinRM HTTPS: TCP 5986
Puerto Protocolo Uso común Nota de seguridad
80 TCP Tráfico web HTTP Normalmente seguro solo para un servidor web configurado correctamente.
443 TCP Tráfico web HTTPS Prefiere HTTPS en lugar de HTTP para servicios públicos.
53 TCP/UDP DNS No expongas públicamente un resolvedor DNS recursivo.
445 TCP Uso compartido de archivos SMB No debería estar expuesto a internet.
3389 TCP/UDP Escritorio remoto Usa VPN, autenticación fuerte y políticas de bloqueo de cuenta.
5985 TCP Administración remota de Windows por HTTP Úsalo solo en redes de confianza.
5986 TCP Administración remota de Windows por HTTPS Requiere una configuración correcta de certificados.

Por qué un puerto sigue cerrado después de abrirlo

Si un comprobador de puertos en línea u otro equipo todavía no puede conectarse, usa esta lista de comprobación.

Problema Qué comprobar Solución
No hay ningún servicio escuchando netstat -ano | findstr :PORT Inicia la aplicación o servicio que debería usar el puerto.
Protocolo incorrecto TCP frente a UDP Crea la regla para el protocolo correcto o crea reglas separadas para TCP y UDP.
Perfil de red incorrecto Privado/Público/Dominio Cambia el perfil de la regla o cambia el tipo de red a Privado si corresponde.
El router bloquea el tráfico entrante Configuración de reenvío de puertos Reenvía el puerto a la dirección IP local correcta.
La IP local cambió Dirección IPv4 actual del PC Usa una reserva DHCP o una IP estática para el equipo servidor.
El ISP usa CGNAT IP WAN del router frente a IP pública Solicita una IP pública, usa IPv6 si está disponible o utiliza una solución VPN/túnel.
Un software de seguridad de terceros bloquea el tráfico Configuración del firewall del antivirus Añade una regla de permiso en el firewall de terceros o prueba temporalmente con él deshabilitado.

Preguntas frecuentes sobre puertos abiertos en Windows

¿Es peligroso abrir un puerto en Windows?
Puede ser seguro si sabes qué servicio usa el puerto, limitas la regla al perfil correcto, mantienes el software actualizado y evitas exponer servicios sensibles directamente a internet. No se recomienda abrir puertos innecesarios.
¿Por qué netstat muestra un puerto como LISTENING incluso después de eliminar una regla del firewall?
Porque netstat muestra las aplicaciones que escuchan localmente. Eliminar una regla del firewall bloquea el tráfico entrante, pero no detiene la aplicación. Detén el servicio o programa relacionado si quieres que el puerto desaparezca de la lista de escucha.
¿Puedo abrir el mismo puerto para TCP y UDP?
Sí. TCP y UDP son protocolos separados. Si una aplicación necesita ambos, crea dos reglas de firewall: una para TCP y otra para UDP usando el mismo número de puerto local.
¿Cuál es la forma más rápida de ver puertos abiertos en Windows?
Abre Símbolo del sistema y ejecuta netstat -ano | findstr LISTENING. Para una vista gráfica, presiona Win + R, ejecuta resmon, abre la pestaña Red y expande Puertos de escucha.
¿También necesito reenvío de puertos en el router?
Solo si el servicio debe ser accesible desde fuera de tu red local. Para acceder desde otro dispositivo dentro de la misma LAN, una regla del firewall de Windows puede ser suficiente. Para acceso desde internet, normalmente se requiere reenvío de puertos en el router y una dirección IP pública accesible.

La mejor forma de administrar puertos en Windows

Para la mayoría de los usuarios, la mejor forma de abrir un puerto es usar Firewall de Windows Defender con seguridad avanzada mediante wf.msc. Ofrece una interfaz clara y reduce la posibilidad de crear una regla demasiado amplia. Para administradores, PowerShell es más rápido y fácil de automatizar.

🔐 Conclusión

Abre solo los puertos que necesitas, limita las reglas al perfil de red correcto, usa nombres descriptivos para las reglas y revisa periódicamente los puertos en escucha con netstat, PowerShell o Monitor de recursos. Si un servicio debe estar disponible desde internet, protégelo cuidadosamente y evita exponer puertos sensibles como SMB o Escritorio remoto sin protección adicional.