Una guía práctica para permitir aplicaciones, programas, puertos, servicios y direcciones IP de confianza a través del Firewall de Windows Defender sin abrir más acceso del necesario.
Una excepción del Firewall de Windows es una regla de permiso que deja pasar tráfico de red específico a través del Firewall de Windows Defender. La excepción puede permitir una aplicación concreta, un archivo de programa de escritorio, un servicio de Windows, un número de puerto, un protocolo o tráfico desde una dirección IP de confianza.
En Windows 10 y Windows 11, las excepciones del firewall suelen crearse en uno de estos dos lugares: la pantalla sencilla Permitir una aplicación a través del firewall o la consola avanzada llamada Firewall de Windows Defender con seguridad avanzada. La consola avanzada ofrece más control sobre la dirección, la ruta del programa, el protocolo, el puerto, el perfil y el alcance de direcciones remotas.
Permite una aplicación o un archivo ejecutable específico a través del firewall. Es la mejor opción para la mayoría de programas de escritorio y aplicaciones de Microsoft Store.
Permite tráfico hacia un puerto TCP o UDP, como 8080, 25565 o 3389. Es útil para servidores y herramientas de red.
Permite tráfico solo desde direcciones de red local, subredes o dispositivos de confianza seleccionados, en lugar de permitirlo desde toda la red.
Puede que necesites agregar una excepción cuando una aplicación de confianza deba recibir conexiones entrantes o cuando otro dispositivo no pueda conectarse a un servicio que se ejecuta en tu PC con Windows.
Antes de cambiar reglas del firewall, identifica exactamente qué debe permitirse. Así evitarás crear una excepción demasiado amplia o difícil de solucionar más adelante.
| Pregunta | Por qué importa | Ejemplo |
|---|---|---|
| ¿Qué programa necesita acceso? | Una regla basada en programa suele ser más segura que una regla solo por puerto. | C:\Program Files\MyApp\MyApp.exe |
| ¿Entrante o saliente? | La mayoría de problemas al hospedar aplicaciones requieren reglas entrantes. Las reglas salientes se usan cuando el tráfico de salida está restringido. | Regla entrante para un servidor local |
| ¿Qué perfil de red? | Privado suele ser más seguro para redes LAN de casa u oficina. Público debe limitarse. | Solo Privado |
| ¿Qué protocolo y puerto? | TCP y UDP son independientes. Algunas aplicaciones requieren ambos. | TCP 8080 o UDP 27015 |
| ¿Qué dispositivos pueden conectarse? | El alcance de direcciones remotas puede limitar la regla a direcciones IP de confianza. | 192.168.1.0/24 |
Privado suele ser el perfil correcto para una red doméstica o de oficina de confianza. Público se usa para redes no confiables, como hoteles, aeropuertos, cafeterías y Wi-Fi compartido. Si no sabes qué perfil usa tu red, abre Configuración → Red e Internet y revisa las propiedades de la conexión activa.
Este es el método más sencillo cuando quieres agregar una excepción del firewall para un programa de escritorio normal o una aplicación de Microsoft Store que aparece en la lista.
Win + R, escribe control firewall.cpl y presiona Enter..exe del programa y haz clic en Agregar.La consola avanzada del firewall es mejor cuando necesitas una regla con nombre, una ruta de programa precisa, perfiles de red seleccionados o restricciones por IP remota.
Win + R, escribe wf.msc y presiona Enter.Buenos nombres para reglas del firewall:
Allow Plex Media Server - Private LAN
Allow TCP 8080 - Local Web Test Server
Allow MyApp.exe Inbound - Accounting Network
Después de crear la regla, haz doble clic en ella para revisar las pestañas Programas y servicios, Protocolos y puertos, Ámbito y Opciones avanzadas. Estas pestañas controlan qué permite la excepción y dónde se aplica.
Una excepción de puerto es útil cuando conoces el puerto TCP o UDP exacto que requiere un servidor, un juego, una herramienta de dispositivo o un entorno de desarrollo. Usa una excepción de programa cuando sea posible; usa una excepción de puerto cuando la documentación de la aplicación lo requiera específicamente.
Win + R, escribe wf.msc y presiona Enter.8080. También puedes introducir un rango como 5000-5010.| Regla de ejemplo | Protocolo | Puerto | Alcance recomendado |
|---|---|---|---|
| Servidor web local de prueba | TCP | 8080 |
Perfil Privado, solo subred local |
| Servidor de Minecraft Java | TCP | 25565 |
Perfil Privado o direcciones remotas de confianza |
| Escritorio remoto | TCP/UDP | 3389 |
VPN o solo direcciones IP de confianza |
| Uso compartido de archivos / SMB | TCP | 445 |
Solo LAN privada; no exponer a internet |
PowerShell es útil para administradores, configuraciones repetibles, scripts y soporte remoto. Abre Terminal (Administrador) o Windows PowerShell (Administrador) antes de ejecutar los comandos siguientes.
PowerShellNew-NetFirewallRule `
-DisplayName "Allow MyApp Inbound - Private" `
-Direction Inbound `
-Program "C:\Program Files\MyApp\MyApp.exe" `
-Action Allow `
-Profile Private
PowerShellNew-NetFirewallRule `
-DisplayName "Allow TCP 8080 - Local Web Server" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 8080 `
-Action Allow `
-Profile Private
PowerShellNew-NetFirewallRule `
-DisplayName "Allow UDP 27015 - Game Server" `
-Direction Inbound `
-Protocol UDP `
-LocalPort 27015 `
-Action Allow `
-Profile Private
PowerShellNew-NetFirewallRule `
-DisplayName "Allow TCP 8080 from LAN only" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 8080 `
-RemoteAddress 192.168.1.0/24 `
-Action Allow `
-Profile Private
Sustituye la ruta del programa, el nombre para mostrar, el puerto, el protocolo, el perfil y la dirección remota por los valores que requiera tu aplicación o red.
El Símbolo del sistema puede crear excepciones del firewall con netsh advfirewall. Es útil en scripts antiguos o sistemas donde no se prefiere PowerShell.
Símbolo del sistemanetsh advfirewall firewall add rule name="Allow MyApp Inbound - Private" dir=in action=allow program="C:\Program Files\MyApp\MyApp.exe" profile=private enable=yes
Símbolo del sistemanetsh advfirewall firewall add rule name="Allow TCP 8080 - Local Web Server" dir=in action=allow protocol=TCP localport=8080 profile=private enable=yes
Símbolo del sistemanetsh advfirewall firewall add rule name="Allow UDP 27015 - Game Server" dir=in action=allow protocol=UDP localport=27015 profile=private enable=yes
La excepción de firewall más segura es la excepción más estrecha que aún permite que la aplicación funcione. Después de crear una regla en wf.msc, puedes restringirla aún más.
wf.msc.wf.msc.192.168.1.50 o 192.168.1.0/24.Revisa periódicamente las excepciones personalizadas del firewall. Las reglas de prueba antiguas, las reglas duplicadas o las reglas de aplicaciones eliminadas pueden crear exposición innecesaria y dificultar la solución de problemas.
| Tarea | Método con interfaz gráfica | Comando de PowerShell |
|---|---|---|
| Deshabilitar una regla | Abre wf.msc, haz clic derecho en la regla y selecciona Deshabilitar regla. |
Disable-NetFirewallRule -DisplayName "Rule Name" |
| Habilitar una regla | Haz clic derecho en la regla y selecciona Habilitar regla. | Enable-NetFirewallRule -DisplayName "Rule Name" |
| Eliminar una regla | Haz clic derecho en la regla y selecciona Eliminar. | Remove-NetFirewallRule -DisplayName "Rule Name" |
| Ver reglas coincidentes | Usa las opciones de búsqueda o filtro en Reglas de entrada. | Get-NetFirewallRule -DisplayName "*MyApp*" |
Símbolo del sistemanetsh advfirewall firewall delete rule name="Allow TCP 8080 - Local Web Server"
Si la aplicación sigue bloqueada después de agregar una excepción, revisa la dirección de la regla, el perfil, la ruta del programa, el protocolo, el puerto y si la aplicación realmente está escuchando conexiones.
| Problema | Qué revisar | Solución |
|---|---|---|
| Perfil de red incorrecto | La regla está permitida para Privado, pero Windows marca la red como Pública. | Cambia la red activa a Privada si es de confianza, o agrega el perfil correcto a la regla. |
| Dirección de regla incorrecta | Regla entrante frente a saliente. | Crea una regla entrante cuando otros dispositivos necesiten conectarse a este PC. |
| La ruta del programa cambió | La aplicación se actualizó o se movió a otra carpeta. | Edita la regla o crea una nueva con la ruta actual del .exe. |
| No hay ningún servicio escuchando | netstat -ano | findstr :PORT |
Inicia la aplicación o el servicio que debe aceptar conexiones. |
| Protocolo incorrecto | La aplicación requiere UDP, pero solo se permitió TCP, o al contrario. | Crea la regla TCP o UDP correcta. Algunas aplicaciones requieren ambas. |
| El router bloquea el acceso desde internet | Reenvío de puertos, IP WAN, CGNAT y reglas del firewall del router. | Configura el reenvío de puertos en el router solo cuando el acceso externo sea necesario y seguro. |
| Hay un firewall de terceros activo | Las suites de seguridad pueden reemplazar o agregar otra capa de firewall. | Agrega la excepción en el firewall de terceros o prueba con él deshabilitado temporalmente. |
Símbolo del sistemanetstat -ano | findstr LISTENING
netstat -ano | findstr :8080
PowerShellGet-NetTCPConnection -State Listen
Test-NetConnection 192.168.1.50 -Port 8080
wf.msc, busca la regla en Reglas de entrada o Reglas de salida y luego deshabilítala o elimínala. En PowerShell, usa Disable-NetFirewallRule o Remove-NetFirewallRule.Para la mayoría de usuarios, el método más seguro es permitir una aplicación específica a través del Firewall de Windows y habilitarla solo en el perfil Privado. Para tener más control, usa wf.msc para crear una regla entrante con nombre, seleccionar el programa o puerto exacto y limitar el alcance a direcciones IP de confianza.
Agrega solo las excepciones del firewall que realmente necesites, usa nombres de regla descriptivos, evita el perfil Público salvo que sea necesario y elimina las reglas antiguas después de las pruebas. Una regla limitada para una aplicación de confianza o un rango de IP de confianza es mucho más segura que una regla amplia que permite conectarse a cualquier dispositivo.