Saltar al contenido principal

Configuración de Walled Garden para WiFi de invitados

Esta guía proporciona una referencia técnica completa y neutral respecto al proveedor para configurar walled gardens en despliegues de WiFi de invitados empresariales. Cubre la arquitectura del acceso previo a la autenticación, el papel crítico de la resolución DNS dinámica, la lista blanca de dominios para inicio de sesión social, los requisitos de sondeo del Captive Portal del sistema operativo y las consideraciones de cumplimiento bajo PCI DSS y GDPR. Dirigida a responsables de TI, arquitectos de red y directores de operaciones de recintos, ofrece orientación de implementación práctica con casos de estudio reales de entornos de hostelería, comercio minorista y eventos.

📖 11 min de lectura📝 2,695 palabras🔧 2 ejemplos prácticos3 preguntas de práctica📚 9 definiciones clave

Escuchar esta guía

Ver transcripción del podcast
GUION DE PODCAST: Configuración de Walled Garden para WiFi de invitados Plataforma de inteligencia Purple WiFi — Serie de informes técnicos Duración: Aproximadamente 10 minutos Voz: Inglés británico, tono de consultor senior: seguro, conversacional, autoritario --- [INTRO — 1 MINUTO] Le damos la bienvenida a la serie de informes técnicos de Purple. Soy su anfitrión, y hoy abordamos uno de los elementos más incomprendidos de forma constante en el despliegue de WiFi de invitados empresarial: el walled garden. Si alguna vez ha tenido un despliegue de WiFi de invitados en el que los usuarios no podían pasar de la página de bienvenida (no podían iniciar sesión con Google o no podían cargar el Captive Portal en absoluto), es muy probable que la configuración del walled garden fuera la culpable. Y, sin embargo, es una de esas cosas que rara vez recibe la atención que merece en un informe de diseño de red. En los próximos diez minutos, quiero ofrecerle una imagen clara y práctica de lo que es realmente un walled garden, por qué es importante, qué dominios debe incluir en la lista blanca y cómo las integraciones de inicio de sesión social cambian la ecuación. Tanto si está desplegando WiFi de invitados en un complejo hotelero, una cadena minorista, un estadio o un recinto del sector público, este informe le proporcionará el marco de configuración que necesita para hacerlo bien a la primera. Comencemos. --- [TECHNICAL DEEP-DIVE — 5 MINUTES] Entonces, ¿qué es un walled garden en el contexto del WiFi de invitados? Piénselo de esta manera. Cuando el dispositivo de un invitado se conecta a su red WiFi pero aún no se ha autenticado a través de su Captive Portal, ese dispositivo se encuentra en una especie de estado de limbo. Tiene una dirección IP. Puede enviar y recibir paquetes. Pero su controlador de red (ya sea un Cisco Meraki, un Ruckus SmartZone, un Fortinet FortiGate o una plataforma Aruba gestionada en la nube) está interceptando todas las solicitudes HTTP y HTTPS salientes y redirigiéndolas a su página de bienvenida. El walled garden es el conjunto de dominios y direcciones IP a los que se les permite explícitamente pasar a través de esa capa de interceptación antes de que se complete la autenticación. Todo lo demás está bloqueado. Esa es la pared. El jardín es el espacio seleccionado dentro de ella: el conjunto pequeño y controlado de recursos a los que un invitado puede acceder antes de haber demostrado quién es. Ahora bien, ¿por qué importa tanto esto? Porque los Captive Portals modernos no son autónomos. Dependen de servicios externos para funcionar. Su página de bienvenida podría estar alojada en una CDN. Sus botones de inicio de sesión social llaman a endpoints de OAuth en Google, Facebook, Apple o Microsoft. Su plataforma de analítica podría estar cargando scripts de seguimiento. Su pasarela de pago (si cobra por el acceso premium) necesita cargar su propio JavaScript y realizar llamadas a la API. Cada una de esas dependencias externas debe incluirse explícitamente en la lista blanca de su walled garden, o de lo contrario el flujo de autenticación se romperá. Permítame guiarle a través de las categorías de dominios que debe considerar. Primero: su propia plataforma de Captive Portal. Si utiliza Purple, eso significa incluir en la lista blanca la CDN de Purple y los endpoints de la API, como cdn.purple.ai, portal.purple.ai y api.purple.ai. Si utiliza una plataforma diferente, el principio es idéntico: incluya en la lista blanca cada dominio que sirva los recursos del portal y gestione el saludo de autenticación. Segundo: Google OAuth. Este es el más importante, porque el inicio de sesión de Google es el método de inicio de sesión social más común en los despliegues de WiFi de invitados empresariales. Debe incluir en la lista blanca accounts.google.com, oauth2.googleapis.com, apis.google.com y la CDN gstatic.com (ahí es donde Google sirve sus fuentes, iconos y bibliotecas del lado del cliente). Si omite cualquiera de estos, el botón de inicio de sesión de Google fallará silenciosamente o generará un error CORS que el invitado nunca verá. Tercero: Facebook y Meta OAuth. Si ofrece inicio de sesión con Facebook (y en hostelería y comercio minorista sigue siendo popular por los datos de marketing que proporciona), debe incluir en la lista blanca www.facebook.com, graph.facebook.com, connect.facebook.net y la CDN de Facebook en static.xx.fbcdn.net. Meta tiene la costumbre de rotar los subdominios de la CDN, por lo que recomendaría utilizar entradas con comodines si su controlador las admite: *.fbcdn.net y *.facebook.com. Cuarto: inicio de sesión de Apple. Esto pasó a ser obligatorio para cualquier aplicación iOS que ofreciera inicio de sesión de terceros después de 2019, y cada vez se espera más también en los portales basados en web. Los dominios clave son appleid.apple.com e idmsa.apple.com. Apple también utiliza una variedad de subdominios bajo apple.com para sus flujos de autenticación, por lo que una entrada con comodín para *.apple.com es el enfoque más pragmático. Quinto: si ofrece un nivel de WiFi de pago (común en centros de transporte, hoteles premium y centros de conferencias), debe incluir en la lista blanca su pasarela de pago. Para Stripe, es stripe.com y *.stripe.com. Para PayPal, es www.paypal.com y *.paypal.com. El cumplimiento de PCI DSS requiere que los flujos de pago se gestionen a través de TLS 1.2 o superior, y la configuración de su walled garden debe permitir ese tráfico sin interceptación. Y aquí es donde se pone técnicamente interesante: el problema de la resolución DNS. La mayoría de los controladores de red implementan los walled gardens a nivel de dirección IP, no puramente a nivel de nombre de dominio. Eso significa que cuando incluye accounts.google.com en la lista blanca, el controlador resuelve ese dominio en un conjunto de direcciones IP y permite el tráfico a esas IP. El problema es que Google, Facebook, Apple y las principales CDN utilizan rangos de IP dinámicos y enrutamiento anycast. La dirección IP en la que se resuelve accounts.google.com en su centro de datos no es necesariamente la misma IP en la que se resuelve en su red de invitados, y cambiará con el tiempo. La implicación práctica es esta: no puede confiar en una lista blanca de IP estáticas. Necesita un controlador que realice una resolución DNS dinámica para las entradas del walled garden, resolviendo los dominios de la lista blanca a intervalos regulares y actualización del conjunto de IP permitidas en consecuencia. La mayoría de los controladores de nivel empresarial admiten esto. Si el suyo no lo hace, está operando con una configuración que se degradará con el tiempo a medida que cambien los rangos de IP de la CDN. También está la cuestión de la interceptación HTTPS. Cuando un dispositivo de invitado realiza una solicitud HTTPS a un dominio que no está en la lista blanca antes de la autenticación, su controlador tiene dos opciones: puede interrumpir la conexión silenciosamente o puede intentar interceptarla y redirigirla al portal. Las interrupciones silenciosas hacen que el navegador del invitado muestre un error genérico de 'no se puede acceder al sitio', lo cual resulta confuso. La interceptación requiere un certificado TLS válido en su controlador y, sin él, el invitado ve una advertencia de certificado, lo que resulta alarmante y, en entornos regulados, un posible problema de cumplimiento. La solución limpia es asegurarse de que la lógica de redirección de su portal funcione con tráfico HTTP y que su walled garden permita que el tráfico HTTPS para los dominios de la lista blanca pase sin ser alterado. Permítame abordar también el mecanismo de detección del Captive Portal, porque afecta directamente al diseño de su walled garden. Los sistemas operativos modernos (iOS, Android, macOS, Windows) utilizan una técnica llamada Captive Network Assistant o CNA. Cuando un dispositivo se conecta a una nueva red, el SO realiza una solicitud HTTP a un endpoint de sondeo conocido: en los dispositivos Apple, es captive.apple.com; en Android, es connectivitycheck.gstatic.com; en Windows, es msftconnecttest.com. Si la respuesta no es la que el SO espera, sabe que está detrás de un Captive Portal e inicia el navegador del portal automáticamente. El punto crítico: todos estos endpoints de sondeo deben estar en la lista blanca de su walled garden. Si están bloqueados, el SO nunca detecta el Captive Portal, el invitado nunca ve la página de bienvenida y, desde su perspectiva, el WiFi simplemente no funciona. Este es uno de los fallos de configuración más comunes que veo en el terreno, y es totalmente evitable. --- [IMPLEMENTATION RECOMMENDATIONS AND PITFALLS — 2 MINUTES] Permítame ofrecerle el marco de implementación que recomendaría para cualquier nuevo despliegue. Comience con una lista blanca de referencia que cubra cinco categorías: su plataforma de portal, Google OAuth, Facebook OAuth, inicio de sesión de Apple y sondeos de Captive Portal del SO. Ese es su walled garden mínimo viable. Añada pasarelas de pago si ofrece niveles de pago. Añada los dominios de su plataforma de analítica y marketing si su portal carga scripts de seguimiento. Pruebe su walled garden antes de la puesta en marcha utilizando un dispositivo en estado no autenticado (no una cuenta de prueba, sino un dispositivo nuevo real que nunca se haya conectado a esta red). Recorra cada método de inicio de sesión que ofrezca. Si algún método de inicio de sesión falla, capture la salida de la consola del navegador y el tráfico de red para identificar qué dominio está siendo bloqueado. Implemente un proceso de revisión trimestral. Los proveedores de OAuth y las CDN cambian sus estructuras de dominio. Apple actualizó sus dominios de inicio de sesión dos veces en 2023. Google añade periódicamente nuevos subdominios a su flujo de OAuth. Un walled garden que era correcto en el momento del despliegue se desalineará sin un mantenimiento activo. Los errores que debe evitar: primero, el exceso de listas blancas. He visto despliegues en los que el equipo de TI, frustrado por los fallos intermitentes, simplemente incluyó en la lista blanca rangos de IP enteros o añadió entradas con comodines que omitían por completo el walled garden. Eso anula el propósito y crea un riesgo de cumplimiento. Sea preciso. Segundo, ignorar IPv6. Si su red admite IPv6 (y cada vez debería ser más habitual), las reglas de su walled garden deben cubrir los rangos de direcciones IPv6 además de IPv4. Tercero, no tener en cuenta los enlaces profundos de las aplicaciones móviles. Algunos flujos de inicio de sesión social, especialmente en iOS, intentan abrir la aplicación nativa en lugar de un navegador web. Esto puede romper por completo el flujo de OAuth. Asegúrese de que la configuración de su portal fuerce el OAuth basado en web en lugar de los flujos basados en aplicaciones. --- [RAPID-FIRE Q&A — 1 MINUTE] Permítame repasar algunas preguntas que escucho con regularidad. "¿Necesito incluir en la lista blanca todo el rango de IP de Google?" No. Incluya en la lista blanca dominios específicos y utilice la resolución DNS dinámica. Incluir en la lista blanca ASNs completos es un riesgo de seguridad. "¿Puedo utilizar la misma configuración de walled garden en todos mis sitios?" En principio, sí, si su plataforma de portal y sus proveedores de inicio de sesión social son consistentes. Pero realice pruebas en cada sitio, porque los resolutores DNS locales pueden comportarse de manera diferente. "¿Cómo afecta el GDPR a la configuración del walled garden?" El GDPR no regula directamente los dominios del walled garden, pero sí regula qué datos recopila su portal durante la autenticación. Asegúrese de que los alcances (scopes) de OAuth de su inicio de sesión social soliciten solo los datos mínimos necesarios (normalmente nombre y correo electrónico) y de que su aviso de privacidad sea accesible desde dentro del walled garden antes de que el invitado se autentique. "¿Cuál es el TTL correcto para las entradas DNS en el walled garden?" La mayoría de los controladores tienen un valor predeterminado de 60 segundos. Para despliegues de alta disponibilidad, recomendaría no bajar de 30 segundos para evitar una carga excesiva de consultas DNS. --- [SUMMARY AND NEXT STEPS — 1 MINUTE] En resumen: un walled garden es la zona de preautenticación controlada en su despliegue de WiFi de invitados. Hacerlo bien significa incluir en la lista blanca su plataforma de portal, todos los proveedores de OAuth social que esté utilizando, los endpoints de sondeo del Captive Portal del SO y cualquier servicio de pago o analítica del que dependa su portal. Utilice la resolución DNS dinámica, no listas de IP estáticas. Realice pruebas con dispositivos reales no autenticados antes de la puesta en marcha. Y construya un proceso de revisión trimestral en su calendario operativo. Si está desplegando o revisando una red de WiFi de invitados y desea validar su configuración actual de walled garden, la plataforma de Purple incluye una gestión integrada de walled garden con conjuntos de dominios preconfigurados para todos los principales proveedores de inicio de sesión social. Es una de esas cosas que es genuinamente más fácil de hacer bien con las herramientas adecuadas detrás. Gracias por escuchar. La guía de referencia técnica completa sobre este tema (que incluye diagramas de arquitectura, listas blancas de dominios y escenarios de implementación prácticos) está disponible en la base de conocimientos de Purple. Hasta la próxima. --- [END OF SCRIPT]

Resumen ejecutivo

Un walled garden es un componente fundamental de cualquier despliegue de WiFi de invitados seguro y fácil de usar. Define el conjunto limitado de recursos de red a los que puede acceder un dispositivo de invitado antes de completar la autenticación a través de un Captive Portal. Una configuración incorrecta o incompleta del walled garden es la principal causa de fallos de inicio de sesión de invitados en los despliegues empresariales, lo que se traduce en una experiencia de usuario degradada, un aumento de los tickets de soporte y un daño reputacional medible en entornos de hostelería y comercio minorista. Para los responsables de TI y arquitectos de red, dominar la configuración de WiFi con walled garden no es simplemente una tarea técnica; es un paso crítico para mitigar los riesgos de seguridad, garantizar el cumplimiento de estándares como PCI DSS v4.0 y GDPR, y maximizar el retorno de la inversión de una red de WiFi de invitados. Esta guía proporciona un marco práctico y neutral respecto al proveedor para diseñar, implementar y mantener un walled garden robusto que admita métodos de autenticación modernos, incluidos los inicios de sesión sociales a través de OAuth 2.0, pasarelas de pago y detección de Captive Portal a nivel de SO, en entornos empresariales que incluyen hostelería, comercio minorista, eventos y organizaciones del sector público.

header_image.png

Análisis técnico detallado

La anatomía del acceso previo a la autenticación

En una arquitectura típica de WiFi de invitados, cuando el dispositivo de un usuario se asocia con un SSID abierto, se le asigna una dirección IP a través de DHCP y el controlador de red lo coloca en un rol de preautenticación o en una VLAN aislada. En este estado, el controlador intercepta todo el tráfico HTTP y HTTPS saliente y lo redirige a la página de bienvenida del Captive Portal. Este es el mecanismo que fuerza al navegador del invitado a ir a la pantalla de inicio de sesión. El walled garden es la excepción explícita a esta regla de interceptación: una lista blanca seleccionada de dominios externos y rangos de direcciones IP con los que el dispositivo tiene permitido comunicarse libremente durante la fase de preautenticación.

Sin un walled garden correctamente configurado, los mismos servicios necesarios para completar la autenticación quedan bloqueados. Los Captive Portals modernos no son aplicaciones monolíticas y autónomas. Son compuestos de microservicios y API de terceros. Los propios recursos del portal (HTML, CSS, JavaScript e imágenes) pueden servirse desde una Red de distribución de contenidos (CDN) que es completamente independiente de la infraestructura local del controlador. La funcionalidad de inicio de sesión social depende de llegar a los endpoints de OAuth 2.0 en Google, Facebook, Apple o Microsoft. Si se ofrece un nivel de WiFi de pago, el portal debe comunicarse con un procesador de pagos como Stripe o PayPal. Las plataformas de analítica y marketing pueden cargar scripts de seguimiento desde sus propios orígenes de CDN. Cada una de estas dependencias representa un dominio que debe permitirse explícitamente en el walled garden, o de lo contrario el flujo de autenticación fallará silenciosamente o con un error confuso.

walled_garden_architecture.png

El problema de la resolución DNS

El aspecto técnicamente más complejo de la configuración del walled garden es la brecha entre la administración basada en dominios y la aplicación basada en IP. Aunque los administradores de red configuran el walled garden utilizando nombres de dominio legibles por humanos (por ejemplo, accounts.google.com), la mayoría de los controladores de red aplican estas reglas en la capa IP. Cuando se añade un dominio a la lista blanca, el controlador realiza una búsqueda DNS para resolverlo en una o más direcciones IP y añade esas IP a una lista de control de acceso (ACL) temporal.

Esto crea un riesgo operativo significativo con los principales proveedores de la nube. Google, Meta, Apple y las CDN líderes utilizan enrutamiento anycast y asignación dinámica de direcciones IP. La dirección IP en la que se resuelve accounts.google.com en el momento de la configuración puede ser completamente diferente de la dirección en la que se resuelva seis meses después, o incluso en un segmento de red diferente. Por lo tanto, una lista blanca de IP estáticas no es una configuración sostenible; se degradará con el tiempo a medida que roten los rangos de IP de la CDN.

La solución correcta es la resolución DNS dinámica, donde el controlador de red vuelve a resolver periódicamente cada dominio de la lista blanca y actualiza sus ACL en consecuencia. La mayoría de los controladores de nivel empresarial de Cisco, Aruba, Ruckus y Fortinet admiten esto de forma nativa. Si su controlador no lo hace, está operando con una configuración que producirá fallos intermitentes difíciles de diagnosticar y que empeorarán con el tiempo.

Interceptación HTTPS y cumplimiento de TLS

Una capa adicional de complejidad surge de la prevalencia de HTTPS. Cuando un dispositivo de invitado en estado de preautenticación intenta cargar un recurso HTTPS que no está en la lista blanca, el controlador debe decidir cómo gestionar la solicitud. Existen dos enfoques comunes, ambos con inconvenientes significativos si no se gestionan correctamente.

El primer enfoque es una interrupción silenciosa (silent drop), donde el controlador simplemente bloquea la conexión. El navegador del invitado muestra un error genérico de 'no se puede acceder al sitio', lo que no proporciona ninguna guía útil y a menudo se interpreta como un fallo de red en lugar de una solicitud del portal. El segundo enfoque es la interceptación HTTPS, donde el controlador intenta presentar una redirección al Captive Portal. Esto requiere que el controlador actúe como un proxy man-in-the-middle (MITM), presentando su propio certificado TLS. Si el dispositivo del invitado no confía en este certificado (lo cual casi nunca ocurre en una red de invitados pública), el navegador mostrará una advertencia de seguridad, lo que resulta alarmante para los usuarios y, en entornos regulados, puede constituir un problema de cumplimiento.

LEl enfoque arquitectónico correcto es garantizar que todos los dominios requeridos para el flujo de autenticación estén incluidos en la lista de permitidos, lo que permite que su tráfico HTTPS pase sin alteraciones. La redirección al Captive Portal debe activarse mediante el mecanismo de sondeo a nivel de sistema operativo, en lugar de mediante la intercepción HTTPS. Esto elimina por completo el problema de confianza del certificado. Los navegadores modernos también implementan HTTP Strict Transport Security (HSTS) y, en algunos casos, el anclaje de certificados (certificate pinning). Ambos mecanismos harán que la intercepción HTTPS falle por completo en los dominios principales, lo que producirá una conexión rota en lugar de una redirección, otro argumento de peso a favor de un walled garden correctamente configurado frente a una política amplia de intercepción HTTPS.

Captive Network Assistant (CNA) y dominios de sondeo del sistema operativo

Uno de los aspectos que más se suele pasar por alto en la configuración de un walled garden es el mecanismo mediante el cual los sistemas operativos modernos detectan la presencia de un Captive Portal. Todos los sistemas operativos principales (iOS, iPadOS, macOS, Android y Windows) implementan un Captive Network Assistant (CNA) que sondea un endpoint HTTP conocido inmediatamente después de conectarse a una nueva red WiFi. Si la respuesta difiere del valor esperado, el sistema operativo infiere que se encuentra detrás de un Captive Portal e inicia automáticamente una ventana del navegador para gestionar el inicio de sesión.

Los endpoints de sondeo utilizados por cada plataforma son los siguientes:

Sistema operativo Dominio de sondeo Respuesta esperada
Apple (iOS, macOS) captive.apple.com HTTP 200 con cuerpo específico
Android (Google) connectivitycheck.gstatic.com HTTP 204 No Content
Windows www.msftconnecttest.com HTTP 200 con cuerpo específico
Firefox / Mozilla detectportal.firefox.com HTTP 200 con cuerpo específico

Si el walled garden bloquea cualquiera de estos dominios de sondeo, el sistema operativo nunca detectará el Captive Portal. Desde la perspectiva del invitado, la red WiFi simplemente no tendrá acceso a Internet. Este es uno de los fallos de configuración más comunes observados en despliegues de producción y se puede prevenir por completo incluyendo estos dominios en la lista de permitidos base.

Guía de implementación

Paso 1: Descubrimiento de dominios base

Antes de modificar la configuración de su controlador, realice una auditoría exhaustiva de cada servicio externo del que dependa su Captive Portal. La mejor manera de hacerlo es cargando el portal en un navegador con las herramientas de desarrollo abiertas e inspeccionando la pestaña de red para identificar todas las solicitudes de recursos externos. La lista resultante debe categorizarse de la siguiente manera:

Categoría Propósito Dominios esenciales
Plataforma de Captive Portal Sirve los recursos de la página de bienvenida y gestiona la lógica de autenticación. *.purple.ai, cdn.your-vendor.com
Google OAuth Permite el inicio de sesión con Google. accounts.google.com, oauth2.googleapis.com, apis.google.com, *.gstatic.com
Facebook / Meta OAuth Permite el inicio de sesión con Facebook. www.facebook.com, graph.facebook.com, connect.facebook.net, *.fbcdn.net
Inicio de sesión con Apple Permite el inicio de sesión con Apple. appleid.apple.com, idmsa.apple.com, *.apple.com
Sondeos de Captive Portal del SO Permite la detección automática del portal. captive.apple.com, connectivitycheck.gstatic.com, www.msftconnecttest.com
Pasarelas de pago Procesa pagos para niveles premium. *.stripe.com, *.paypal.com
Analítica / Marketing Carga scripts de seguimiento y analítica. Específicos del proveedor (por ejemplo, *.segment.com, *.mixpanel.com)

domain_whitelist_infographic.png

Paso 2: Configuración del controlador

La implementación varía según el proveedor, pero los principios subyacentes son universes. Diríjase a la configuración del Captive Portal o de la página de bienvenida en la interfaz de gestión de su controlador de red: en Cisco Meraki, esto se encuentra en Wireless > Configure > Splash Page; en Aruba Central, es el Captive Portal Profile; en Fortinet, está dentro de Security Policies > Captive Portal. Localice la sección de acceso previo a la autenticación o de la lista de permitidos del walled garden y proceda de la siguiente manera:

  1. Introduzca los dominios por categoría: Añada sistemáticamente cada dominio de su auditoría, recorriendo cada categoría. Utilice comodines (*.gstatic.com) si su controlador los admite y si el perfil de riesgo es aceptable. Para entornos de alta seguridad, prefiera subdominios explícitos en lugar de comodines amplios.
  2. Habilite la resolución DNS dinámica: Confirme que su controlador está configurado para volver a resolver periódicamente los dominios de la lista de permitidos en lugar de almacenar en caché una lista de IP estáticas. Consulte la documentación de su proveedor para verificar que esto esté activo. Establezca un TTL de DNS de 60 segundos o inferior para las entradas del walled garden.
  3. Configure reglas de doble pila (dual-stack): Si su red admite IPv6 (y debería, dada la saturación del espacio de direcciones IPv4), asegúrese de que las ACL de su walled garden se apliquen tanto al tráfico IPv4 como al IPv6. Un dispositivo de invitado con una dirección IPv6 eludirá las ACL que solo admiten IPv4.
  4. Aplique al SSID de invitados: Asocie el perfil de Captive Portal y su walled garden únicamente al SSID de invitados. Nunca aplique políticas de walled garden de nivel de invitado a los SSID corporativos.

network_engineer_config.png

Paso 3: Protocolo de pruebas previo a la puesta en marcha

Las pruebas son innegociables y deben realizarse con dispositivos reales en un estado genuino de preautenticación, no con cuentas de administrador que puedan tener acceso elevado, ni con dispositivos que se hayan conectado previamente a la red y puedan tener credenciales almacenadas en caché.

Para cada plataforma de dispositivo (iOS, Android, Windows, macOS), realice lo siguiente:

  1. Olvide la red en el dispositivo de prueba para asegurarse de que no haya ningún estado almacenado en caché.
  2. Conéctese al SSID de invitados y observe si el Captive Portal se inicia automáticamente a través del mecanismo CNA.
  3. APruebe cada método de inicio de sesión ofrecido en el portal (registro por correo electrónico, Google Sign-In, Facebook Login, Apple Sign In) y confirme que cada uno se completa correctamente.
  4. Pruebe el flujo de pago si se ofrece un nivel de pago, utilizando un número de tarjeta de prueba del entorno sandbox de su pasarela de pago.
  5. Inspeccione la consola del navegador en cualquier prueba que falle. La pestaña de red identificará el dominio exacto que se está bloqueando, lo que le permitirá añadirlo a la lista blanca con precisión.

Documente los resultados de este protocolo de pruebas en un registro de configuración que se conserve para fines de cumplimiento normativo.

Buenas prácticas

El principio de mínimo privilegio es la regla fundamental para la configuración del walled garden. Añada a la lista blanca únicamente los dominios que se requiera de forma demostrable para que funcione el flujo de autenticación. Evite comodines amplios como *.google.com o *.facebook.com a menos que la implementación de su controlador los requiera; priorice los subdominios específicos. Cada dominio adicional en la lista blanca representa una superficie de ataque potencial en la zona de preautenticación.

Una cadencia de revisión trimestral es esencial para mantener un walled garden funcional a lo largo del tiempo. Los proveedores de inicio de sesión social y las CDN actualizan su infraestructura con regularidad. Apple modificó la estructura de su dominio de Sign In en 2023. Google ha añadido nuevos subdominios a su flujo de OAuth en múltiples ocasiones. Un walled garden que era preciso en el momento del despliegue se desajustará en cuestión de meses si no se realiza un mantenimiento activo. Integre una revisión trimestral en su calendario operativo, contrastando su lista blanca con la documentación actualizada de cada proveedor.

La alineación con el cumplimiento normativo exige que la configuración de su walled garden no vulnere de forma inadvertida los requisitos de las normas aplicables. Bajo PCI DSS v4.0, cualquier red que procese, almacene o transmita datos de titulares de tarjetas debe mantener controles de acceso estrictos. Si su WiFi para invitados incluye un nivel de pago, el walled garden debe permitir conexiones TLS 1.2 o superior con su procesador de pagos sin interceptación. Bajo el GDPR, el aviso de privacidad debe ser accesible para los invitados antes de que faciliten cualquier dato personal, lo que significa que el enlace a su política de privacidad debe ser accesible desde el walled garden, incluso antes de la autenticación.

La documentación de la gestión de cambios es una obligación profesional para cualquier cambio en la red de producción. Cada modificación en el walled garden (ya sea añadir un nuevo dominio, eliminar uno obsoleto o actualizar un comodín) debe registrarse con una marca de tiempo, el motivo del cambio y el ingeniero responsable. Este registro de auditoría es inestimable para solucionar fallos intermitentes y para demostrar la debida diligencia en una auditoría de cumplimiento.

Resolución de problemas y mitigación de riesgos

La siguiente tabla asocia los modos de fallo más comunes con sus causas raíz y las mitigaciones recomendadas:

Síntoma Causa raíz Mitigación
El portal no se inicia automáticamente en iOS/Android Los dominios de prueba del captive portal del sistema operativo están bloqueados. Añada captive.apple.com y connectivitycheck.gstatic.com al walled garden.
El botón de Google Sign-In no responde Faltan uno o varios dominios de Google OAuth o CDN. Añada accounts.google.com, oauth2.googleapis.com, apis.google.com y *.gstatic.com.
El inicio de sesión de Facebook falla con un error de CORS Los subdominios de la CDN de Facebook (*.fbcdn.net) no están en la lista blanca. Añada entradas de comodín para *.fbcdn.net y *.facebook.com.
El inicio de sesión funciona inicialmente pero falla de forma intermitente Lista blanca de IP estáticas; las direcciones IP de la CDN han rotado. Habilite la resolución DNS dinámica en el controlador.
Los invitados ven advertencias de certificado TLS El controlador está interceptando el tráfico HTTPS hacia dominios que no están en la lista blanca. Añada a la lista blanca todos los dominios requeridos para que el tráfico HTTPS pase sin interrupciones.
La página de pago no se carga Los dominios de la CDN o de la API de la pasarela de pago no están en la lista blanca. Añada *.stripe.com o *.paypal.com según corresponda.
Los usuarios de IPv6 no pueden acceder al portal Las ACL del walled garden son solo para IPv4. Amplíe todas las reglas del walled garden para cubrir los rangos de direcciones IPv6.

Mitigación de riesgos: exceso de listas blancas es un riesgo real y poco valorado. Cuando se producen fallos intermitentes, la respuesta tentadora es añadir entradas de comodín progresivamente más amplias hasta que el problema desaparezca. Este enfoque puede dar como resultado un walled garden que esté prácticamente abierto, lo que permite a los invitados no autenticados acceder a gran parte de internet sin completar el flujo de inicio de sesión. Esto frustra el propósito del captive portal, perjudica la recopilación de datos con fines de marketing y puede generar responsabilidades bajo el GDPR si los invitados pueden acceder a la red sin aceptar los términos y condiciones. Diagnostique siempre el dominio bloqueado específico antes de añadir entradas.

ROI e impacto empresarial

Un walled garden correctamente implementado ofrece un valor empresarial medible en múltiples dimensiones. En el sector de la hostelería, una experiencia de inicio de sesión de WiFi para invitados fluida se correlaciona directamente con las puntuaciones de satisfacción de los huéspedes. Las investigaciones de J.D. Power identifican sistemáticamente el rendimiento de la WiFi como uno de los principales factores de satisfacción de los huéspedes de hotel. Un portal que no se carga (debido a que el walled garden está mal configurado) genera una primera impresión negativa que afecta a la experiencia de toda la estancia.

Para los operadores de comercio minorista, el walled garden es la puerta de entrada al programa de fidelización. Cada invitado que inicia sesión correctamente a través del captive portal proporciona una identidad verificada que puede vincularse al comportamiento de compra, lo que permite realizar campañas de marketing personalizadas con tasas de conversión demostrablemente más altas que la publicidad anónima. Un walled garden mal configurado que impide el inicio de sesión reduce directamente el volumen de datos de primera mano capturados, con un impacto cuantificable en el ROI de marketing.

En el sector de los eventos (estadios, centros de conferencias, pabellones de exposiciones), el walled garden debe diseñarse a escala. En momentos de máxima carga, decenas de miles de dispositivos intentarán autenticarse simultáneamente. Un walled garden que dependa de un slUn resolutor DNS lento o sobrecargado creará un cuello de botella que se manifiesta como un portal lento o que no responde, incluso si la infraestructura de red subyacente tiene el tamaño correcto. Implementar un resolutor DNS local con caché que sea autoritativo para los dominios del walled garden es una práctica estándar para despliegues de alta densidad.

Para las organizaciones del sector público, el walled garden es también un instrumento de cumplimiento normativo. Bajo el Reglamento de Seguridad de las Redes y Sistemas de Información (NIS) del Reino Unido y el marco más amplio del GDPR, las organizaciones deben demostrar que el acceso a las redes de cara al público está controlado y es auditable. Un walled garden correctamente configurado, combinado con un Captive Portal conforme, proporciona la base técnica para este registro de auditoría.

El coste de configurar incorrectamente el walled garden no es meramente técnico. Se mide en el volumen de llamadas al servicio de soporte, las puntuaciones de satisfacción de los usuarios, la pérdida de datos de marketing y la posible exposición regulatoria. La inversión en configurar y mantener un walled garden robusto es modesta en relación con estos riesgos, y el retorno —en forma de mayores tasas de adopción del portal, datos de primera mano más enriquecidos y una menor fricción operativa— es tanto medible como significativo.

Definiciones clave

Walled Garden

Un conjunto controlado de dominios y rangos de direcciones IP preaprobados a los que un dispositivo de invitado puede acceder en una red WiFi antes de completar la autenticación. Todo el tráfico a dominios fuera de esta lista se bloquea o se redirige al Captive Portal.

Este es el mecanismo fundamental que permite el funcionamiento de un Captive Portal. Sin él, el propio portal (y todos los proveedores de inicio de sesión social de los que depende) sería inaccesible para los dispositivos no autenticados.

Captive Portal

Una página web que intercepta el tráfico de internet de un usuario de WiFi recién conectado y le requiere completar una acción (como iniciar sesión, aceptar las condiciones o realizar un pago) antes de concederle acceso total a la red.

El Captive Portal es el punto principal de interacción para los invitados. Es el mecanismo a través del cual los operadores recopilan datos de primera mano, hacen cumplir las condiciones de servicio y gestionan los niveles de acceso de pago.

OAuth 2.0

Un estándar abierto de autorización que permite a los usuarios conceder a una aplicación de terceros acceso limitado a su cuenta en otro servicio, sin compartir su contraseña. Es el protocolo que sustenta 'Iniciar sesión con Google' e 'Iniciar sesión con Facebook'.

Cada opción de inicio de sesión social en un Captive Portal se basa en OAuth 2.0. Los endpoints de OAuth de cada proveedor deben incluirse en la lista blanca del walled garden para que el flujo de inicio de sesión se complete correctamente.

Resolución DNS dinámica

Una función del controlador de red que vuelve a resolver periódicamente los nombres de dominio de la lista blanca con sus direcciones IP actuales y actualiza las ACL de aplicación en consecuencia, en lugar de utilizar una lista de IP estáticas.

Esto es esencial para la fiabilidad del walled garden. Sin ello, las direcciones IP almacenadas en caché en el momento del despliegue quedarán desactualizadas a medida que las CDN roten su infraestructura, lo que provocará fallos de inicio de sesión intermitentes y difíciles de diagnosticar.

Red de distribución de contenidos (CDN)

Una red de servidores distribuida geográficamente que entrega contenido web a los usuarios desde la ubicación más cercana disponible, mejorando el rendimiento y la disponibilidad.

Los Captive Portals y los proveedores de inicio de sesión social dependen de las CDN para servir scripts, fuentes e imágenes. Los subdominios de CDN (por ejemplo, *.gstatic.com para Google, *.fbcdn.net para Facebook) deben incluirse en el walled garden.

Captive Network Assistant (CNA)

Una función integrada de los sistemas operativos modernos (iOS, Android, Windows, macOS) que detecta automáticamente la presencia de un Captive Portal mediante el sondeo de un endpoint HTTP conocido después de conectarse a una nueva red WiFi.

El CNA es lo que hace que la ventana de inicio de sesión del portal aparezca automáticamente en el dispositivo de un invitado. Si el dominio de sondeo está bloqueado por el walled garden, el CNA no puede detectar el portal y el invitado no ve ninguna solicitud de inicio de sesión.

ACL de preautenticación

Una lista de control de acceso (ACL) aplicada a una sesión de red antes de que el usuario se haya autenticado. Define qué tráfico está permitido (el walled garden) y cuál está bloqueado o redirigido.

Esta es la implementación técnica del walled garden en los controladores de red empresariales. Los equipos de TI configuran las ACL de preautenticación en los ajustes del Captive Portal de sus controladores inalámbricos.

PCI DSS

El Estándar de Seguridad de Datos de la Industria de Tarjetas de Pago es un conjunto de normas de seguridad diseñadas para garantizar que todas las empresas que aceptan, procesan, almacenan o transmiten información de tarjetas de crédito mantengan un entorno seguro.

Relevante para cualquier despliegue de WiFi de invitados con un nivel de acceso de pago. El walled garden debe permitir conexiones TLS 1.2+ a la pasarela de pago sin interceptación, y la red de invitados debe estar segmentada de cualquier entorno de datos de titulares de tarjetas.

HTTP Strict Transport Security (HSTS)

Un mecanismo de política de seguridad web que indica a los navegadores que solo interactúen con un servidor utilizando HTTPS, evitando ataques de degradación de protocolo y el secuestro de cookies.

HSTS hace que la interceptación HTTPS por parte de un controlador de Captive Portal falle por completo para los dominios principales, ya que el navegador se niega a aceptar un certificado en el que no confía. Esto refuerza el argumento a favor de un walled garden correctamente configurado frente a un enfoque de interceptación HTTPS.

Ejemplos prácticos

Un hotel de lujo de 500 habitaciones está desplegando una nueva red WiFi de invitados utilizando hardware de Cisco Meraki y la plataforma Purple. Necesitan admitir inicios de sesión de Google y Facebook, y ofrecer un nivel de velocidad premium de pago a través de Stripe. ¿Cuál es el conjunto mínimo de dominios que deben incluirse en la lista blanca del walled garden de Meraki y cómo deben configurarse?

Se deben introducir los siguientes dominios en el panel de Meraki en Wireless > Configure > Splash Page > Walled Garden Ranges:

  1. Plataforma Purple: *.purple.ai (cubre los subdominios cdn, portal y api)
  2. Google OAuth: accounts.google.com, oauth2.googleapis.com, apis.google.com, *.gstatic.com
  3. Facebook OAuth: www.facebook.com , graph.facebook.com, connect.facebook.net, *.fbcdn.net
  4. Pagos con Stripe: *.stripe.com
  5. Sondeos de SO: captive.apple.com, connectivitycheck.gstatic.com, www.msftconnecttest.com

Cisco Meraki realiza la resolución DNS dinámica de forma nativa para las entradas del walled garden, por lo que no se requiere ninguna configuración adicional para la resolución de IP. El hotel también debe asegurarse de que la URL de su política de privacidad sea accesible desde dentro del walled garden para cumplir con el GDPR. Tras el despliegue, el equipo de TI debe realizar pruebas con un dispositivo iOS restablecido de fábrica y un dispositivo Android restablecido de fábrica para verificar el flujo de inicio de sesión completo para ambos métodos de inicio de sesión social.

Comentario del examinador: Esta solución es exhaustiva y precisa. Identifica correctamente las cinco categorías de dominios esenciales para este escenario específico. La inclusión de los dominios de sondeo del SO es un detalle crítico que se suele pasar por alto con frecuencia. La referencia a la ruta de configuración específica de Meraki demuestra un conocimiento práctico y aplicable. La nota sobre el cumplimiento del GDPR añade el contexto empresarial que distingue la respuesta de un profesional senior de una puramente técnica.

Una cadena minorista nacional con 200 tiendas está experimentando fallos intermitentes en el inicio de sesión de Google en su WiFi de invitados. Los fallos son aleatorios: algunas tiendas no se ven afectadas, otras registran fallos en determinados días o a ciertas horas. La red utiliza controladores Fortinet FortiGate. ¿Cuál es la causa raíz más probable y cómo la resolvería?

La causa raíz más probable es que el walled garden de FortiGate esté utilizando una lista de IP estáticas para los dominios OAuth de Google, y la CDN de Google haya rotado sus direcciones IP en algunas ubicaciones. La naturaleza intermitente y específica de cada ubicación de los fallos es un indicador clásico de la rotación de IP de la CDN: las listas de IP almacenadas en caché de algunas tiendas siguen siendo válidas, mientras que otras se han quedado desactualizadas.

Pasos para la resolución:

  1. Inicie sesión en la consola de administración de FortiGate en una tienda afectada y navegue hasta la configuración del walled garden del Captive Portal.
  2. Verifique si los dominios OAuth de Google están configurados como nombres de dominio o como direcciones IP estáticas.
  3. Si hay IP estáticas presentes, reemplácelas con entradas basadas en dominios: accounts.google.com, oauth2.googleapis.com, apis.google.com, *.gstatic.com.
  4. Habilite los objetos de dirección basados en FQDN de FortiGate con un intervalo de actualización corto (recomendado: 60 segundos) para garantizar que la resolución DNS dinámica esté activa.
  5. Implemente este cambio de configuración en las 200 tiendas a través de FortiManager para garantizar la coherencia.
  6. Supervise las tiendas afectadas durante 48 horas después del cambio para confirmar la resolución.
Comentario del examinador: Este diagnóstico identifica correctamente el problema de la IP estática / rotación de CDN como la causa raíz de los fallos intermitentes y distribuidos geográficamente. La resolución es técnicamente precisa y demuestra conocimiento de la función de objetos de dirección FQDN de FortiGate. La recomendación de utilizar FortiManager para un despliegue centralizado refleja la realidad operativa de un despliegue en 200 tiendas y muestra conciencia de la gestión de cambios a gran escala.

Preguntas de práctica

Q1. Está diseñando el WiFi de invitados para una nueva terminal de aeropuerto internacional. Los requisitos incluyen el inicio de sesión a través de Google, Apple y WeChat, además de un nivel de acceso premium vendido a través de PayPal. ¿Qué desafíos únicos presenta este escenario para la configuración de su walled garden y cómo los abordaría?

Sugerencia: Considere la naturaleza geográfica y específica de la aplicación del flujo de inicio de sesión de WeChat, y las implicaciones de una base de usuarios globalmente diversa para la resolución de IP de la CDN.

Ver respuesta modelo

Surgen tres desafíos únicos. Primero, el inicio de sesión de WeChat: a diferencia del OAuth estándar basado en web, el flujo de inicio de sesión de WeChat en dispositivos móviles a menudo intenta abrir la aplicación nativa de WeChat a través de un enlace profundo (deep link) en lugar de completar el flujo en un navegador web. Esto puede romper por completo el flujo del Captive Portal. La solución es configurar el portal para forzar un flujo de código QR basado en web e incluir en la lista blanca los dominios específicos de Tencent que sirven el código QR y gestionan el intercambio de autenticación (por ejemplo, open.weixin.qq.com, wx.qq.com). Segundo, la resolución global de CDN: un aeropuerto internacional atiende a usuarios de todas las regiones. La resolución DNS dinámica es crítica, ya que Google, Apple y PayPal sirven su contenido desde nodos de CDN distribuidos geográficamente. El controlador debe volver a resolver los dominios del walled garden con frecuencia para garantizar que se incluyan en la lista blanca las direcciones IP regionales correctas. Tercero, la localización de PayPal: PayPal utiliza dominios y CDN específicos de cada país para ofrecer experiencias de pago localizadas. Además de *.paypal.com, es posible que deba incluir en la lista blanca *.paypalobjects.com y variantes regionales. Se recomienda realizar una auditoría exhaustiva del flujo de pago de PayPal desde múltiples configuraciones regionales de dispositivos antes de la puesta en marcha.

Q2. Un estadio con capacidad para 60.000 espectadores está experimentando fallos generalizados en el inicio de sesión del portal durante los primeros 15 minutos de cada evento, tras lo cual el rendimiento se normaliza. La infraestructura está correctamente dimensionada para la carga de usuarios. ¿Cuál es el cuello de botella probable y cómo lo resolvería?

Sugerencia: Piense en lo que sucede cuando 60.000 dispositivos intentan conectarse y resolver los mismos dominios simultáneamente.

Ver respuesta modelo

El cuello de botella es casi con seguridad la resolución DNS. Cuando 60.000 dispositivos se conectan simultáneamente, todos intentan resolver los mismos dominios del walled garden (CDN del portal, Google OAuth, inicio de sesión de Apple, etc.) al mismo tiempo. Si el resolutor DNS ascendente (normalmente el resolutor recursivo del ISP o un servicio DNS en la nube) no puede gestionar esta ráfaga de consultas, la latencia de resolución se dispara, lo que hace que el portal parezca lento o no responda, aunque la red en sí esté funcionando correctamente. El rendimiento se normaliza tras la avalancha inicial porque la caché del resolutor se calienta y las consultas posteriores se sirven desde la caché. La solución es desplegar un resolutor DNS local con almacenamiento en caché (por ejemplo, Unbound o un dispositivo dedicado) dentro de la infraestructura de red del estadio. Este resolutor debe precargarse con los dominios del walled garden antes de que comience el evento, de modo que todas las consultas DNS para esos dominios se respondan desde la caché local con una latencia inferior a un milisegundo. La configuración DHCP del controlador debe apuntar los dispositivos de los invitados a este resolutor local.

Q3. Su empresa va a adquirir una cadena de hoteles boutique que utiliza la plataforma de Captive Portal de un competidor. Se le ha encomendado la tarea de migrarlos a Purple. El equipo de TI existente no tiene documentación de su configuración actual de walled garden. ¿Cómo abordaría la migración para garantizar que no haya interrupciones para los invitados?

Sugerencia: Antes de construir lo nuevo, debe comprender lo antiguo. Considere tanto el descubrimiento técnico como los requisitos comerciales.

Ver respuesta modelo

La migración debe realizarse en cuatro etapas. Etapa 1 — Descubrimiento: Conecte un ordenador portátil al WiFi de invitados existente en estado no autenticado y utilice una herramienta de captura de paquetes (Wireshark) para registrar todas las consultas DNS y solicitudes HTTP/HTTPS realizadas durante el flujo de autenticación. Esto genera una lista definitiva de cada dominio del que depende el portal existente, independientemente de lo que esté documentado o no. Etapa 2 — Categorización: Asocie los dominios descubiertos con las categorías estándar (plataforma del portal, OAuth, CDN, sondeos de SO, pagos). Identifique cualquier dominio no estándar; estos pueden indicar integraciones personalizadas (por ejemplo, una API de programa de fidelización, una plataforma de marketing local) que deben conservarse en la nueva configuración. Etapa 3 — Despliegue en paralelo: Configure la plataforma Purple con la lista de dominios descubiertos y despliéguela en un SSID de prueba junto con el portal existente. Ejecute el protocolo de prueba completo en ambos SSID simultáneamente para validar que la configuración de Purple es funcionalmente equivalente. Etapa 4 — Transición: Una vez validada, migre el SSID de producción a Purple durante un período de poco tráfico (por ejemplo, a las 3:00 de la madrugada de un día laborable). Supervise las tasas de adopción del portal y los tickets de soporte durante las siguientes 48 horas para confirmar una transición limpia.

Continúe leyendo esta serie

Captive Portal personalizado: guía de HTML y CSS

Esta guía de referencia técnica autorizada describe los estándares de desarrollo, la arquitectura CSS y las limitaciones a nivel de red necesarias para diseñar y programar una página de inicio de Captive Portal personalizada. Proporciona a los desarrolladores frontend y arquitectos de red estrategias prácticas para navegar por los entornos Apple CNA y Android webview, garantizando experiencias de WiFi para invitados perfectas al píxel, conformes y de alto rendimiento.

Leer la guía →

Captive Portal vs Splash Page

Esta guía de referencia analiza la distinción crítica entre los captive portals y las splash pages en redes WiFi de invitados. Aclara cómo funciona el mecanismo subyacente de intercepción de red en combinación con la interfaz visual del invitado, ayudando a los responsables de TI y operadores de establecimientos a tomar decisiones informadas de arquitectura y adquisición.

Leer la guía →

Captive Portal Login: Troubleshooting and Explainer

Esta guía ofrece una referencia técnica detallada para comprender, implementar y solucionar problemas en los sistemas de inicio de sesión de Captive Portal en entornos de WiFi para invitados empresariales. Explica los mecanismos exactos de redirección HTTP y secuestro de DNS utilizados por los Captive Portals modernos, detalla cómo HSTS y los navegadores HTTPS seguros pueden bloquear las redirecciones locales, y ofrece una lista de comprobación clara y práctica para la resolución de problemas que abarca tanto soluciones del lado del cliente (desactivar VPN, desactivar la aleatorización de direcciones MAC, usar NeverSSL) como del lado del operador (configuración de walled garden, optimización del tiempo de concesión de DHCP, verificación de la interceptación de DNS). Los operadores de establecimientos, responsables de TI y arquitectos de redes encontrarán en esta guía una herramienta esencial para minimizar los tickets de soporte de los invitados y maximizar el ROI de su infraestructura inalámbrica.

Leer la guía →