Saltar al contenido principal

OpenWrt y WiFi de invitados: configuración de captive portal con Purple

Cómo funciona el WiFi de invitados en la nube de Purple con dispositivos OpenWrt a través de un captive portal externo estándar y RADIUS, y dónde verificar la compatibilidad y encontrar los pasos.

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

Escucha esta guía

Ver transcripción del podcast
[0:00 - 1:00] Introducción y contexto Bienvenido al Resumen Técnico de Purple. Soy su anfitrión, y en los próximos diez minutos, vamos a analizar a fondo la integración del firmware personalizado de OpenWrt con Purple WiFi. Si usted es gerente de TI, arquitecto de red o un CTO que implementa firmware personalizado en entornos hoteleros, de retail o del sector público, este resumen es para usted. Dejaremos de lado la teoría académica y le daremos el manual exacto para configurar CoovaChilli, asegurar las redes del personal con 802.1X y segmentar entornos multi-tenant mediante el uso de Private Pre-Shared Keys. ¿Por qué es esto importante? Porque implementar un firmware personalizado como OpenWrt le brinda una increíble flexibilidad e independencia de hardware. Pero sin una capa de control de acceso estructurada y basada en la identidad, esa flexibilidad se convierte en una vulnerabilidad de seguridad. Necesita capturar datos de origen de forma segura, garantizar el cumplimiento de GDPR y segmentar su tráfico de manera confiable. Comencemos con el análisis técnico profundo. [1:00 - 6:00] Análisis técnico profundo El núcleo de la integración con OpenWrt se basa en CoovaChilli. CoovaChilli es el controlador de acceso de código abierto que intercepta el tráfico de clientes no autenticados y lo redirige al Captive Portal de Purple. Cuando un invitado se conecta a su SSID abierta, CoovaChilli actúa como el guardián. Asigna una dirección IP a través de su propio servidor DHCP interno, que se ejecuta en la interfaz tun0, y bloquea todo el tráfico excepto el que usted permita explícitamente en el walled garden (jardín vallado). Cuando el invitado intenta navegar, CoovaChilli intercepta la solicitud HTTP y emite una redirección a la página de bienvenida de Purple. Aquí es donde la configuración del walled garden es fundamental. En su archivo chilli.conf, debe definir el parámetro HS_UAMDOMAINS. Esta es una lista de dominios separados por comas a los que los invitados pueden acceder antes de autorizarse. Debe incluir splash.purple.ai, api.purple.ai y los diversos dominios de CDN que utilizamos para alojar los elementos del portal. Si olvida un dominio, el portal no se cargará o los botones de inicio de sesión social dejarán de funcionar. Es así de simple. Una vez que el invitado se autoriza en el portal de Purple, el servidor RADIUS en la nube de Purple envía un mensaje Access-Accept de vuelta a CoovaChilli en el puerto UDP 1812. CoovaChilli entonces autoriza la dirección MAC, abre las reglas del firewall para esa sesión y comienza a enviar datos de contabilidad (accounting) en el puerto UDP 1813. El registro de contabilidad no es opcional. Es la forma en que Purple realiza el seguimiento de la duración de la sesión y el uso de datos para su panel de analíticas. Ahora hablemos del WiFi para el personal. No se utiliza CoovaChilli para el personal. Para las redes del personal, se utiliza hostapd con WPA2-Enterprise o WPA3-Enterprise. Esta es la autenticación estándar 802.1X. El punto de acceso actúa como el autenticador, reenviando los mensajes EAP a su servidor RADIUS. Para dispositivos corporativos, debería implementar EAP-TLS, el cual utiliza certificados digitales en lugar de contraseñas. Esto elimina por completo el robo de credenciales. Configure hostapd.conf para apuntar a su servidor RADIUS, y el servidor RADIUS dictará la asignación de VLAN para ese usuario específico. Esto nos lleva a una de las funciones más potentes en las implementaciones modernas de OpenWrt: Claves Privadas Precompartidas, o PPSK. En un entorno multi-inquilino - por ejemplo, una propiedad de alquiler residencial o un espacio de coworking - no querrás tener cincuenta SSIDs diferentes transmitiendo. Eso arruina la eficiencia de tu tiempo de transmisión. En su lugar, transmites un solo SSID. Cuando un dispositivo se conecta, hostapd envía la dirección MAC al servidor RADIUS. El servidor RADIUS responde con una contraseña específica y un VLAN ID específico para ese dispositivo, utilizando el atributo Tunnel-Password. Esto significa que el personal de tienda en el local A se asigna a la VLAN 10, mientras que el asistente al evento en la sala principal se asigna a la VLAN 30, todos conectándose exactamente al mismo SSID. Es elegante, escala y aplica el acceso de menor privilegio en el borde. [6:00 - 8:00] Recomendaciones de Implementación y Errores Comunes Hablemos de la implementación. Al implementar OpenWrt con Purple, el primer paso es siempre recuperar tus credenciales RADIUS desde el portal de Purple. Necesitas las direcciones IP de RADIUS primaria y secundaria, el secreto compartido y la URL del portal. En tu configuración de OpenWrt, definirás tu interfaz de red de invitados - típicamente eth1 o wlan0 - y vincularás CoovaChilli a ella. Asegúrate de que el HS_RADSECRET en tu chilli.conf coincida exactamente con lo que está en el portal de Purple. Una diferencia de un solo carácter causará fallas de autenticación silenciosas. El mayor error que vemos es la resolución de DNS antes de la autenticación. CoovaChilli intercepta las solicitudes de DNS. Si tu firewall ascendente impide que el router OpenWrt resuelva DNS externos, la redirección del Captive Portal fallará. Asegúrate de que tu router OpenWrt tenga acceso DNS sin restricciones a resolutores públicos como Google u OpenDNS. Otro problema común son los mecanismos de detección de Captive Portal integrados en iOS y Android. Los dispositivos Apple se conectan a captive.apple.com para verificar la conectividad a internet. Si agregas captive.apple.com a la lista de permitidos en tu walled garden, el dispositivo pensará que tiene acceso a internet y no mostrará el asistente de red cautiva. Si deseas que aparezca la ventana emergente automática, mantén los dominios de Apple fuera del walled garden. [8:00 - 9:00] Preguntas y Respuestas Rápidas Hagamos una sección de preguntas y respuestas rápidas. Pregunta uno: ¿Puedo ejecutar CoovaChilli y hostapd 802.1X en el mismo punto de acceso OpenWrt? Sí. Vinculas CoovaChilli a la interfaz de tu SSID de invitados y configuras hostapd con 802.1X en la interfaz de tu SSID de personal. Funcionan de manera independiente. Pregunta dos: ¿Soporta Purple la asignación dinámica de VLAN con OpenWrt? Sí. Los servidores RADIUS de Purple pueden devolver atributos RADIUS estándar, incluyendo Tunnel-Type, Tunnel-Medium-Type y Tunnel-Private-Group-ID, indicando a OpenWrt que asigne al usuario autenticado a una VLAN específica.Pregunta tres: ¿Qué sucede si el router OpenWrt pierde la conexión con el servidor RADIUS de Purple? CoovaChilli no podrá autenticar nuevas sesiones. Las sesiones autorizadas existentes permanecerán activas hasta que expire su límite de tiempo de sesión. Configure siempre el servidor RADIUS secundario de Purple para garantizar una alta disponibilidad. [9:00 - 10:00] Resumen y próximos pasos En resumen: OpenWrt ofrece una plataforma robusta e independiente del hardware para WiFi empresarial. Al integrar CoovaChilli para el acceso de invitados y hostapd para el personal seguro y PPSK multiinquilino, usted construye una red basada en la identidad. Purple simplifica la complejidad de la infraestructura RADIUS, proporcionando un portal administrado en la nube que recopila datos de primera mano y garantiza el cumplimiento. El siguiente paso es auditar sus implementaciones actuales de firmware personalizado. Asegúrese de que sus walled gardens estén completamente configurados, verifique sus intervalos de contabilidad RADIUS y comience a planificar su migración de PSK compartidas a la segmentación dinámica de PPSK. Gracias por escuchar el Purple Technical Briefing. Para obtener más información sobre cómo Purple puede proteger y monetizar su WiFi de invitados, visite purple.ai. Hasta la próxima.

OpenWrt es un firmware de código abierto que se ejecuta en una amplia gama de routers y puntos de acceso. Purple añade la capa de invitados encima: el captive portal que ven sus visitantes, el proceso de inicio de sesión y los datos de primera mano que usted recopila. No reemplaza su hardware ni su firmware.

Cómo funciona OpenWrt con el WiFi de invitados de Purple

Purple es una superposición en la nube y es independiente del hardware. Si su dispositivo admite un captive portal externo y RADIUS, puede ejecutar el inicio de sesión de invitados de Purple. Dos mecanismos estándar hacen el trabajo.

  • Autenticación web externa. El dispositivo redirige un nuevo dispositivo a su página de inicio de Purple en lugar de otorgar acceso de inmediato. El visitante inicia sesión y la página le devuelve el control.
  • RADIUS. El dispositivo verifica cada inicio de sesión con el servicio RADIUS de Purple en los puertos estándar, 1812 para autenticación y 1813 para contabilidad. Los datos de contabilidad son lo que impulsa sus análisis de visitantes.

Un walled garden, una lista corta de direcciones permitidas a las que un dispositivo puede acceder antes de iniciar sesión, permite que se cargue la página de inicio y que se completen los pasos de pago o inicio de sesión con redes sociales.

Ese es todo el modelo: su hardware mueve los paquetes, Purple es dueño del inicio de sesión y de los datos. Debido a que se ejecuta en autenticación web 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 dispositivo OpenWrt que admita un captive portal externo y RADIUS.
  • Un venue de Purple con su página de inicio y el proceso de inicio de sesión configurados.
  • Sus detalles de RADIUS de Purple y las direcciones de walled garden, desde su panel de control de Purple.

Configúrelo con Purple

Si su modelo exacto es compatible y los ajustes que debe usar se confirman en la lista de hardware compatible de Purple. Verifique su dispositivo allí primero, luego siga la guía de configuración correspondiente para conocer los valores precisos que debe ingresar.

Hardware compatible con Purple

Esta página explica cómo encajan las piezas, para que sepa lo que 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 consciente: quién la visitó, con qué frecuencia y cómo localizarlos con su permiso. Esa es la diferencia entre un WiFi que conecta a las personas y un WiFi que crea una audiencia de marketing de su propiedad. 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 venues activos.

Definiciones clave

Superposición en la nube

Purple se ubica encima de su hardware existente. El equipo sigue ejecutando el WiFi; Purple ejecuta el inicio de sesión de invitados y los datos, sin reemplazar nada.

Independiente del hardware

Purple funciona con cualquier punto de acceso o controlador que admita un captive portal externo y RADIUS, en lugar de estar vinculado a un solo proveedor.

Autenticación web externa

Un estándar donde el punto de acceso redirige un nuevo dispositivo a una página de inicio externa para iniciar sesión, en lugar de otorgar el acceso por sí mismo. Purple aloja esa página de inicio.

RADIUS

El protocolo que utiliza el hardware para verificar cada inicio de sesión y registrar los datos de la sesión con Purple, en los puertos estándar 1812 para autenticación y 1813 para contabilidad.

Walled garden

Una lista corta de direcciones permitidas a las que un dispositivo puede acceder antes de iniciar sesión, para que se puedan cargar la página de inicio y los pasos de pago o inicio de sesión con redes sociales.