Saltar para o conteúdo principal

OpenWrt and guest WiFi: captive portal setup with Purple

Como o guest WiFi na nuvem da Purple funciona com dispositivos OpenWrt através de um captive portal externo padrão e RADIUS, e onde verificar a compatibilidade e encontrar os passos.

📖 2 min de leitura📝 389 palavras📚 5 definições principais

Ouça este guia

Ver transcrição do podcast
[0:00 - 1:00] Introdução e Contexto Bem-vindo ao Purple Technical Briefing. Eu sou o seu anfitrião e, nos próximos dez minutos, vamos dissecar a integração do firmware personalizado OpenWrt com o Purple WiFi. Se é um gestor de TI, um arquiteto de rede ou um CTO a implementar firmware personalizado em ambientes de hotelaria, retalho ou no setor público, este briefing é para si. Vamos ignorar a teoria académica e fornecer-lhe o manual exato para configurar o CoovaChilli, proteger redes de colaboradores com 802.1X e segmentar ambientes multi-inquilino utilizando Private Pre-Shared Keys. Porque é que isto importa? Porque a implementação de firmware personalizado como o OpenWrt oferece-lhe uma flexibilidade incrível e independência de hardware. Mas sem uma camada de controlo de acessos estruturada e baseada na identidade, essa flexibilidade torna-se uma vulnerabilidade de segurança. Precisa de capturar dados primários de forma segura, garantir a conformidade com o GDPR e segmentar o seu tráfego de forma fiável. Vamos entrar na análise técnica detalhada. [1:00 - 6:00] Análise Técnica Detalhada O núcleo da integração com o OpenWrt baseia-se no CoovaChilli. O CoovaChilli é o controlador de acessos open-source que intercepta o tráfego de clientes não autenticados e o redireciona para o Captive Portal da Purple. Quando um convidado se liga ao seu SSID aberto, o CoovaChilli atua como o guardião. Atribui um endereço IP através do seu próprio servidor DHCP interno, executado na interface tun0, e bloqueia todo o tráfego, exceto o que for explicitamente permitido no walled garden. Quando o convidado tenta navegar, o CoovaChilli intercepta o pedido HTTP e emite um redirecionamento para a splash page da Purple. É aqui que a configuração do walled garden é crítica. No seu ficheiro chilli.conf, deve definir o parâmetro HS_UAMDOMAINS. Esta é uma lista de domínios separados por vírgulas aos quais os convidados podem aceder antes de se autenticarem. Deve incluir splash.purple.ai, api.purple.ai e os vários domínios de CDN que utilizamos para fornecer os recursos do portal. Se faltar um domínio, o portal não irá carregar ou os botões de login social deixarão de funcionar. É simples assim. Assim que o convidado se autentica no portal da Purple, o servidor RADIUS em nuvem da Purple envia uma mensagem Access-Accept de volta para o CoovaChilli na porta UDP 1812. O CoovaChilli autoriza então o endereço MAC, abre as regras de firewall para essa sessão e começa a enviar dados de contabilidade na porta UDP 1813. A contabilidade não é opcional. É a forma como a Purple monitoriza a duração da sessão e a utilização de dados para o seu painel de analítica. Agora, vamos falar sobre o WiFi dos colaboradores. Não utiliza o CoovaChilli para os colaboradores. Para as redes de colaboradores, utiliza o hostapd com WPA2 ou WPA3. Esta é a autenticação 802.1X padrão. O ponto de acesso atua como o autenticador, encaminhando mensagens EAP para o seu servidor RADIUS. Para dispositivos corporativos, deve implementar EAP-TLS, que utiliza certificados digitais em vez de passwords. Isto elimina completamente o roubo de credenciais. Configura o hostapd.conf para apontar para o seu servidor RADIUS, e o servidor RADIUS dita a atribuição de VLAN para esse utilizador específico. Isto leva-nos a uma das funcionalidades mais poderosas nas implementações modernas de OpenWrt: Private Pre-Shared Keys, ou PPSK. Num ambiente multi-inquilino - por exemplo, uma propriedade construída para arrendamento ou um espaço de coworking - não quer ter cinquenta SSIDs diferentes a transmitir. Isso arruína a eficiência do seu tempo de antena. Em vez disso, transmite apenas um SSID. Quando um dispositivo se liga, o hostapd envia o endereço MAC para o servidor RADIUS. O servidor RADIUS responde com uma frase de passe específica e um VLAN ID específico para esse dispositivo, utilizando o atributo Tunnel-Password. Isto significa que o funcionário de retalho na loja A é colocado na VLAN 10, enquanto o participante do evento no salão principal é colocado na VLAN 30, todos ligando-se exatamente ao mesmo SSID. É elegante, é escalável e reforça o acesso com privilégios mínimos na periferia. [6:00 - 8:00] Recomendações de Implementação e Armadilhas Vamos discutir a implementação. Ao implementar OpenWrt com a Purple, o seu primeiro passo é sempre obter as suas credenciais RADIUS no portal da Purple. Precisa dos endereços IP RADIUS primário e secundário, do segredo partilhado e do URL do portal. Na sua configuração do OpenWrt, irá definir a interface da sua rede de convidados - normalmente eth1 ou wlan0 - e associar o CoovaChilli a ela. Certifique-se de que o HS_RADSECRET no seu chilli.conf corresponde exatamente ao que está no portal da Purple. Um único carácter incorreto causará falhas de autenticação silenciosas. A maior armadilha que vemos é a resolução de DNS antes da autenticação. O CoovaChilli intercepta os pedidos de DNS. Se a sua firewall a montante impedir o router OpenWrt de resolver DNS externos, o redirecionamento do Captive Portal irá falhar. Certifique-se de que o seu router OpenWrt tem acesso DNS sem restrições a resolvedores públicos como o Google ou o OpenDNS. Outro problema comum são os mecanismos de deteção de Captive Portal integrados no iOS e Android. Os dispositivos Apple acedem a captive.apple.com para verificar a conectividade à internet. Se colocar captive.apple.com na whitelist do seu walled garden, o dispositivo pensará que tem acesso à internet e não abrirá o assistente de rede cativa. Se pretender a abertura automática, mantenha os domínios da Apple fora do walled garden. [8:00 - 9:00] Perguntas e Respostas Rápidas Vamos a uma sessão rápida de perguntas e respostas. Pergunta um: Posso executar o CoovaChilli e o hostapd 802.1X no mesmo ponto de acesso OpenWrt? Sim. Associa o CoovaChilli à interface do seu SSID de convidados e configura o hostapd com 802.1X na interface do seu SSID de funcionários. Operam de forma independente. Pergunta dois: A Purple suporta a atribuição dinâmica de VLAN com OpenWrt? Sim. Os servidores RADIUS da Purple podem retornar atributos RADIUS padrão, incluindo Tunnel-Type, Tunnel-Medium-Type e Tunnel-Private-Group-ID, instruindo o OpenWrt a colocar o utilizador autenticado numa VLAN específica. Pergunta três: O que acontece se o router OpenWrt perder a ligação ao servidor RADIUS da Purple? O CoovaChilli irá falhar na autenticação de novas sessões. As sessões autorizadas existentes permanecerão ativas até que o tempo limite da sessão expire. Configure sempre o servidor RADIUS secundário da Purple para garantir uma elevada disponibilidade. [9:00 - 10:00] Resumo e Próximos Passos Em resumo: O OpenWrt fornece uma plataforma robusta e independente de hardware para WiFi empresarial. Ao integrar o CoovaChilli para acesso de convidados e o hostapd para funcionários seguros e PPSK multi-tenant, cria uma Rede Baseada em Identidade. A Purple simplifica a complexidade da infraestrutura RADIUS, fornecendo um portal gerido na nuvem que recolhe dados primários e garante a conformidade. O seu próximo passo é auditar as suas implementações atuais de firmware personalizado. Certifique-se de que os seus walled gardens estão totalmente preenchidos, verifique os seus intervalos de faturação RADIUS e comece a planear a sua migração de PSKs partilhados para a segmentação dinâmica de PPSK. Obrigado por ouvir o Purple Technical Briefing. Para saber mais sobre como a Purple pode proteger e monetizar o seu WiFi de convidados, visite purple.ai. Até à próxima.

O OpenWrt é um firmware de código aberto que corre numa vasta gama de routers e pontos de acesso. A Purple adiciona a camada de convidado por cima: o captive portal que os seus visitantes veem, a jornada de início de sessão e os dados primários que recolhe. Não substitui o seu hardware ou firmware.

Como o OpenWrt funciona com o guest WiFi da Purple

A Purple é uma sobreposição na nuvem e é hardware-agnostic. Se o seu dispositivo suportar um captive portal externo e RADIUS, pode correr o início de sessão de convidados da Purple. Dois mecanismos padrão fazem o trabalho.

  • Autenticação web externa. O dispositivo redireciona um novo dispositivo para a sua splash page da Purple em vez de conceder acesso imediatamente. O visitante inicia sessão e a página devolve o controlo.
  • RADIUS. O dispositivo verifica cada início de sessão com o serviço RADIUS da Purple nas portas padrão, 1812 para autenticação e 1813 para contabilidade. Os dados de contabilidade são o que alimenta a sua análise de visitantes.

Um walled garden, uma pequena lista de permissões de endereços que um dispositivo pode aceder antes de iniciar sessão, permite que a splash page carregue e que quaisquer passos de pagamento ou login social sejam concluídos.

Este é todo o modelo: o seu hardware move os pacotes, a Purple detém o início de sessão e os dados. Como corre em autenticação web padrão e RADIUS, funciona da mesma forma no Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Cambium, Extreme e Fortinet. A Purple é hardware-agnostic por design.

O que precisa

  • Um dispositivo OpenWrt que suporte um captive portal externo e RADIUS.
  • Um espaço Purple com a sua splash page e jornada de início de sessão configuradas.
  • Os seus detalhes de RADIUS da Purple e endereços de walled garden, a partir do seu painel de controlo Purple.

Configure com a Purple

Se o seu modelo exato é suportado e as configurações a utilizar são confirmadas na lista de hardware suportado da Purple. Verifique o seu dispositivo lá primeiro e, em seguida, siga o guia de configuração correspondente para os valores precisos a introduzir.

Hardware suportado pela Purple

Esta página explica como as peças se encaixam, para que saiba o que cada passo está a fazer.

O que obtém

Assim que os convidados iniciam sessão através da Purple, cada visita torna-se em dados primários verificados, com consentimento consciente e de escolha ativa: quem visitou, com que frequência e como os contactar com permissão. Essa é a diferença entre um WiFi que liga pessoas e um WiFi que constrói um público de marketing que lhe pertence. A Purple está alinhada com o GDPR e é certificada pela ISO 27001, com 99,999% de tempo de atividade em mais de 80.000 espaços ativos.

Definições Principais

Sobreposição na nuvem

A Purple assenta sobre o seu hardware existente. O equipamento continua a gerir o WiFi; a Purple gere o início de sessão de convidados e os dados, sem substituir nada.

Hardware-agnostic

A Purple funciona com qualquer ponto de acesso ou controlador que suporte um captive portal externo e RADIUS, em vez de estar vinculada a um único fornecedor.

Autenticação web externa

Um padrão onde o ponto de acesso redireciona um novo dispositivo para uma splash page externa para iniciar sessão, em vez de conceder o acesso diretamente. A Purple aloja essa splash page.

RADIUS

O protocolo que o hardware utiliza para verificar cada início de sessão e registar os dados da sessão com a Purple, nas portas padrão 1812 para autenticação e 1813 para contabilidade.

Walled garden

Uma pequena lista de permissões de endereços que um dispositivo pode aceder antes de iniciar sessão, para que a splash page e quaisquer passos de pagamento ou login social possam carregar.