Saltar para o conteúdo principal

Captive Portal para Cisco Meraki

Um guia de referência técnica de nível intermédio e autoritário para integrar pontos de acesso Cisco Meraki MR com o Captive Portal na nuvem da Purple. Abrange configurações passo a passo do Meraki Dashboard, definições de servidor RADIUS (portas 1812/1813), exceções de domínio wildcard de walled garden e parâmetros de limite de tempo de sessão para implementações de WiFi de convidados de alto desempenho.

📖 8 min de leitura📝 1,892 palavras🔧 2 exemplos práticos3 perguntas de prática📚 8 definições principais

Ouça este guia

Ver transcrição do podcast
Bem-vindo à Série de Briefings Técnicos da Purple. Sou o vosso anfitrião e hoje vamos abordar algo que surge em quase todas as implementações de WiFi de convidados empresariais em que trabalhamos: configurar um Captive Portal em pontos de acesso Cisco Meraki MR e, especificamente, como integrar isso com a plataforma na nuvem da Purple utilizando autenticação RADIUS. Quer seja um MSP a integrar um novo cliente de hotelaria ou um arquiteto de rede interno numa cadeia de retalho, este episódio dar-lhe-á os passos de configuração precisos e a lógica por trás de cada um deles. Vamos contextualizar. Tem um espaço — pode ser um hotel, um centro de conferências, um estádio ou um parque de retalho — equipado com pontos de acesso Cisco Meraki MR geridos através do Meraki Dashboard. O objetivo é implementar uma experiência de WiFi de convidados personalizada que recolha dados primários (first-party data), imponha a aceitação dos termos de serviço e envie análises para uma plataforma de marketing. É exatamente para isso que a Purple foi criada, e a Meraki é uma das nossas implementações de hardware mais comuns a nível global. Agora, o ponto arquitetónico fundamental a compreender antes de alterar qualquer definição é este: na Cisco Meraki, a autenticação RADIUS para uma splash page não é processada localmente pelo ponto de acesso. O RADIUS Access-Request provém da nuvem da Meraki — da infraestrutura do Dashboard — e não do AP na sua LAN. Esta é uma distinção crítica que surpreende muitos engenheiros na sua primeira implementação Meraki. Significa que o seu servidor RADIUS, neste caso o endpoint de RADIUS na nuvem da Purple, precisa de estar acessível a partir da Internet, e as suas regras de firewall precisam de permitir o tráfego proveniente dos intervalos de IP do Meraki Dashboard, e não apenas da sub-rede do seu AP local. Encontrará os intervalos de IP atuais do Dashboard em Help e, depois, em Firewall Info no seu Meraki Dashboard. Muito bem, vamos entrar na configuração. Vou guiar-vos por este processo na ordem em que o faria numa implementação real. Passo um: configuração do SSID. No Meraki Dashboard, navegue até Wireless, depois Configure e, em seguida, SSIDs. Selecione o slot de SSID que pretende utilizar para o acesso de convidados. Dê-lhe um nome claro — algo como GuestWiFi ou NomeDoEspaço_Guest. Nas condições de associação (Association requirements), defina a Segurança (Security) para Aberta (Open), sem encriptação. Isto está correto e é intencional — a camada de segurança para os convidados é gerida pelo Captive Portal e pela autenticação RADIUS, e não pela encriptação WPA. Se estiver a implementar num ambiente PCI DSS, vai querer garantir que o tráfego de convidados está isolado na sua própria VLAN, o que abordaremos em breve. Passo dois: Splash page e autenticação. Ainda na página de Controlo de Acesso (Access Control) do seu SSID, desça até à secção Splash page. Defina-a para 'Sign-on with' e, no menu suspenso, selecione 'my RADIUS server'. Esta é a definição crítica que indica à Meraki para autenticar os utilizadores num servidor RADIUS externo antes de conceder acesso à rede. Abaixo disso, verá a opção de força do Captive Portal (Captive portal strength). Defina-a para 'Block all access until sign-on is complete'. Isto é o que impõe o walled garden — sem isso, os convidados poderiam contornar o portal por completo. Passo três: configuração do servidor RADIUS. Na secção RADIUS, clique em Add server. Irá precisar de três informações da sua conta Purple: o endereço IP ou FQDN do servidor RADIUS, a porta de autenticação que é UDP 1812 e o segredo partilhado. A Purple fornece estas informações na secção de configuração de espaços do portal. Para redundância em implementações de produção, deve adicionar um servidor RADIUS secundário — a Purple fornece um endpoint de failover. Defina a porta de accounting para UDP 1813 se pretender que os dados de sessão sejam enviados para o motor de análise da Purple, o que recomendo vivamente para qualquer espaço onde o tempo de permanência e a duração da sessão sejam métricas significativas. Uma nota rápida sobre os atributos RADIUS. A Meraki respeita o atributo Session-Timeout retornado na resposta RADIUS Access-Accept. A Purple utiliza isto para controlar a duração de uma sessão de convidado antes que seja necessária uma nova autenticação. Para um hotel, pode definir isto para 86.400 segundos — ou seja, 24 horas. Para um café, algo como 3.600 segundos (uma hora) é mais apropriado. O atributo Idle-Timeout também é respeitado, mas apenas se o accounting de RADIUS estiver ativado. Isto desliga as sessões inativas, o que é importante para a gestão de capacidade em espaços de alta densidade. Passo quatro: URL da splash page. Navegue até Wireless, depois Configure e, em seguida, Splash page. Selecione o seu SSID de convidados no menu suspenso. Defina o URL de splash personalizado (Custom splash URL) para o URL do portal da Purple para o seu espaço. Este é o URL para o qual a Meraki irá redirecionar os clientes não autenticados. A Meraki anexa parâmetros de consulta a este URL — incluindo um parâmetro login_url — que a Purple utiliza para concluir o handshake de autenticação. Não modifique nem remova estes parâmetros. Passo cinco: o walled garden. É aqui que a maioria das implementações encontra problemas. O walled garden é a lista de domínios e intervalos de IP que um dispositivo de convidado pode aceder antes de se autenticar. Sem as entradas corretas, a própria página do Captive Portal não irá carregar, porque o navegador será bloqueado de aceder à CDN da Purple e aos fornecedores de início de sessão social. Navegue de volta para Access Control para o seu SSID de convidados. Defina o Walled garden para 'Walled garden is enabled'. No campo de intervalos do Walled garden, precisa de adicionar o seguinte. Primeiro, os domínios da plataforma Purple: star ponto purple ponto ai e star ponto venuewifi ponto com. Segundo, os domínios de CDN que a Purple utiliza para disponibilizar os recursos do portal: star ponto cloudfront ponto net e star ponto akamaihd ponto net. Terceiro, a infraestrutura de redirecionamento da Meraki: star ponto network-auth ponto com. Quarto, se estiver a oferecer opções de início de sessão social, precisa dos domínios OAuth relevantes. Para a Google: accounts ponto google ponto com, star ponto googleapis ponto com, star ponto gstatic ponto com. Para o Facebook: star ponto facebook ponto com, star ponto fbcdn ponto net e connect ponto facebook ponto net. Para o Twitter ou X: star ponto twitter ponto com e star ponto twimg ponto com. Uma nota importante sobre como a Meraki gere domínios wildcard no walled garden. A Meraki suporta entradas wildcard utilizando o prefixo de asterisco, por exemplo, star ponto cloudfront ponto net. No entanto, esta é uma correspondência baseada em DNS — a Meraki resolve o domínio e permite os endereços IP resultantes. Isto significa que para fornecedores de CDN como a CloudFront ou a Akamai, onde os IPs resolvidos podem mudar frequentemente, deve utilizar o wildcard de domínio em vez de intervalos de IP estáticos. As entradas de IP estático são adequadas para os endpoints de RADIUS da Purple, que são estáveis, mas não para o tráfego de CDN. Agora vamos falar sobre dois cenários do mundo real em que trabalhei diretamente. O primeiro é um hotel de 350 quartos no Reino Unido. O cliente tinha pontos de acesso Meraki MR46 em três edifícios, com cerca de 400 dispositivos de convidados simultâneos no pico. A implementação inicial utilizava uma splash page de clique simples — sem RADIUS, apenas aceitação de termos. O problema era que tinham zero visibilidade sobre quem se estava a ligar, nenhuma recolha de e-mails e nenhuma forma de realizar campanhas de marketing pós-estadia. Migrámo-los para a Purple com início de sessão baseado em RADIUS. A configuração foi simples, mas o obstáculo foi que a firewall a montante estava a bloquear o tráfego UDP de saída na porta 1812 para qualquer destino fora da sub-rede local. Assim que adicionámos os intervalos de IP do Meraki Dashboard à lista de permissões da firewall, a autenticação funcionou imediatamente. Após a implementação, o hotel recolheu endereços de e-mail de aproximadamente 68% dos convidados que se ligaram no primeiro mês, e a sua equipa de marketing realizou uma campanha de reativação que gerou um aumento mensurável nas reservas diretas. O segundo cenário é uma cadeia de retalho com 45 lojas, cada uma equipada com pontos de acesso Meraki MR33. O desafio aqui era a escala e a consistência. Configurar manualmente 45 SSIDs com as definições de RADIUS e listas de walled garden corretas seria propício a erros e demorado. A solução foi utilizar a configuração baseada em modelos da Meraki. Criámos um único modelo de rede com as definições corretas de SSID, RADIUS e walled garden e, em seguida, vinculámos todas as 45 redes de lojas a esse modelo. Qualquer alteração — por exemplo, adicionar um novo fornecedor de início de sessão social ao walled garden — é feita uma vez no modelo e propaga-se automaticamente para todas as lojas. As análises da Purple agregaram depois os dados de afluência e tempo de permanência de todas as lojas, oferecendo à equipa de operações de retalho uma visão única em dashboard do comportamento dos convidados por loja, por região e por hora do dia. Permita-me partilhar três regras práticas que lhe pouparão tempo em todas as implementações de Captive Portal Meraki. Regra um: Verifique sempre os intervalos de IP do Meraki Dashboard antes de configurar o RADIUS. Os intervalos mudam ocasionalmente e, se a sua firewall os estiver a bloquear, a autenticação falhará silenciosamente do ponto de vista do utilizador — este verá apenas a página do portal ficar bloqueada. Utilize a ferramenta de teste de RADIUS integrada no Dashboard, em Access Control, para verificar a conectividade antes de avançar para o ambiente de produção. Regra dois: Utilize wildcards de domínio no walled garden, e não intervalos de IP, para qualquer conteúdo alojado em CDN. Os intervalos de IP de CDN são extensos e mudam frequentemente. Uma entrada de domínio wildcard é mais fácil de manter e mais fiável. Regra três: Ative o accounting de RADIUS na porta 1813, mesmo que ache que ainda não precisa dele. Os dados de sessão são valiosos para a resolução de problemas de desligamento e para fornecer métricas precisas de tempo de permanência na sua plataforma de análise. Não custa nada ativar e é muito difícil de implementar retroativamente. Agora, algumas perguntas rápidas que me fazem regularmente. Posso utilizar a splash page integrada da Meraki em vez da Purple? Sim, mas perde a recolha de dados, as análises, a automação de marketing e a gestão de consentimento em conformidade com o GDPR. A splash integrada é adequada para um clique simples básico, mas não é uma plataforma de inteligência de convidados. Esta configuração funciona em firewalls Meraki MX tão bem como em pontos de acesso MR? A configuração de splash page RADIUS é suportada em pontos de acesso MR. Os dispositivos MX gerem a autenticação de VPN de cliente de forma diferente. Especificamente para WiFi de convidados, está a configurar os SSIDs dos MR. E quanto ao WPA3? Os pontos de acesso Meraki MR suportam WPA3 em SSIDs empresariais. Para implementações de Captive Portal de convidados, o SSID é normalmente Aberto (Open), pelo que o WPA3 não se aplica diretamente. No entanto, se estiver a implementar um SSID Passpoint ou OpenRoaming em conjunto com o seu SSID de Captive Portal — o que a Purple suporta —, esse SSID utiliza WPA3-Enterprise com 802.1X, e é aí que o WPA3 se torna relevante. Para concluir: a integração entre a Cisco Meraki e a Purple está amplamente testada e é fiável, mas requer atenção a três aspetos: encaminhamento de IP de origem do RADIUS, integridade do walled garden e configuração do limite de tempo de sessão. Acerte nestes três pontos e a implementação será simples. O caso de negócio é claro — os espaços que implementam uma plataforma de WiFi de convidados devidamente configurada com recolha de dados obtêm consistentemente retornos mensuráveis no envolvimento de marketing e na visão operacional. Se quiser aprofundar o assunto, consulte o guia da Purple sobre a implementação de autenticação 802.1X com Cloud RADIUS e o nosso guia de implementação de APs sem fios Cisco no blogue da Purple. Ambos estão ligados nas notas do episódio. Obrigado por ouvir. Se tiver um cenário de implementação específico que gostaria que abordássemos, entre em contacto com a equipa técnica da Purple. Vemo-nos no próximo episódio.

📚 Part of our core series: WiFi Multi-Tenant

header_image.png

Resumo Executivo

Este guia de referência autoritário fornece uma estrutura de configuração abrangente e passo a passo para integrar redes sem fios Cisco Meraki com o Captive Portal baseado na nuvem da Purple. Concebido para gestores de TI, arquitetos de rede e fornecedores de serviços geridos (MSPs), este documento detalha as configurações exatas necessárias no Meraki Dashboard para implementar uma solução de WiFi de convidados segura e de alto desempenho [1].

Ao desacoplar a camada de inteligência de convidados do hardware, os espaços empresariais podem tirar partido das plataformas certificadas de Guest WiFi e WiFi Analytics da Purple para recolher dados primários ricos e em conformidade com o GDPR, garantindo ao mesmo tempo a integridade da rede e a conformidade regulamentar [2]. Este guia aborda parâmetros críticos de integração, incluindo autenticação RADIUS (portas 1812/1813), exceções de domínio de walled garden, resolução de wildcards de CDN e mecânica de redirecionamento de convidados em diversos espaços físicos, tais como centros de Retalho , Saúde , Hotelaria e Transportes .


Análise Técnica Detalhada

Para integrar com sucesso os Pontos de Acesso (APs) Cisco Meraki MR com um Captive Portal externo como o da Purple, os engenheiros de rede devem compreender a arquitetura subjacente do plano de controlo e de dados. Ao contrário dos controladores sem fios tradicionais no local (on-premise), onde os pedidos de autenticação RADIUS provêm do controlador físico ou de APs individuais, a Cisco Meraki utiliza uma arquitetura gerida na nuvem [1].

Separação do Plano de Controlo e do Plano de Dados

Quando um cliente convidado se associa a um SSID aberto configurado para um Captive Portal externo, o AP Meraki MR coloca o cliente num estado de pré-autenticação. Neste estado, todo o tráfego é bloqueado, exceto as consultas de DNS, DHCP e o tráfego destinado a endereços IP ou nomes de anfitrião (hostnames) explicitamente definidos no Walled Garden [3].

As mensagens reais de RADIUS Access-Request não são geradas pelo AP Meraki MR local. Em vez disso, provêm da Infraestrutura na Nuvem do Cisco Meraki Dashboard [1]. Esta é uma distinção arquitetónica crucial:

> "As mensagens de pedido de acesso RADIUS para uma splash page provêm do dashboard, e não dos dispositivos Meraki locais. Como tal, o endereço IP de LAN privada do servidor RADIUS não pode ser especificado aqui." [1]

Consequentemente, as firewalls a montante que protegem os seus servidores RADIUS devem permitir o tráfego de entrada de todo o bloco de intervalos de IP de saída do Meraki Dashboard, que são dinâmicos e específicos de cada região [1]. Estes intervalos podem ser obtidos dinamicamente através do Meraki Dashboard em Help > Firewall info [1].

architecture_overview.png

Protocolo de Autenticação RADIUS (PAP)

Para a autenticação da splash page de início de sessão, a Meraki utiliza o Password Authentication Protocol (PAP) [1]. Embora o PAP seja historicamente não encriptado, a integração Meraki-Purple mitiga os riscos de segurança através de encriptação em várias camadas:

  1. Encriptação Cliente-Nuvem: O cliente convidado estabelece uma sessão HTTPS (SSL/TLS) segura diretamente com o Captive Portal alojado da Purple. As credenciais (ex. tokens de início de sessão social, formulários de e-mail) são encriptadas em trânsito do navegador do cliente para os servidores da Purple [1].
  2. Encriptação de Segredo Partilhado de RADIUS: Quando a Nuvem Meraki envia o RADIUS Access-Request para o servidor Cloud RADIUS da Purple, encripta a palavra-passe do utilizador utilizando o Segredo Partilhado de RADIUS configurado e uma função XOR padrão em conformidade com a norma RFC 2865 [1]. Isto garante que as credenciais em texto simples nunca são transmitidas pela Internet pública.

Atributos RADIUS Suportados

A Nuvem Meraki e o Cloud RADIUS da Purple trocam vários atributos fundamentais durante o handshake de autenticação para aplicar parâmetros e políticas de sessão:

Atributo RADIUS Tipo Direção Descrição e Contexto Prático
User-Name String Request O identificador do utilizador convidado (ex. endereço de e-mail, endereço MAC) [1].
User-Password String Request A palavra-passe encriptada do utilizador ou token de sessão [1].
Called-Station-ID String Request Formatado como AP_MAC:SSID_NAME (ex. AA-BB-CC-DD-EE-FF:GuestWiFi). Crucial para o encaminhamento de políticas baseado na localização [1].
Calling-Station-ID String Request O endereço MAC físico do cliente (ex. 11-22-33-44-55-66). Utilizado para rastreio de dispositivos e retoma de sessão [1].
Session-Timeout Integer Accept A duração máxima da sessão em segundos. Após a expiração, o cliente é redirecionado de volta para o Captive Portal [1].
Idle-Timeout Integer Accept O tempo máximo de inatividade em segundos. Se não forem transferidos dados, a sessão é terminada. Requer Accounting de RADIUS [1].
Filter-Id String Accept Transmite o nome de uma Política de Grupo Meraki específica a aplicar ao cliente (ex. limitar a largura de banda ou bloquear categorias específicas) [1].

Guia de Implementação

Este passo a passo de configuração descreve como integrar os pontos de acesso Cisco Meraki MR com o Captive Portal externo da Purple.

Passo 1: Configurar o Controlo de Acesso do SSID

Navegue até Wireless > Configure > Access control no Meraki Dashboard [1]. Selecione o seu SSID de convidados de destino e configure os seguintes parâmetros:

  • Requisitos de Associação (Association Requirements): Defina para Open (no encryption) [1]. Isto garante uma experiência de integração sem fricção. Se necessitar de trânsito de convidados encriptado, considere implementação de Passpoint / Hotspot 2.0 com Cloud RADIUS [4].
  • Splash Page: Selecione Sign-on with e escolha my RADIUS server no menu suspenso [1].
  • RADIUS Servers: Clique em Add server e introduza os endpoints primário e secundário do Cloud RADIUS da Purple [1]:
    • Host IP: 116.203.120.121 (Primário) e 195.201.123.149 (Secundário)
    • Port: 1812 (Autenticação) [1]
    • Secret: [O seu Segredo Partilhado Purple]
  • RADIUS Accounting: Defina para RADIUS accounting is enabled e adicione os servidores de accounting:
    • Host IP: 116.203.120.121 (Primário) e 195.201.123.149 (Secundário)
    • Port: 1813 (Accounting)
    • Secret: [O seu Segredo Partilhado Purple]
  • Captive Portal Strength: Selecione Block all access until sign-on is complete [1]. Isto garante estritamente que os clientes não conseguem aceder à internet sem passar pela splash page.

Passo 2: Configurar o URL da Splash Page Personalizada

Navegue até Wireless > Configure > Splash page [1]. Selecione o seu SSID de convidados e configure:

  • Custom Splash URL: Selecione Or point to a custom URL e introduza o URL de redirecionamento da Purple:
    • https://login.venuewifi.com/ip/v2/meraki
  • Splash Page Redirect: Defina para The URL they were trying to fetch ou redirecione-os para uma página de destino específica (por exemplo, a página inicial do seu espaço) [3].

Passo 3: Configurar Exceções de Nome de Domínio do Walled Garden

Para garantir que os dispositivos dos convidados conseguem carregar o Captive Portal, descarregar recursos de Content Delivery Networks (CDNs) e concluir a autenticação social (por exemplo, Google ou Facebook OAuth), deve ativar e configurar o Walled Garden [3].

Navegue de volta para Wireless > Configure > Access control e localize a secção Walled Garden [1].

  1. Defina Walled Garden para Walled garden is enabled [1].
  2. No campo Walled garden ranges, introduza os FQDNs e domínios wildcard necessários [1].

walled_garden_infographic.png

Como a Meraki Gere Wildcards e Tráfego de CDN

Os pontos de acesso Cisco Meraki MR suportam domínios wildcard no walled garden utilizando o prefixo de asterisco (por exemplo, *.purple.ai) [1]. No entanto, é vital compreender o funcionamento subjacente:

  • Lista de Permissões Baseada em DNS: O AP Meraki intercetará os pedidos de DNS do cliente. Quando o cliente solicita um domínio que corresponde a uma entrada no walled garden, o AP resolve o domínio para o seu endereço IP atual e permite temporariamente que o cliente comunique com esse IP [3].
  • IPs de CDN Dinâmicos: CDNs como a Amazon CloudFront (*.cloudfront.net) e a Akamai (*.akamaihd.net) resolvem para endereços IP altamente dinâmicos e geograficamente distribuídos que mudam frequentemente. A lista de permissões baseada em DNS da Meraki lida com isto de forma simples, resolvendo os domínios em tempo real. Nunca utilize endereços IP estáticos para recursos de CDN no seu walled garden, pois isso causará falhas intermitentes no carregamento dos recursos do portal.

Boas Práticas

Para garantir uma elevada disponibilidade, segurança e uma experiência de utilizador ideal, adira a estas boas práticas de implementação padrão do setor:

1. Segmentação de Rede e Isolamento de VLAN

Nunca encaminhe o tráfego de convidados diretamente para a sua LAN corporativa. Configure os seus APs Meraki MR para etiquetar o tráfego de convidados com uma VLAN de Convidados dedicada (por exemplo, VLAN 30) [4]. Certifique-se de que esta VLAN termina numa DMZ ou numa instância separada de virtual routing and forwarding (VRF) na sua firewall a montante. Isto mitiga os riscos de movimento lateral e garante a conformidade com normas de segurança como PCI DSS e GDPR [2] [4].

2. Configurar Failover e Resiliência de Sessão

As ligações de rede podem falhar. Para evitar que os convidados fiquem sem acesso à internet durante uma falha no servidor de autenticação, configure a RADIUS Failover Policy no Dashboard da Meraki:

  • Failover Policy: Defina para Deny access para a máxima segurança, ou Allow access se a manutenção da conectividade dos convidados for prioritária em relação à captura de dados durante uma falha.
  • Secondary Servers: Configure sempre os servidores RADIUS primário e secundário para distribuir a carga e fornecer failover automático [1].

3. Implementar Limites de Tempo de Sessão e de Inatividade

Gira o seu espetro sem fios e as concessões do pool de DHCP configurando parâmetros de limite de tempo adequados [1]:

  • Session Timeout: Defina para 1440 minutos (24 horas) para ambientes de hotelaria, permitindo que os convidados permaneçam ligados durante toda a estadia sem necessidade de reautenticação constante [1]. Para retalho ou transportes públicos, reduza este valor para 120 minutos (2 horas) para incentivar uma nova interação e libertar concessões de DHCP.
  • Idle Timeout: Defina para 15 minutos. Se um dispositivo cliente entrar em modo de suspensão ou sair do espaço, o AP termina a sessão, recuperando os recursos de rede [1].

Resolução de Problemas e Mitigação de Riscos

Ao implementar Captive Portals externos na Cisco Meraki, os engenheiros encontram frequentemente três modos de falha principais. Utilize esta matriz de diagnóstico para isolar e resolver problemas rapidamente:

Sintoma Causa Raiz Passo de Diagnóstico Resolução
A splash page não carrega; o navegador apresenta 'Ligação Excedeu o Tempo Limite'. A firewall a montante está a bloquear o tráfego de saída de DNS ou HTTP/HTTPS para a CDN da Purple [1]. Tente resolver login.venuewifi.com a partir de um dispositivo com ligação por cabo na mesma VLAN. Certifique-se de que a VLAN de convidados tem acesso de saída para DNS público (UDP 53) e HTTP/HTTPS (TCP 80/443).
A splash page carrega, mas as credenciais do utilizador falham na autenticação. A firewall a montante está a bloquear o tráfego RADIUS com origem na Meraki Cloud [1]. Utilize a ferramenta RADIUS Test no Dashboard da Meraki em Access Control [1]. Adicione os intervalos de IP de saída do Dashboard da Meraki (encontrados em Help > Firewall info) à lista de permissões de saída da sua firewall para as portas UDP 1812 e 1813 [1].
O início de sessão social (por exemplo, Google OAuth) falha com um erro de redirecionamento. Falta o domínio auxiliar de OAuth necessáns no Meraki Walled Garden [1]. Verifique a consola do navegador no dispositivo cliente para identificar carregamentos de recursos bloqueados. Adicione os domínios OAuth obrigatórios (ex.: *.googleapis.com, *.gstatic.com) à lista do Walled Garden [1].

ROI e Impacto no Negócio

A integração do Cisco Meraki com a Purple transforma o WiFi de convidados de um centro de custos num ativo comercial estratégico. Ao tirar partido de hardware de nível empresarial juntamente com análises avançadas, as organizações obtêm retornos mensuráveis em múltiplas dimensões:

  • Monetização de Dados e Alcance de Marketing: Ao capturar endereços de email verificados e perfis de redes sociais, os espaços constroem uma base de dados limpa e em conformidade de dados de clientes primários (first-party) [2]. Estes dados alimentam diretamente os sistemas de gestão de relacionamento com o cliente (CRM) e de automação de marketing, permitindo campanhas de marketing altamente direcionadas e hiperlocais.
  • Eficiência Operacional: O onboarding automatizado através da Purple reduz a carga sobre as equipas de receção e suporte de TI. Em ambientes de hotelaria, isto traduz-se em menos reclamações de hóspedes relativamente à conectividade WiFi e em menores custos operacionais.
  • Análise Avançada de Tráfego de Visitantes: Ao combinar as APIs de localização da Meraki com o motor de análise da Purple, os operadores dos espaços obtêm informações detalhadas sobre o comportamento dos visitantes, incluindo o fluxo de pessoas, tempos de permanência, taxas de retorno e horas de maior afluência [2]. Estes dados fundamentam decisões informadas sobre a gestão de pessoal, a disposição das lojas e a valorização imobiliária.

Referências

Definições Principais

Captive Portal

Uma página web que é apresentada a utilizadores recém-conectados a uma rede Wi-Fi antes de lhes ser concedido um acesso mais amplo aos recursos da rede.

Utilizado por espaços para impor termos de serviço, recolher dados de utilizadores e autenticar convidados via RADIUS antes de permitir o acesso à Internet.

RADIUS (Remote Authentication Dial-In User Service)

Um protocolo de rede que fornece gestão centralizada de Autenticação, Autorização e Contabilização (AAA) para utilizadores que se ligam e utilizam um serviço de rede.

Os APs Meraki consultam os servidores Cloud RADIUS da Purple para verificar as credenciais dos convidados e autorizar o acesso à rede.

Walled Garden

Um conjunto restrito de endereços IP ou nomes de domínio aos quais os clientes convidados não autenticados têm permissão para aceder antes de concluírem o processo de início de sessão no Captive Portal.

Crucial para permitir que os clientes acedam à splash page alojada, transfiram recursos CSS/JS de CDNs e comuniquem com endpoints OAuth de início de sessão social.

Session-Timeout

Um atributo RADIUS RFC 2865 que especifica o número máximo de segundos que uma sessão de utilizador pode permanecer ativa antes de exigir uma nova autenticação.

Retornado pelo RADIUS da Purple no pacote Access-Accept para controlar quanto tempo um convidado permanece com a sessão iniciada (ex. 24 horas para hóspedes de hotel).

Idle-Timeout

Um atributo RADIUS que define o período máximo de inatividade (sem transferência de dados) permitido antes que a sessão do utilizador seja terminada.

Utilizado para desligar dispositivos inativos e recuperar endereços IP em ambientes de alta densidade, como estádios ou lojas de retalho.

PAP (Password Authentication Protocol)

Um protocolo de autenticação simples e não encriptado utilizado pelo RADIUS para validar credenciais de utilizador.

Exigido pela Cisco Meraki para autenticação RADIUS de splash page externa. A segurança é mantida encriptando o trânsito do cliente para o portal via HTTPS e encriptando o campo de palavra-passe do pacote RADIUS utilizando o segredo partilhado.

Passpoint (Hotspot 2.0)

Um padrão da indústria desenvolvido pela Wi-Fi Alliance que permite roaming automático semelhante ao celular e ligação segura a redes Wi-Fi.

Suportado pelos pontos de acesso Meraki MR e pela Purple para permitir uma integração de convidados fluida e baseada em certificados, sem necessidade de Captive Portals.

CMX (Cisco Meraki Location APIs)

Uma estrutura de API que permite aos pontos de acesso Meraki exportar dados de localização e presença em tempo real (pedidos de sonda) para plataformas de análise de terceiros.

Integrado com a Purple para fornecer análises detalhadas de afluência (footfall), tempo de permanência e taxa de retorno para espaços físicos.

Exemplos Práticos

Um hotel de luxo com 350 quartos equipado com pontos de acesso Cisco Meraki MR46 necessita de implementar uma rede WiFi de convidados segura. Pretendem recolher os e-mails dos convidados, limitar a largura de banda a 5 Mbps por convidado e garantir que os convidados apenas precisam de iniciar sessão uma vez a cada 7 dias. Como deve o arquiteto de rede configurar o Meraki Dashboard e as definições de RADIUS?

  1. Configuração do SSID: Configure um SSID aberto com o nome 'Hotel_Guest' com a splash page definida para 'Sign-on with' e 'my RADIUS server'.\n2. Configuração do RADIUS: Introduza os IPs de RADIUS primário (116.203.120.121) e secundário (195.201.123.149) da Purple. Defina a porta de autenticação para 1812 e a porta de accounting para 1813. Configure o segredo partilhado.\n3. Parâmetros de Timeout: No perfil do servidor RADIUS ou no dashboard da Purple, defina o atributo Session-Timeout para 604800 segundos (7 dias) e o Idle-Timeout para 1800 segundos (30 minutos) para recuperar concessões DHCP inativas.\n4. Modelação de Tráfego (Traffic Shaping): No Meraki Dashboard em Wireless > Configure > Firewall & traffic shaping, selecione o SSID, ative a modelação de tráfego e defina um limite por cliente de 5 Mbps de downstream e 2 Mbps de upstream.\n5. Walled Garden: Ative o walled garden e adicione *.purple.ai, *.venuewifi.com e os wildcards de CDN necessários, como *.cloudfront.net, para permitir a renderização da splash page antes da autenticação.
Comentário do Examinador: Esta solução equilibra com sucesso a experiência do utilizador com o desempenho da rede. A utilização de um Session-Timeout de 7 dias evita a fadiga de início de sessão para hóspedes de estadia longa, enquanto o Idle-Timeout de 30 minutos evita a exaustão de endereços IP no pool de DHCP. É preferível configurar a modelação de tráfego diretamente nos APs Meraki em vez de depender de atributos RADIUS (como Maximum-Data-Rate-Downstream), pois reduz a sobrecarga de processamento nos APs e fornece um mecanismo de aplicação mais consistente.

Uma cadeia de retalho nacional com 45 lojas pretende implementar WiFi de convidados em todas as localizações utilizando APs Meraki MR33. Necessitam de garantir uma configuração consistente, bloquear o acesso à rede corporativa e recolher análises de afluência (footfall). Como deve isto ser implementado à escala?

  1. Modelos de Configuração: Crie um único Modelo de Configuração de Rede (Network Configuration Template) no Meraki Dashboard. Configure o SSID de convidados com as definições de RADIUS da Purple, domínios de walled garden e o URL de splash personalizado: https://login.venuewifi.com/ip/v2/meraki. Vincule todas as 45 redes de lojas a este modelo.\n2. Segmentação de VLAN: No switch local e firewall de cada loja, configure uma VLAN de Convidados dedicada (ex. VLAN 50). Nas definições de SSID da Meraki, defina a Atribuição de IP de Cliente (Client IP Assignment) para 'External DHCP server' e especifique a VLAN 50. Garanta que a firewall bloqueia todo o encaminhamento da VLAN 50 para as sub-redes corporativas.\n3. Análise de Localização: Ative a Meraki Scanning API (CMX) no Meraki Dashboard em Network-wide > Configure > General. Introduza o URL de Post da Purple e o validador de segredo. Isto permite que os APs Meraki transmitam dados de pedidos de sonda (probe requests) em tempo real para o motor de análise da Purple para relatórios de afluência (footfall) e tempo de permanência.
Comentário do Examinador: A implementação à escala requer automação e gestão baseada em modelos. Ao vincular todas as redes a um único modelo, quaisquer atualizações futuras do walled garden (como a adição de um novo fornecedor de início de sessão social) podem ser aplicadas instantaneamente a todas as 45 lojas, eliminando erros de configuração manual. A ativação da Meraki Scanning API em conjunto com o accounting de RADIUS garante que o retalhista recolhe tanto as análises de sessões ativas de convidados como as métricas passivas de afluência de visitantes, maximizando o valor comercial da implementação.

Perguntas de Prática

Q1. Um engenheiro de rede implementa um novo SSID de convidados Meraki com um Captive Portal da Purple. Os clientes não autenticados são redirecionados com sucesso para a página de início de sessão, mas quando tentam utilizar 'Iniciar sessão com o Google', a página fica a carregar e acaba por falhar com um erro de DNS ou de limite de tempo. Outros métodos de início de sessão (como o formulário de e-mail) funcionam perfeitamente. Qual é a causa mais provável deste problema e como deve ser resolvido?

Dica: Considere quais os domínios externos que o navegador do cliente deve alcançar para concluir o handshake do Google OAuth antes que a autenticação RADIUS seja concluída.

Ver resposta modelo

A causa mais provável é que os domínios auxiliares do Google OAuth estão em falta na configuração do Walled Garden do SSID da Meraki. Embora os domínios principais da Purple e os domínios de CDN sejam permitidos (razão pela qual a splash page carrega), os servidores de autenticação da Google estão a ser bloqueados pelas regras de firewall de pré-autenticação do AP. Para resolver isto, navegue até Wireless > Configure > Access control, selecione o SSID de convidados e adicione os seguintes domínios do Google OAuth à lista do Walled Garden: accounts.google.com, *.googleapis.com, *.gstatic.com e *.googleusercontent.com. Uma vez guardado, o AP permitirá que o cliente conclua o handshake de autenticação da Google e redirecione de volta para a Purple para concluir o início de sessão RADIUS.

Q2. Durante uma auditoria pós-implementação de uma rede WiFi de estádio de alta densidade, a equipa de TI nota que o pool de DHCP para a VLAN de convidados (uma sub-rede /21 com 2048 IPs) fica completamente esgotado nas primeiras 2 horas de um evento, embora as ligações simultâneas ativas nunca excedam as 800. O accounting de RADIUS está ativado. Como pode o arquiteto de rede ajustar as definições da Meraki e do RADIUS para mitigar este problema?

Dica: Analise a relação entre os limites de tempo de sessão do cliente, limites de tempo de inatividade (idle timeouts) e tempos de concessão DHCP em ambientes transitórios de alta densidade.

Ver resposta modelo

O esgotamento do pool de DHCP é causado por clientes transitórios (utilizadores que passam a pé ou entram brevemente no estádio) que se ligam, obtêm um endereço IP e depois abandonam o espaço. Como o Session-Timeout padrão da Meraki ou o tempo de concessão DHCP é demasiado longo, esses endereços IP permanecem reservados mesmo que os dispositivos físicos já não estejam presentes. Para resolver isto, o arquiteto deve implementar três alterações coordenadas: 1) Reduzir o Tempo de Concessão DHCP: No servidor DHCP (ou no dispositivo de segurança Meraki que gere o DHCP), reduza o tempo de concessão para 10 ou 15 minutos. 2) Configurar o Idle Timeout: Garanta que o accounting de RADIUS está ativado na porta 1813 e configure um Idle-Timeout de 10 minutos (600 seconds) no perfil RADIUS Access-Accept. Isto indica ao AP Meraki para terminar a sessão de qualquer cliente inativo durante 10 minutos. 3) Encurtar o Session Timeout: Reduza o Session-Timeout global para o perfil do estádio para 120 minutos (7200 segundos) para forçar a reavaliação periódica dos dispositivos ativos.

Q3. Um MSP está a configurar um SSID de convidados Meraki com um Captive Portal da Purple. Introduziram os IPs e portas corretos do servidor RADIUS da Purple (1812/1813) no Meraki Dashboard, mas ao testar com a ferramenta integrada de 'Teste' de RADIUS, todos os pontos de acesso falham ao tentar alcançar o servidor. O MSP verifica que o segredo partilhado de RADIUS está correto e que a nuvem da Purple está online. Que configuração de encaminhamento ou firewall terá o MSP provavelmente negligenciado?

Dica: Lembre-se de onde provêm os pedidos de autenticação RADIUS numa arquitetura gerida na nuvem da Cisco Meraki.

Ver resposta modelo

O MSP provavelmente configurou as firewalls da sua rede local para permitir o tráfego RADIUS de saída das sub-redes dos APs locais, mas esqueceu-se de que, numa implementação de splash page da Meraki, os RADIUS Access-Requests provêm diretamente da Infraestrutura na Nuvem do Cisco Meraki Dashboard, e não dos APs locais. Para resolver isto, o MSP deve obter os intervalos de IP de saída do Meraki Dashboard (encontrados no Meraki Dashboard em Help > Firewall info) e configurar a sua firewall corporativa a montante para permitir tráfego UDP de entrada e saída nas portas 1812 (Autenticação) e 1813 (Accounting) entre esses intervalos de IP do Meraki Dashboard e os servidores Cloud RADIUS da Purple. Adicionalmente, devem garantir que os IPs do Meraki Dashboard são adicionados como clientes RADIUS válidos na configuração do portal da Purple.