Saltar al contenido principal

Captive Portal para Ubiquiti UniFi: configúrelo con el WiFi de invitados de Purple

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 lectura561 palabras5 definiciones clave

Video overview

Escucha esta guía

Ver transcripción del podcast
Captive Portal para Ubiquiti UniFi — Una sesión técnica de Purple [INTRODUCCIÓN Y CONTEXTO — aproximadamente 1 minuto] Le damos la bienvenida a la serie de sesiones técnicas de Purple. Soy su anfitrión, y hoy analizaremos los detalles de la implementación de un Captive Portal externo en la infraestructura de Ubiquiti UniFi, una de las plataformas de red más implementadas a nivel mundial en entornos de hospitalidad, retail y corporativos. Si usted es un gerente de TI, arquitecto de redes o integrador de sistemas que trabaja con UniFi Cloud Gateways, Dream Machines o la aplicación UniFi Network, este episodio es para usted. Analizaremos exactamente cómo funciona el mecanismo del portal externo a nivel técnico, cómo configurarlo correctamente, cuáles son los errores comunes y por qué superponer Purple sobre una implementación de UniFi es la decisión arquitectónica correcta para los establecimientos que necesitan más que una página de inicio básica. Comencemos. [ANÁLISIS TÉCNICO DETALLADO — aproximadamente 5 minutos] Primero, comprendamos qué sucede realmente cuando el dispositivo de un usuario invitado se conecta a un SSID de UniFi que tiene habilitado un Captive Portal. Cuando un dispositivo invitado se asocia con su SSID de invitado, el punto de acceso de UniFi le asigna una dirección IP a través de DHCP de forma 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 el navegador a la página de inicio del Captive Portal. Este es el mecanismo que activa la notificación "Iniciar sesión en WiFi" en 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 Hotspot Portal integrado de UniFi, la aplicación UniFi Network sirve directamente la página de inicio. Es funcional y rápido de configurar, pero es sumamente limitado. Obtiene 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 análisis de datos significativos más allá del recuento de sesiones. Cuando configura un servidor de portal externo (que es la configuración en la 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 aplicación es Purple. La URL que ingresa en el campo Servidor de portal externo se convierte en el destino de todas esas redirecciones 302. Este es el detalle técnico importante sobre esa URL de redirección. Cuando UniFi redirige a un usuario 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 a la que el cliente intentaba acceder y el nombre del SSID. Su portal externo - Purple en este contexto - captura esos parámetros, los utiliza para identificar el dispositivo que se está conectando, 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 la versión 9.1 de UniFi Network Application y 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 usuario invitado pasa de estar pendiente a autorizado. Se concede el acceso a Internet. Ahora hablemos del Walled Garden, al que UniFi llama Pre-Authorization Access. Esta es la lista de dominios y direcciones IP permitidos a los que los usuarios 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 de 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 los endpoints 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. Hay 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 del 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 determinar que no hay un 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 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 la API correspondientes estén accesibles. Para controladores autoalojados, esto es normalmente 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 admite métodos estándar 802.1X EAP. Configure el perfil RADIUS en Settings, Networks, RADIUS Servers y luego haga 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, que cifra el tráfico RADIUS entre el AP y el servidor de autenticación. Para implementaciones multisitio donde el tráfico RADIUS atraviesa la internet pública, se recomienda encarecidamente RADSEC. [RECOMENDACIONES DE IMPLEMENTACIÓN Y ERRORES COMUNES - aproximadamente 2 minutos] Permítame compartirle 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 la red. Su SSID de invitado debe estar en una VLAN dedicada, aislada de sus redes corporativas y de IoT. UniFi facilita esto: cree una red dedicada en Settings, Networks, asígnele un VLAN ID y asocie su SSID de invitado 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 de Let's Encrypt o uno comercial para este, y configure UniFi para que use ese certificado. Esto resuelve la mayoría de los problemas de redirección HTTPS. Tercero, configure su walled garden cuidadosamente y pruébelo. Las entradas mínimas son: su dominio del portal de Purple y sus rangos de IP, los dominios de detección del Captive Portal para iOS, Android y Windows, y cualquier dominio de proveedor de OAuth que esté utilizando. Realice pruebas con un dispositivo que nunca 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 versión 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 cuidadosamente la duración de la sesión. El vencimiento predeterminado de la sesión de invitados de UniFi puede ser tan corto como de 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 pasen correctamente en la llamada de autorización de la API. El error más común que veo es implementar 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 de múltiples sitios 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 estar 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 soportada a nivel de arquitectura. Los pasos clave son: configure su SSID de invitados con la opción 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 de UniFi tenga un certificado SSL válido y sea accesible desde los servidores de la API de Purple, y configure las duraciones de sesión adecuadas para su tipo de establecimiento. 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 analítica y lista para el cumplimiento normativo que se integra con su CRM, captura datos de primera fuente bajo el consentimiento de GDPR, y proporciona la analítica de visitas y tiempo de permanencia que los operadores de establecimientos y los equipos de marketing realmente necesitan. Si es un MSP o un integrador de sistemas que implementa UniFi a escala, la gestión de múltiples sitios de Purple y sus capacidades de marca blanca lo convierten en el complemento ideal 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 →

Un Captive Portal es la página de inicio de sesión que los invitados ven antes de conectarse. En Ubiquiti UniFi, los puntos de acceso y el controlador UniFi Network administran el WiFi; Purple administra ese portal y los datos de primera mano detrás de él, sin reemplazar ninguno de sus equipos UniFi.

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

Purple es una plataforma superpuesta en la nube. Su controlador UniFi Network sigue administrando el WiFi; Purple administra la experiencia del invitado 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 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 inicio, y cualquier paso de pago o inicio de sesión con redes sociales, se carguen antes de que un visitante haya iniciado sesión.

Para los visitantes recurrentes, la opción SecurePass (Passpoint) de UniFi agrega 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 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.
  • Un punto de acceso de Purple con su página de inicio y el recorrido de inicio de sesión configurados.
  • Un inicio de sesión de controlador UniFi dedicado 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 de Hotspot Manager, los dominios de preautorización, la configuración del punto de acceso 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 a ingresar.

Guía de configuración de Ubiquiti UniFi Network

Siga esa guía para 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 con consentimiento consciente: quién nos visitó, con qué frecuencia y cómo contactarlos con su permiso. Esa es la diferencia entre un WiFi que conecta personas y un WiFi que crea una audiencia de marketing que le pertenece. Purple está alineado con GDPR y cuenta con la certificación ISO 27001, con un tiempo de actividad del 99.999% en más de 80,000 ubicaciones activas.

Definiciones clave

Captive Portal

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

La capa de experiencia del invitado 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 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 inició sesión se conecte a Internet en UniFi.

Walled garden

Una lista corta de direcciones permitidas a las que un dispositivo puede acceder antes de iniciar sesión.

Permite que la página de inicio, los pagos y el inicio de sesión con redes sociales 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 de nuevo.

Un nivel seguro opcional para visitantes recurrentes.

¿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.