Saltar al contenido principal

Captive Portal para Ubiquiti UniFi: configúrelo con Purple guest WiFi

Cómo añadir un Captive Portal de Purple a Ubiquiti UniFi: un servidor de portal externo, autorización del controlador y un walled garden, con un enlace a la guía de configuración paso a paso de Purple para la configuración exacta.

📖 2 min de lectura📝 450 palabras📚 5 definiciones clave

Escucha esta guía

Ver transcripción del podcast
Captive Portal for Ubiquiti UniFi - A Purple Technical Briefing [INTRODUCTION & CONTEXT - approximately 1 minute] Welcome to the Purple Technical Briefing series. I'm your host, and today we're getting into the specifics of deploying an external captive portal on Ubiquiti UniFi infrastructure - one of the most widely deployed network platforms in hospitality, retail, and enterprise environments globally. If you're an IT manager, network architect, or systems integrator working with UniFi Cloud Gateways, Dream Machines, or the UniFi Network Application, this episode is for you. We're going to walk through exactly how the external portal mechanism works under the bonnet, how to configure it correctly, where the common pitfalls are, and why overlaying Purple on top of a UniFi deployment is the right architectural decision for venues that need more than a basic splash page. Let's get into it. [TECHNICAL DEEP-DIVE - approximately 5 minutes] First, let's understand what's actually happening when a guest connects to a UniFi SSID that has a captive portal enabled. When a guest device associates with your guest SSID, the UniFi Access Point assigns it an IP address via DHCP as normal. But the device is immediately placed in what UniFi calls a "pending" state. In this state, the AP's built-in DNSmasq process intercepts every DNS query the device makes, regardless of what DNS server the device thinks it's using. The AP redirects all DNS traffic to itself. Simultaneously, the AP runs a lightweight HTTP redirector on port 80. The moment the guest's browser makes any HTTP request - and this is the key word, HTTP, not HTTPS - the redirector fires back a 302 redirect, sending the browser to the captive portal splash page. This is the mechanism that triggers the "Sign in to WiFi" notification on iOS and Android devices. Now, this is where the built-in portal versus external portal distinction becomes critical. With the built-in UniFi Hotspot Portal, the splash page is served directly by the UniFi Network Application. It's functional, it's quick to set up, but it's severely limited. You get basic password authentication, vouchers, and Stripe payments. There's no email capture, no social login, no GDPR consent management, no CRM integration, and no meaningful analytics beyond session counts. When you configure an External Portal Server - which is the setting we're focused on today - you're telling the UniFi controller to redirect guests to a completely separate web application. In our case, that's Purple. The URL you enter in the External Portal Server field becomes the destination for all those 302 redirects. Este es el detalle técnico importante sobre esa URL de redirección. Cuando UniFi redirige a un invitado a su portal externo, añade varios parámetros de consulta a la URL. Estos incluyen: la dirección MAC del AP, la dirección MAC del dispositivo cliente, una marca de tiempo Unix, la URL original que el cliente intentaba alcanzar y el nombre del SSID. Su portal externo - Purple en este contexto - captura esos parámetros, los utiliza para identificar el dispositivo que se conecta, presenta la página de bienvenida (splash page) adecuada, gestiona la autenticación y luego realiza una llamada API de vuelta a la aplicación de red UniFi para autorizar esa dirección MAC. Esa llamada API es el saludo de conexión (handshake) crucial. A partir de UniFi Network Application 9.1 y posterior, existe una REST API oficial con autenticación adecuada basada en claves. El endpoint de autorización es una solicitud POST a la versión uno de la API de sitios, dirigida al ID de cliente específico, con un cuerpo JSON que puede especificar límites de tiempo en minutos, límites de uso de datos en megabytes y límites de velocidad en kilobits por segundo. Una vez que el controlador recibe esa autorización, envía la instrucción al AP y el invitado pasa de pendiente a autorizado. Se concede el acceso a Internet. Ahora hablemos del Walled Garden, que UniFi denomina acceso previo a la autorización (Pre-Authorization Access). Esta es la lista blanca de dominios y direcciones IP a las que los invitados pueden acceder antes de autenticarse. Es esencial y es una de las fuentes más comunes de errores de configuración. Como mínimo, su walled garden debe incluir el nombre de dominio completamente calificado de su portal Purple y las direcciones IP o rangos CIDR en los que se resuelve la infraestructura de Purple. Si utiliza el inicio de sesión con redes sociales - Facebook, Google, Microsoft -, también debe agregar los dominios de endpoint OAuth para esos proveedores. Los endpoints de inicio de sesión de Google abarcan múltiples rangos de IP y varios dominios, incluidos accounts.google.com y oauth2.googleapis.com. La infraestructura de inicio de sesión de Facebook requiere de manera similar varias entradas. La documentación de Purple proporciona una lista actualizada de las entradas exactas requeridas, y esta lista se mantiene al día a medida que esos proveedores actualizan su infraestructura. Existe una peculiaridad crítica específica de UniFi que afecta a muchas implementaciones. El redireccionador HTTP en el AP solo intercepta el tráfico HTTP sin cifrar en el puerto 80. Los dispositivos modernos - iOS, Android, Windows, macOS - realizan la detección de Captive Portal basada en HTTPS. Los dispositivos Apple acceden a captive.apple.com a través de HTTPS. Los dispositivos Android acceden a connectivitycheck.gstatic.com. Si esas solicitudes HTTPS no reciben una respuesta específica, el dispositivo puede decidir que no hay ningún Captive Portal y simplemente no mostrar la pantalla de inicio de sesión. La solución es asegurarse de que su walled garden incluya los dominios de detección de Captive Portal para los principales sistemas operativos, y que su portal Purple sea accesible a través de HTTPS con un certificado SSL válido y de confianza. Los certificados autofirmados provocarán advertencias de seguridad del navegador que impedirán que el portal se cargue. Esto no es negociable para implementaciones de producción. La otra consideración específica de UniFi es la accesibilidad del controlador. La UniFi Network Application - ya sea que se ejecute en un Cloud Gateway, un Cloud Key o un servidor autoalojado - debe ser accesible desde la infraestructura de Purple para que las llamadas de autorización de la API se realicen correctamente. Si su controlador está en una red privada detrás de NAT, deberá asegurarse de que los puertos de API correspondientes estén accesibles. Para los controladores autoalojados, normalmente es el puerto 8443 para la API heredada, o el puerto HTTPS estándar 443 para la API más reciente introducida en la versión 9.1. La documentación de soporte de Purple especifica los rangos de IP exactos que necesitan acceso entrante a su controlador. Para la autenticación basada en RADIUS - que es relevante cuando implementa Purple junto con SSIDs WPA2-Enterprise o WPA3-Enterprise en lugar del modelo de SSID para invitados abierto - el servidor RADIUS integrado de UniFi admite métodos estándar 802.1X EAP. Se configura el perfil RADIUS en Settings, Networks, RADIUS Servers, y luego se hace referencia a ese perfil en la configuración de su SSID. UniFi también admite RADIUS sobre TLS, conocido como RADSEC, a partir de la versión 8.4 en adelante, lo que cifra el tráfico RADIUS entre el AP y el servidor de autenticación. Para implementaciones multisitio donde el tráfico RADIUS atraviesa el internet público, se recomienda encarecidamente RADSEC. [RECOMENDACIONES DE IMPLEMENTACIÓN Y ERRORES COMUNES — aproximadamente 2 minutos] Permítame compartir la lista de verificación de implementación práctica que revisaría con cualquier cliente que implemente Purple en UniFi. Primero, la segmentación de red. Su SSID de invitados debe estar en una VLAN dedicada, aislada de sus redes corporativas y de IoT. UniFi hace que esto sea sencillo: cree una red dedicada en Settings, Networks, asígnele un VLAN ID y asocie su SSID de invitados con esa red. Habilite el aislamiento de clientes en la red de invitados para evitar el tráfico de invitado a invitado. Segundo, el controlador debe tener un FQDN válido y un certificado SSL de confianza. No dependa de la dirección IP. Use un nombre de dominio adecuado, obtenga un certificado Let's Encrypt o comercial para el mismo y configure UniFi para usar ese certificado. Esto resuelve la mayoría de los problemas de redirección HTTPS. Tercero, cree su walled garden con cuidado y pruébelo. Las entradas mínimas son: su dominio del portal de Purple y sus rangos de IP, los dominios de detección de Captive Portal para iOS, Android y Windows, y cualquier dominio de proveedor de OAuth que esté utilizando. Realice pruebas con un dispositivo que nunca antes se haya conectado a la red; el DNS en caché y el estado de la red pueden ocultar fallas en el walled garden durante las pruebas. Cuarto, para la integración de la API, use una cuenta de administrador local dedicada en la UniFi Network Application con los permisos mínimos requeridos. No utilice sus credenciales de administrador principal. Si utiliza la Network Application 9.1 o posterior, use el nuevo mecanismo de clave API en Control Plane, Integrations; es más seguro y no requiere autenticación basada en credenciales. En quinto lugar, considere detenidamente la duración de la sesión. El tiempo de expiración predeterminado de la sesión de invitado de UniFi puede ser de tan solo ocho horas. Para implementaciones de hotelería donde los huéspedes pueden quedarse varias noches, configure las duraciones de sesión adecuadas en los ajustes del portal de Purple y asegúrese de que esas duraciones se pasen correctamente en la llamada de autorización de la API. El error más común que veo es realizar la implementación en un controlador autohospedado que no es de acceso público. Si Purple no puede comunicarse con su controlador para autorizar a los invitados, el portal se cargará pero la autenticación fallará silenciosamente. Siempre verifique la conectividad de la API desde la infraestructura de Purple antes de lanzar el servicio. [Preguntas y respuestas rápidas - aproximadamente 1 minuto] ¿Esto funciona en UniFi Dream Machine Pro? Sí. Todas las consolas UniFi OS - UDM, UDM Pro, UDM SE, UCG Ultra, UCG-Max - son compatibles con la configuración de External Portal Server. La Network Application se ejecuta en el dispositivo. ¿Puedo usar Purple en varios sitios de UniFi desde una sola cuenta de Purple? Sí. La arquitectura multisitio de Purple está diseñada exactamente para esto. Cada sucursal se configura como un sitio independiente en Purple, asignado al sitio de UniFi correspondiente. ¿Necesito abrir puertos de firewall en el gateway de UniFi? Debe asegurarse de que el tráfico de la VLAN de invitados pueda llegar al dominio del portal de Purple en el puerto 443. El puerto de la API del controlador también debe ser accesible desde los servidores de Purple. La documentación de Purple proporciona los rangos de IP específicos. ¿Qué pasa con WPA3? UniFi es compatible con WPA3 Personal y WPA3 Enterprise. El mecanismo de Captive Portal funciona con WPA3 Personal en redes de invitados. WPA3 Enterprise utiliza 802.1X y RADIUS, lo cual es un flujo de autenticación diferente. [Resumen y próximos pasos - aproximadamente 1 minuto] En resumen: implementar Purple como un Captive Portal externo en UniFi es una integración de arquitectura sólida y con un excelente soporte. Los pasos clave son: configurar su SSID de invitado con la opción External Portal Server apuntando a la URL de su portal de Purple, crear un walled garden integral que cubra la infraestructura de Purple y cualquier proveedor de OAuth que esté utilizando, asegurarse de que su controlador UniFi tenga un certificado SSL válido y sea accesible desde los servidores de la API de Purple, y configurar las duraciones de sesión adecuadas para su tipo de sucursal. El caso de negocio es sencillo. El portal integrado de UniFi le ofrece una página de bienvenida. Purple le ofrece una plataforma de experiencia de invitados basada en análisis y lista para cumplir con las normativas que se integra con su CRM, captura datos de primera fuente bajo el consentimiento de GDPR y proporciona los análisis de afluencia y tiempo de permanencia que los operadores de sucursales y los equipos de marketing realmente necesitan. Si usted es un MSP o un integrador de sistemas que implementa UniFi a escala, la gestión multisitio de Purple y sus capacidades de marca blanca la convierten en la solución superpuesta ideal para sus clientes. Para obtener documentación de configuración detallada, listas de IP de walled garden y guías de integración de la API, visite purple.ai. Gracias por escuchar.

📚 Parte de nuestra serie principal: Multi-Tenant WiFi

Un Captive Portal es la página de inicio de sesión que los visitantes ven antes de conectarse. En Ubiquiti UniFi, los puntos de acceso y el controlador de UniFi Network gestionan el WiFi; Purple gestiona ese portal y los datos de primera mano detrás de él, sin necesidad de reemplazar nada de su equipo UniFi.

Cómo funciona Ubiquiti UniFi con Purple guest WiFi

Purple es una solución en la nube que actúa como una capa superpuesta. Su controlador UniFi Network sigue gestionando el WiFi; Purple gestiona la experiencia de los visitantes a través de funciones que UniFi ya incluye.

  • Servidor de portal externo. En el Hotspot Manager de UniFi, usted redirige la página de destino a Purple en lugar de la página integrada de UniFi. Un dispositivo nuevo es redirigido a su página de bienvenida de Purple, el visitante inicia sesión y el control vuelve a UniFi.
  • Autorización del controlador. Purple autoriza a cada visitante comunicándose directamente con su controlador UniFi Network, utilizando su dirección pública y un inicio de sesión de controlador dedicado que usted cree para este propósito. Si el controlador no es accesible públicamente, un reenvío de puertos hace posible esa conexión.
  • Walled garden. Las reglas de preautorización de UniFi permiten que la página de bienvenida, y cualquier paso de pago o inicio de sesión social, se carguen antes de que el visitante haya iniciado sesión.

Para los visitantes recurrentes, la opción SecurePass (Passpoint) de UniFi añade una conexión segura y cifrada respaldada por RADIUS, de modo que los usuarios conocidos se vuelven a conectar sin tener que iniciar sesión de nuevo.

Ese es todo el modelo: UniFi mueve los paquetes y gestiona las frecuencias de radio, Purple gestiona el inicio de sesión y los datos. Debido a que funciona con autenticación web externa estándar y RADIUS, funciona de la misma manera en Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Cambium, Extreme y Fortinet. Purple es independiente del hardware por diseño.

Lo que necesita

  • Un controlador UniFi Network (en una Dream Machine, CloudKey o su propio servidor) con acceso de administrador.
  • Una sucursal en Purple con su página de bienvenida y el flujo de inicio de sesión configurados.
  • Un inicio de sesión dedicado para el controlador UniFi y la dirección pública de su controlador, para que Purple pueda autorizar a los visitantes.

Configúrelo con Purple

Los parámetros exactos, la dirección del servidor de portal externo, las opciones de página de destino en Hotspot Manager, los dominios de preautorización, la configuración de la sucursal (Venue Settings) que vincula a Purple con su controlador y la configuración opcional de SecurePass, están documentados paso a paso en la guía de soporte de Purple, con los valores precisos que debe ingresar.

Guía de configuración de Ubiquiti UniFi Network

Siga esa guía para realizar la configuración. Esta página explica cómo encajan las piezas, para que sepa qué hace cada paso.

Lo que obtiene

Una vez que los visitantes inician sesión a través de Purple, cada visita se convierte en datos de primera mano verificados, con un consentimiento consciente y explícito: quién visitó, con qué frecuencia y cómo contactarlos con su autorización. Esa es la diferencia entre un WiFi que conecta personas y un WiFi que construye una audiencia de marketing propia. Purple está alineado con el GDPR y cuenta con la certificación ISO 27001, con un tiempo de actividad del 99.999 % en más de 80,000 establecimientos activos.

Definiciones clave

Captive Portal

La página de inicio de sesión que un visitante ve antes de conectarse. Purple la aloja y la gestiona; UniFi redirige los dispositivos hacia ella.

La capa de experiencia del visitante que Purple añade sobre su WiFi de UniFi.

Servidor de portal externo

Una opción de configuración en UniFi que envía un dispositivo no autenticado a una página de inicio de sesión alojada externamente en lugar de la página integrada de UniFi.

Cómo el Hotspot Manager de UniFi redirige al visitante a la página de bienvenida de Purple.

Autorización del controlador

Purple se comunica con su controlador UniFi Network a través de su dirección pública, utilizando un inicio de sesión dedicado, para autorizar cada sesión de visitante.

Cómo Purple permite que un visitante que ha iniciado sesión acceda a internet en UniFi.

Walled garden

Una breve lista de direcciones permitidas a las que un dispositivo puede acceder antes de haber iniciado sesión.

Permite que la página de bienvenida, los pagos y el inicio de sesión social se carguen antes de la autenticación.

SecurePass (Passpoint)

Una conexión WiFi cifrada respaldada por RADIUS que permite a los usuarios conocidos volver a conectarse sin tener que iniciar sesión nuevamente.

Un nivel de seguridad opcional para visitantes recurrentes.