Saltar al contenido principal

Guía de configuración de Captive Portal de UniFi

Cómo agregar 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.

Publicado Actualizado
📖 2 min de lectura562 palabras5 definiciones clave

Video overview

Escucha esta guía

Ver transcripción del podcast
Captive Portal para Ubiquiti UniFi - Una sesión informativa técnica de Purple [INTRODUCCIÓN Y CONTEXTO - aproximadamente 1 minuto] Le damos la bienvenida a la serie de sesiones informativas técnicas de Purple. Soy su anfitrión, y hoy profundizaremos en los detalles específicos de la implementación de un Captive Portal externo en la infraestructura de Ubiquiti UniFi, una de las plataformas de red más desplegadas a nivel mundial en los sectores de hotelería, retail y entornos corporativos. Si usted es gerente de TI, arquitecto de redes o integrador de sistemas que trabaja con UniFi Cloud Gateways, Dream Machines o la UniFi Network Application, este episodio es para usted. Analizaremos exactamente cómo funciona el mecanismo del portal externo bajo el cofre, cómo configurarlo correctamente, cuáles son los errores comunes y por qué superponer Purple sobre un despliegue de UniFi es la decisión de arquitectura adecuada para los establecimientos que necesitan más que una página de inicio de sesión básica. Comencemos. [ANÁLISIS TÉCNICO DETALLADO - aproximadamente 5 minutos] Primero, entendamos qué sucede realmente cuando un dispositivo de invitado se conecta a un SSID de UniFi que tiene un Captive Portal habilitado. Cuando un dispositivo de invitado se asocia a su SSID de invitado, el Access Point de UniFi le asigna una dirección IP a través de DHCP de manera normal. Pero el dispositivo se coloca de inmediato en lo que UniFi denomina un estado "pendiente". En este estado, el proceso DNSmasq integrado del AP intercepta cada consulta DNS que realiza el dispositivo, independientemente del servidor DNS que el dispositivo crea que está utilizando. El AP redirige todo el tráfico DNS hacia sí mismo. Simultáneamente, el AP ejecuta un redireccionador HTTP ligero en el puerto 80. En el momento en que el navegador del invitado realiza cualquier solicitud HTTP - y esta es la palabra clave, HTTP, no HTTPS - el redireccionador devuelve una redirección 302, enviando al navegador a la página de inicio de sesión del Captive Portal. Este es el mecanismo que activa la notificación "Iniciar sesión en WiFi" en los dispositivos iOS y Android. Ahora, aquí es donde la distinción entre el portal integrado y el portal externo se vuelve crítica. Con el UniFi Hotspot Portal integrado, la página de inicio de sesión se sirve directamente desde la UniFi Network Application. Es funcional y se configura rápidamente, pero está muy limitada. Se obtiene una autenticación básica por contraseña, cupones y pagos con Stripe. No hay captura de correo electrónico, ni inicio de sesión social, ni gestión de consentimiento de GDPR, ni integración con CRM, ni analíticas significativas más allá del recuento de sesiones. Cuando configura un Servidor de Portal Externo - que es el ajuste en el que nos enfocamos hoy - le está indicando al controlador de UniFi que redirija a los invitados a una aplicación web completamente independiente. En nuestro caso, esa es Purple. La URL que ingresa en el campo del Servidor de Portal Externo se convierte en el destino de todas esas redirecciones 302. Aquí está el detalle técnico importante sobre esa URL de redireccionamiento. Cuando UniFi redirecciona 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 splash page adecuada, gestiona la autenticación y luego realiza una llamada de API de vuelta a la UniFi Network Application para autorizar esa dirección MAC. Esa llamada de API es el saludo de conexión crucial. A partir de UniFi Network Application 9.1 y versiones posteriores, existe una API REST oficial con autenticación basada en claves adecuada. 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 estar pendiente a estar autorizado. Se concede el acceso a Internet. Ahora hablemos del Walled Garden, que UniFi denomina Pre-Authorization Access. Esta es la lista blanca de dominios y direcciones IP a los que los invitados pueden acceder antes de haberse autenticado. Es esencial, y es una de las fuentes más comunes de configuración incorrecta. Como mínimo, su walled garden debe incluir el nombre de dominio completamente calificado de su portal de Purple y las direcciones IP o rangos CIDR a los que apunta la infraestructura de Purple. Si utiliza el inicio de sesión social - 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 obtienen 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 de 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 en el navegador que impedirán que se cargue el portal. 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 local, debe ser accesible desde la infraestructura de Purple para que las llamadas de autorización de la API tengan éxito. Si su controlador está en una red privada detrás de NAT, deberá asegurarse de que los puertos de la API correspondientes estén accesibles. Para controladores locales, este es típicamente 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 de invitado abierto - el servidor RADIUS integrado de UniFi es compatible con los métodos estándar 802.1X EAP. Debe configurar el perfil RADIUS en Settings, Networks, RADIUS Servers, y luego hacer referencia a ese perfil en la configuración de su SSID. UniFi también es compatible con RADIUS sobre TLS, conocido como RADSEC, a partir de la versión 8.4, el cual cifra el tráfico RADIUS entre el AP y el servidor de autenticación. Para implementaciones en múltiples sitios 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 práctica para la implementación que revisaría con cualquier cliente que vaya a implementar Purple en UniFi. Primero, la segmentación de red. Su SSID de invitado debe estar en una VLAN dedicada, aislada de sus redes corporativas y de IoT. UniFi facilita este proceso: cree una red dedicada en Settings, Networks, asígnele un VLAN ID y asocie su SSID de invitado a esa red. Habilite la opción de aislamiento de clientes (client isolation) en la red de invitados para evitar el tráfico entre dispositivos de invitados. Segundo, el controlador debe tener un FQDN válido y un certificado SSL de confianza. No dependa de la dirección IP. Utilice un nombre de dominio adecuado, obtenga un certificado Let's Encrypt o uno comercial para este, y configure UniFi para usar ese certificado. Esto resuelve la mayoría de los problemas de redireccionamiento HTTPS. Tercero, configure su walled garden con cuidado y pruébelo. Las entradas mínimas son: el dominio de su Captive 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 - la caché de DNS y el estado de la red pueden ocultar fallas en el walled garden durante las pruebas. Cuarto, para la integración de la API, utilice 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 está utilizando Network Application 9.1 o posterior, emplee 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 vencimiento 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 hospedarse varias noches, configure las duraciones de sesión adecuadas en los ajustes del portal de Purple y asegúrese de que esas duraciones se transmitan 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 accesible públicamente. 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 entrar en producción. [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 múltiples sitios de UniFi desde una sola cuenta de Purple? Sí. La arquitectura multisitio de Purple está diseñada exactamente para esto. Cada lugar se configura como un sitio independiente en Purple, mapeado al sitio de UniFi correspondiente. ¿Necesito abrir puertos de firewall en la puerta de enlace 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, que 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 sólida y bien respaldada desde el punto de vista de la arquitectura. Los pasos clave son: configure su SSID de invitado con la opción de External Portal Server apuntando a la URL de su portal de Purple, cree un walled garden integral que cubra la infraestructura de Purple y cualquier proveedor de OAuth que esté utilizando, asegúrese de que su controlador UniFi tenga un certificado SSL válido y sea accesible desde los servidores API de Purple, y configure las duraciones de sesión adecuadas para su tipo de establecimiento. El caso de negocio es sencillo. El portal UniFi integrado le ofrece una página de bienvenida. Purple le ofrece una plataforma de experiencia de invitado impulsada por análisis y lista para el cumplimiento normativo que se integra con su CRM, captura datos de primera mano bajo el consentimiento de GDPR y proporciona los análisis de afluencia y tiempo de permanencia que los operadores de establecimientos 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 lo convierten en la plataforma complementaria adecuada para sus clientes. Para obtener documentación detallada sobre la configuración, listas de IP de walled garden y guías de integración de API, visite purple.ai. Gracias por escuchar.

Parte de nuestra serie principal: Guía de Captive Portal →

UniFi Network Hotspot ArchitectUbiquiti UniFi OS & Network Application 8.x

Ubiquiti UniFi captive portal and guest WiFi configurator

Generate UniFi Network Hotspot Manager settings, configure pre-authorization walled gardens, calculate guest VLAN subnet sizing, and validate cloud RADIUS accounting for seamless Purple deployment.

Target controller
UniFi Dream Machine Pro / SE
UniFi OS 3.x / Network 8.x
Native Hotspot Manager (External Portal Server)
Walled garden domains
9 FQDN rules
OS captive probe safe
Recommended subnet
/23 (509 IPs)
73% peak pool load
AAA interim accounting
300s
RFC 2866 accounting sync

Internal routing engine handles guest captive redirection with native gateway isolation.

Local IP or internal hostname used for controller API communication.

Redirection security parameters
UniFi Network Hotspot Manager Configuration Payload
{
  "hotspot_portal": {
    "authentication": "external_portal_server",
    "server_ip_or_hostname": "auth.purplewifi.net",
    "port": 443,
    "use_secure_portal": true,
    "redirect_mode": "original_url"
  },
  "controller_authorisation_profile": {
    "target_model": "UDM-Pro / UDM-SE / UDM-Enterprise",
    "controller_management_host": "192.168.1.1",
    "controller_api_port": 8843,
    "enable_https": true
  },
  "pre_authorization_allowed_hostnames": [
    "auth.purplewifi.net",
    "securelogin.purplewifi.net",
    "api.purplewifi.net",
    "cdn.purplewifi.net",
    "fonts.googleapis.com",
    "fonts.gstatic.com",
    "accounts.google.com",
    "graph.facebook.com",
    "linkedin.com"
  ],
  "radius_profile": {
    "profile_name": "Purple-Guest-RADIUS",
    "auth_server": "10.0.10.15",
    "auth_port": 1812,
    "acct_server": "10.0.10.15",
    "acct_port": 1813,
    "interim_update_interval_sec": 300,
    "dynamic_vlan_rfc3580": true,
    "default_guest_vlan": 20
  },
  "wireless_guest_profile": {
    "ssid": "Guest-WiFi",
    "client_isolation": true,
    "dhcp_recommended_lease_seconds": 7200,
    "recommended_cidr_scope": "/23",
    "per_client_bandwidth_limit_down_kbps": 10240,
    "per_client_bandwidth_limit_up_kbps": 3072
  }
}
Looking to deploy guest WiFi across enterprise UniFi hardware?
Review our architecture framework or talk directly to our wireless solutions engineering team.
Explore Captive Portal Guide
Useful? Link to this tool

Un Captive Portal es la página de inicio de sesión que ven los invitados antes de conectarse. En Ubiquiti UniFi, los puntos de acceso y el controlador de UniFi Network ejecutan el WiFi; Purple ejecuta ese portal y los datos de primera mano que lo respaldan, sin reemplazar nada de su equipo UniFi.

Cómo funciona Ubiquiti UniFi con el WiFi para invitados de Purple

Purple es una plataforma superpuesta en la nube. Su controlador UniFi Network sigue ejecutando el WiFi; Purple gestiona la experiencia de los invitados a través de las funciones que UniFi ya tiene.

  • Servidor de portal externo. En el Hotspot Manager de UniFi, usted dirige la página de destino a Purple en lugar de a la página integrada de UniFi. Un nuevo dispositivo es redirigido a su página de inicio de Purple, el visitante inicia sesión y el control vuelve a UniFi.
  • Autorización del controlador. Purple autoriza a cada invitado 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 crea para tal fin. Si no se puede acceder al controlador 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 inicio, 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.

Este es el modelo completo: UniFi mueve los paquetes y gestiona los radios, Purple es dueño del inicio de sesión y de los datos. Debido a que se ejecuta en 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 agnóstico al 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 de Purple con su página de inicio y el flujo de inicio de sesión configurados.
  • Un inicio de sesión dedicado al controlador UniFi y la dirección pública de su controlador, para que Purple pueda autorizar a los invitados.

Configúrelo con Purple

La configuración exacta, la dirección del servidor del portal externo, las opciones de la página de destino del Hotspot Manager, los dominios de preautorización, la configuración de la sucursal 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 invitados inician sesión a través de Purple, cada visita se convierte en datos de primera mano verificados y con consentimiento explícito: quién los visitó, con qué frecuencia y cómo comunicarse con ellos con su permiso. Esa es la diferencia entre un WiFi que conecta personas y un WiFi que construye una audiencia de marketing propia. Purple cumple 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 sucursales activas.

Definiciones clave

Captive Portal

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

La capa de experiencia de invitados que Purple agrega sobre su WiFi de UniFi.

Servidor de portal externo

Una configuración de 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 entrega el invitado a la página de inicio 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 invitado.

Cómo Purple permite que un invitado que ha iniciado sesión se conecte a UniFi.

Walled garden

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

Permite que la página de inicio, 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 iniciar sesión de nuevo.

Un nivel de seguridad opcional para visitantes recurrentes.

Preguntas frecuentes

¿Cómo se integra Ubiquiti UniFi con un Captive Portal externo?

El Hotspot Manager de UniFi Network permite a los administradores delegar la autenticación de invitados a un Servidor de Portal Externo. Cuando un visitante no autenticado se conecta al SSID de invitados, la puerta de enlace de UniFi intercepta el tráfico HTTP inicial y redirige el navegador del cliente a Purple en auth.purplewifi.net. Una vez que el visitante completa la autenticación, Purple llama a la API del controlador UniFi para autorizar la dirección MAC del cliente para el acceso a internet.

¿Qué puertos deben estar abiertos entre el controlador UniFi y el Captive Portal?

Para la integración con un Captive Portal externo o en la nube, el controlador UniFi Network debe estar localizable para llamadas de API de autorización en el puerto TCP 8843 (o puerto TCP 8443 en instalaciones heredadas). Para un redireccionamiento seguro del navegador del invitado, asegúrese de que se permitan las conexiones HTTPS salientes en el puerto TCP 443 y DNS en el puerto UDP 53 dentro del perfil de firewall de pre-autorización de invitados.

¿Por qué nunca se deben incluir en la lista de permitidos los hosts de sondeo cautivo del sistema operativo?

Los sistemas operativos, incluidos iOS, Android, macOS y Windows, sondean endpoints específicos como captive.apple.com y connectivitycheck.gstatic.com para detectar redes cautivas. Si estos nombres de host de sondeo se colocan en el Acceso de Pre-Autorización de UniFi, los dispositivos reciben una respuesta HTTP 200 no interceptada, determinan que la conectividad a internet está activa y suprimen la ventana modal automática de inicio de sesión del navegador.

¿Qué reglas de acceso de pre-autorización se requieren para Purple en UniFi?

El Hotspot Manager de UniFi requiere incluir en la lista de permitidos los dominios de autenticación y recursos de Purple en el Acceso de Pre-Autorización antes del inicio de sesión de los invitados. Esto incluye auth.purplewifi.net, securelogin.purplewifi.net, api.purplewifi.net y cdn.purplewifi.net. Si se habilitan el inicio de sesión social o los niveles de pago, también se deben incluir en la lista de permitidos los endpoints correspondientes de OAuth y pasarelas de pago.

¿Cómo mejora la contabilidad RADIUS la gestión de WiFi de invitados en UniFi?

La configuración de un perfil RADIUS que apunte a Purple en los puertos UDP 1812 (autenticación) y 1813 (contabilidad) permite el seguimiento de sesiones en tiempo real. Establecer el intervalo de actualización de contabilidad intermedia en 300 segundos permite que los puntos de acceso UniFi informen periódicamente sobre el tiempo de aire de los invitados, los bytes transmitidos y la duración de la permanencia a la plataforma de analítica de Purple sin sobrecargar los recursos del controlador.

¿Qué tamaño de subred y duración de concesión DHCP se recomiendan para las redes de invitados?

Las redes de invitados experimentan una alta rotación y renovación de concesiones. Los sitios de alto tráfico deben configurar al menos una subred /22 (1,021 direcciones IP utilizables) y reducir el tiempo de concesión DHCP a 2 horas (7,200 segundos). Esto evita el agotamiento del grupo de direcciones durante las horas pico de rotación de visitantes, mientras que el aislamiento de dispositivos cliente (Client Device Isolation) evita la comunicación lateral no autorizada entre dispositivos.

¿Tiene preguntas sobre su configuración específica?

Nuestro equipo trabaja con gestores de espacios, responsables de TI e ingenieros de redes en 80 000 establecimientos. Reserve una llamada de 20 minutos y le mostraremos cómo lo resolvieron otros profesionales como usted.