Saltar para o conteúdo principal

OpenWrt e WiFi de convidados: configuração do captive portal com a Purple

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

Por Tom HackettPublicado
📖 2 min de leitura463 palavras5 definições principais

Video overview

Ouça este guia

Ver transcrição do podcast
[0:00 - 1:00] Introdução e Contexto Bem-vindo ao Briefing Técnico da Purple. Sou o vosso 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 acesso estruturada e orientada pela identidade, essa flexibilidade torna-se um risco 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 aprofundada. [1:00 - 6:00] Análise Técnica Aprofundada O núcleo da integração com o OpenWrt baseia-se no CoovaChilli. O CoovaChilli é o controlador de acesso 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, em execução na interface tun0, e bloqueia todo o tráfego, exceto o que explicitamente permitir 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 separada por vírgulas aos quais os convidados podem aceder antes de se autorizarem. Deve incluir splash.purple.ai, api.purple.ai e os vários domínios CDN que utilizamos para fornecer os elementos do portal. Se falhar um domínio, o portal não irá carregar ou os botões de início de sessão social não irão funcionar. É tão simples quanto isto. Assim que o convidado se autoriza no portal da Purple, o servidor RADIUS na 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 redes de colaboradores, utiliza o hostapd com WPA2-Enterprise ou WPA3-Enterprise. Esta é a autenticação padrão 802.1X. 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 palavras-passe. 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 traz-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 build-to-rent ou um espaço de coworking - não deseja 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, ligando-se todos exatamente ao mesmo SSID. É elegante, é dimensionável e impõe o acesso com privilégios mínimos na periferia. [6:00 - 8:00] Recomendações de Implementação e Erros Comuns Vamos discutir a implementação. Ao implementar o OpenWrt com a Purple, o seu primeiro passo é sempre obter as suas credenciais RADIUS a partir do 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 sua interface de 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. Uma divergência de um único caráter causará falhas de autenticação silenciosas. O maior erro comum que vemos é a resolução de DNS pré-autenticação. O CoovaChilli interpeta os pedidos de DNS. Se a sua firewall a montante impedir o router OpenWrt de resolver o DNS externo, 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 o captive.apple.com na lista de permissões do seu walled garden, o dispositivo pensará que tem acesso à Internet e não apresentará o assistente de rede cativa. Se pretender a janela pop-up 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 à sua interface de SSID de convidados e configura o hostapd com 802.1X na sua interface de SSID de funcionários. Funcionam 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 não conseguirá autenticar novas sessões. As sessões autorizadas existentes permanecerão ativas até que o respetivo limite de tempo de 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 e PPSK multi-tenant seguros, 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 consiste em auditar as suas implementações atuais de firmware personalizado. Garanta que os seus walled gardens estão totalmente preenchidos, verifique os seus intervalos de monitorização de utilização (accounting) RADIUS e comece a planear a sua migração de PSKs partilhados para a segmentação dinâmica de PPSK. Obrigado por ouvir o Briefing Técnico da Purple. Para saber mais sobre como a Purple pode proteger e monetizar o seu WiFi de convidados, visite purple.ai. Até à próxima.

Parte da nossa série principal: Guia do Captive Portal →

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 convidados 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 WiFi de convidados da Purple

A Purple é uma sobreposição na cloud e é agnóstica em termos de hardware. 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 realizam o trabalho.

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

Um walled garden, uma lista curta de permissões de endereços que um dispositivo pode aceder antes de iniciar sessão, permite que a página splash carregue e que quaisquer passos de pagamento ou início de sessão 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 externa padrão e RADIUS, funciona da mesma forma no Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Cambium, Extreme e Fortinet. A Purple é agnóstica em termos de hardware por design.

O que precisa

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

Configurar com a Purple

Se o seu modelo exato é suportado, e as definições a utilizar, são confirmados na lista de hardware suportado da Purple. Verifique primeiro o seu dispositivo aí 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 ganha

Assim que os convidados iniciam sessão através da Purple, cada visita torna-se em dados primários verificados e de consentimento consciente: 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 uma audiência de marketing que lhe pertence. A Purple está alinhada com o GDPR e tem certificação ISO 27001, com 99,999% de uptime em mais de 80.000 locais ativos.

Definições Principais

Sobreposição na cloud

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

Agnóstico em termos de hardware

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

Autenticação web externa

Um padrão onde o ponto de acesso redireciona um novo dispositivo para uma página splash externa para iniciar sessão, em vez de conceder o acesso por si próprio. A Purple aloja essa página splash.

RADIUS

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

Walled garden

Uma lista curta de permissões de endereços que um dispositivo pode aceder antes de iniciar sessão, para que a página splash e quaisquer passos de pagamento ou início de sessão social possam carregar.

Tem dúvidas sobre a sua configuração específica?

A nossa equipa trabalha com operadores de espaços, gestores de TI e engenheiros de rede em 80.000 espaços. Agende uma chamada de 20 minutos e mostraremos como outros profissionais na sua área o resolveram.