Cómo corregir el error de firewall bloqueando el puerto en el servidor de MU Online
Guía completa para identificar y corregir bloqueos de firewall (Windows Defender, router, antivirus y proveedor) que impiden a los jugadores conectarse a tu servidor de MU Online, con reglas listas para usar y pruebas de validación.
Uno de los reclamos más frecuentes en cualquier comunidad de MU Online privado es "no puedo entrar al servidor", y en buena parte de los casos la causa raíz es simplemente un puerto bloqueado por firewall — ya sea en el Windows del servidor, en el router, en el antivirus del jugador o incluso en el
Uno de los reclamos más frecuentes en cualquier comunidad de MU Online privado es "no puedo entrar al servidor", y en buena parte de los casos la causa raíz es simplemente un puerto bloqueado por firewall — ya sea en el Windows del servidor, en el router, en el antivirus del jugador o incluso en el firewall del proveedor de hosting. Como existen varias capas de firewall involucradas en la cadena cliente-servidor, el diagnóstico suele ser demorado si se hace sin método. Este tutorial organiza el problema capa por capa, con comandos listos para el Windows Defender Firewall y una guía de pruebas para aislar exactamente dónde está ocurriendo el bloqueo.
Las capas de firewall entre el jugador y el servidor
Antes de tocar cualquier configuración, es esencial entender que existen al menos cuatro capas posibles de bloqueo entre el cliente del jugador y el proceso del servidor, y cada una necesita verificarse por separado:
| Capa | Qué controla | Dónde configurar |
|---|---|---|
| Firewall de Windows (servidor) | Tráfico entrante en la propia máquina del servidor | Panel de Firewall de Windows / PowerShell |
| Antivirus con firewall propio | Reglas adicionales sobre el mismo tráfico | Configuración del antivirus instalado |
| Router/NAT (si está hospedado en casa) | Redirección de puerto de internet hacia la red local | Panel administrativo del router |
| Firewall del proveedor/VPS | Reglas de seguridad en la nube (Security Group, iptables) | Panel del proveedor o terminal del VPS |
Paso 1 — Mapear los puertos que el servidor realmente usa
Antes de crear cualquier regla, lista exactamente qué puertos usa tu emulador. Un conjunto típico:
| Servicio | Puerto por defecto | Protocolo |
|---|---|---|
| ConnectServer | 44405 | TCP |
| JoinServer | 55980 (varía) | TCP |
| GameServer (por servidor) | 55901, 55902, 55903... | TCP |
| MySQL (si hay acceso remoto) | 3306 | TCP |
| DataServer (si es separado) | Varía según el emulador | TCP |
Paso 2 — Crear reglas específicas en el Firewall de Windows
En vez de desactivar el firewall (lo que expone toda la máquina), crea reglas de entrada específicas para cada puerto usado:
New-NetFirewallRule -DisplayName "MU ConnectServer" -Direction Inbound -Protocol TCP -LocalPort 44405 -Action Allow
New-NetFirewallRule -DisplayName "MU GameServer Range" -Direction Inbound -Protocol TCP -LocalPort 55900-55910 -Action Allow
New-NetFirewallRule -DisplayName "MU MySQL Remoto" -Direction Inbound -Protocol TCP -LocalPort 3306 -Action Allow -RemoteAddress <IP-confiable>
Nota que la regla de MySQL restringe la IP de origen (-RemoteAddress) — nunca abras la base de datos a cualquier IP de internet sin necesidad real.
Paso 3 — Verificar si existe una regla de bloqueo conflictiva
El Firewall de Windows procesa las reglas de bloqueo con prioridad sobre las reglas de liberación. Lista las reglas existentes para garantizar que no haya un "Block" genérico compitiendo con tu regla nueva:
Get-NetFirewallRule -Direction Inbound | Where-Object { $_.Action -eq "Block" -and $_.Enabled -eq "True" }
Si aparece una regla de bloqueo amplia (por ejemplo, creada por un software de seguridad corporativo o por otro administrador), necesita ajustarse o desactivarse para el puerto específico del MU.
Paso 4 — Configurar el firewall/NAT del router (hospedaje doméstico)
Si el servidor está en una máquina doméstica detrás de un router, tener liberado el Firewall de Windows no es suficiente — el router también necesita redirigir (port forward) el tráfico externo hacia la IP local del servidor, en los mismos puertos. Sin esto, el paquete ni siquiera llega a la interfaz de red de la máquina.
Paso 5 — Configurar el firewall de nube (Security Group / iptables) en VPS
En hosting en la nube (AWS, Azure, Google Cloud, o cualquier VPS Linux/Windows), existe una capa de firewall incluso antes de llegar al sistema operativo — el Security Group o Network Security Group. Sin una regla de entrada en ese panel, el Firewall de Windows interno es irrelevante, porque el paquete se descarta antes de llegar a la VM.
# Ejemplo en un VPS Linux con iptables (si el emulador corre vía Wine/servidor Linux)
sudo iptables -A INPUT -p tcp --dport 44405 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 55900:55910 -j ACCEPT
sudo iptables-save
Paso 6 — Probar cada capa por separado
La forma más eficiente de encontrar el bloqueo es probar de afuera hacia adentro:
- Prueba el puerto con una herramienta externa (fuera de tu red) — confirma si el paquete llega hasta el router/VPS.
- Si falla, el problema está en el NAT del router o en el Security Group de la nube.
- Si pasa la prueba externa pero el juego aún falla, prueba localmente en el propio servidor con
Test-NetConnection 127.0.0.1 -Port 44405. - Si falla localmente, el Firewall de Windows (o el antivirus) todavía está bloqueando — revisa las reglas.
- Si pasa en ambos y el juego aún falla, el problema ya no es de firewall, es configuración de aplicación.
Paso 7 — Considerar excepciones por antivirus de terceros
Antivirus como Avast, Kaspersky, Norton y Bitdefender frecuentemente mantienen un firewall propio, independiente de Windows Defender, y pueden seguir bloqueando el tráfico incluso después de que todas las reglas de Windows estén correctas. Agrega excepciones explícitas para los puertos del MU y para los ejecutables ConnectServer.exe y GameServer.exe en la configuración de red de esos programas.
Paso 8 — Documentar los puertos liberados para el equipo
Mantén una lista simple (planilla o archivo de texto) con todos los puertos liberados en cada capa — Windows, router/VPS, antivirus. Esto evita retrabajo cuando migres de servidor, cambies de hosting o agregues un nuevo GameServer en el futuro.
Errores comunes y soluciones
| Síntoma | Causa probable | Solución |
|---|---|---|
| Conexión rechazada incluso con la regla creada en Windows | Regla de bloqueo concurrente con mayor prioridad | Lista y elimina/ajusta la regla de bloqueo conflictiva |
| Funciona local, falla desde afuera | NAT del router o Security Group de la nube no configurado | Libera el puerto en la capa de red externa correspondiente |
| Puerto "abierto" en la prueba pero el juego no conecta | Bloqueo resuelto, el problema pasó a ser de aplicación | Revisa la configuración del ConnectServer/GameServer |
| Firewall liberado pero aún bloquea | Antivirus de terceros con firewall propio | Agrega una excepción explícita en el antivirus |
| Solo falla para MySQL remoto | Puerto 3306 no liberado o liberado para la IP incorrecta | Ajusta la regla con la IP de origen correcta |
| Bloqueo intermitente | Regla temporal o perfil de red incorrecto (Público vs Privado) | Confirma el perfil de red activo en Windows |
Lista de verificación de liberación de puertos
- Lista de puertos usados por el emulador documentada.
- Reglas específicas creadas en el Firewall de Windows (TCP/UDP según sea necesario).
- Ninguna regla de bloqueo concurrente activa.
- NAT/port forward configurado en el router (si es hospedaje doméstico).
- Security Group/iptables liberado (si es hospedaje en la nube/VPS).
- Excepciones agregadas en el antivirus de terceros, si corresponde.
- Prueba externa de puerto confirmada antes del lanzamiento.
- Documentación de los puertos liberados guardada para el equipo.
Con el firewall correctamente configurado en todas las capas, el siguiente paso es validar la estabilidad de la conexión bajo carga, simulando múltiples jugadores simultáneos antes del lanzamiento oficial. Para revisar toda la infraestructura recomendada desde cero, mira el tutorial de creación de servidor de MU Online.
Preguntas frecuentes
¿Necesito liberar TCP y UDP, o solo uno de los dos?
MU Online usa mayoritariamente TCP para la comunicación entre cliente y servidor (ConnectServer y GameServer). Aun así, es una buena práctica liberar ambos protocolos en el mismo puerto, ya que algunas builds de emulador y módulos extra (chat de voz, algunos anticheats) pueden usar UDP para funciones auxiliares.
¿Desactivar el firewall por completo resuelve el problema más rápido?
Resuelve, pero expone la máquina a riesgos innecesarios, ya que todo el tráfico entrante queda liberado, no solo el del MU. Lo correcto es crear reglas específicas para los puertos del servidor (ConnectServer, GameServer, MySQL si hay acceso remoto) y mantener el resto del firewall activo.
¿Por qué el puerto aparece 'abierto' en una prueba online pero el juego aún no conecta?
Una prueba de puerto externa confirma que el paquete TCP llegó y hubo respuesta a nivel de red, pero no garantiza que el proceso del juego (ConnectServer/GameServer) esté realmente procesando esa conexión correctamente. En ese caso, el problema pasa a ser de aplicación (configuración del IGCN.ini, base de datos, etc.), ya no de firewall.
¿El firewall del router es diferente del firewall de Windows?
Sí, son dos capas distintas. El firewall de Windows controla el tráfico que llega a la propia máquina; el firewall/NAT del router controla lo que entra a la red local desde internet. Para que un jugador externo se conecte, ambas capas necesitan liberar el puerto — bloquear en cualquiera de ellas resulta en conexión rechazada.
¿Cómo sé si el bloqueo es del firewall y no de otro problema?
Desactiva temporalmente el firewall (o crea una regla 'Allow All' de prueba) e intenta conectar. Si funciona con el firewall desactivado y falla con él activo, la causa queda confirmada como firewall — entonces solo hay que crear la regla específica y reactivar la protección general.