Passer au contenu principal

Captive Portal for Cisco Meraki

Un guide de référence technique faisant autorité, de niveau intermédiaire, pour l'intégration des points d'accès Cisco Meraki MR avec le Captive Portal cloud de Purple. Couvre les configurations étape par étape du tableau de bord Meraki, les paramètres du serveur RADIUS (ports 1812/1813), les exceptions de domaine génériques du walled garden et les paramètres de délai d'expiration de session pour les déploiements WiFi invités à haute performance.

📖 8 min de lecture📝 1,892 mots🔧 2 exemples concrets3 questions d'entraînement📚 8 définitions clés

Écouter ce guide

Voir la transcription du podcast
Bienvenue dans la série de briefings techniques de Purple. Je suis votre hôte, et aujourd'hui nous allons aborder un sujet qui revient dans presque tous les déploiements de WiFi invités en entreprise sur lesquels nous travaillons : la configuration d'un Captive Portal sur les points d'accès Cisco Meraki MR, et plus particulièrement son intégration avec la plateforme cloud de Purple via l'authentification RADIUS. Que vous soyez un MSP intégrant un nouveau client dans le secteur de l'hôtellerie ou un architecte réseau interne pour une chaîne de magasins, cet épisode vous fournira les étapes de configuration précises et les explications associées. Plantons le décor. Vous disposez d'un site — qu'il s'agisse d'un hôtel, d'un centre de conférences, d'un stade ou d'un parc commercial — équipé de points d'accès Cisco Meraki MR gérés via le tableau de bord Meraki. L'objectif est de déployer une expérience WiFi invité personnalisée aux couleurs de la marque, qui collecte des données de première main, impose l'acceptation des conditions d'utilisation et transmet les données analytiques à une plateforme marketing. C'est précisément pour cela que Purple a été conçu, et Meraki représente l'un de nos déploiements matériels les plus courants à l'échelle mondiale. Maintenant, le point d'architecture essentiel à comprendre avant de modifier le moindre paramètre est le suivant : sur Cisco Meraki, l'authentification RADIUS pour un portail d'accès n'est pas traitée localement par le point d'accès. La requête RADIUS Access-Request provient du cloud Meraki — de l'infrastructure du tableau de bord — et non de l'AP sur votre réseau local. Il s'agit d'une distinction cruciale qui piège de nombreux ingénieurs lors de leur premier déploiement Meraki. Cela signifie que votre serveur RADIUS, en l'occurrence le point de terminaison RADIUS cloud de Purple, doit être accessible depuis Internet, et que vos règles de pare-feu doivent autoriser le trafic provenant des plages d'adresses IP du tableau de bord Meraki, et pas seulement de votre sous-réseau AP local. Vous trouverez les plages d'adresses IP actuelles du tableau de bord sous Aide, puis Informations sur le pare-feu dans votre tableau de bord Meraki. Passons maintenant à la configuration. Je vais vous guider dans l'ordre dans lequel vous procéderiez réellement lors d'un déploiement réel. Étape 1 : Configuration du SSID. Dans le tableau de bord Meraki, accédez à Sans fil, puis Configurer, puis SSIDs. Sélectionnez l'emplacement du SSID que vous souhaitez utiliser pour l'accès invité. Donnez-lui un nom clair — par exemple GuestWiFi ou NomDuSite_Guest. Sous les exigences d'association, définissez la sécurité sur Ouvert, sans chiffrement. C'est tout à fait normal et intentionnel — la couche de sécurité pour les invités est gérée par le Captive Portal et l'authentification RADIUS, et non par le chiffrement WPA. Si vous effectuez un déploiement dans un environnement PCI DSS, vous devrez vous assurer que le trafic invité est isolé sur son propre VLAN, ce que nous aborderons sous peu. Étape deux : Splash page et authentification. Toujours sur la page Access Control de votre SSID, faites défiler vers le bas jusqu'à la section Splash page. Définissez-la sur Sign-on with, et dans le menu déroulant, sélectionnez my RADIUS server. C'est le paramètre critique qui indique à Meraki d'authentifier les utilisateurs auprès d'un serveur RADIUS externe avant d'autoriser l'accès au réseau. En dessous, vous verrez l'option Captive portal strength. Définissez-la sur Block all access until sign-on is complete. C'est ce qui applique le walled garden — sans cela, les invités pourraient contourner complètement le Captive Portal. Étape trois : Configuration du serveur RADIUS. Dans la section RADIUS, cliquez sur Add server. Vous aurez besoin de trois informations provenant de votre compte Purple : l'adresse IP ou le FQDN du serveur RADIUS, le port d'authentification qui est UDP 1812, et le secret partagé. Purple fournit ces informations dans la section de configuration du site du portail. Pour assurer la redondance dans les déploiements de production, vous devez ajouter un serveur RADIUS secondaire — Purple fournit un point de terminaison de basculement. Définissez le port de comptabilité (accounting) sur UDP 1813 si vous souhaitez que les données de session soient renvoyées vers le moteur d'analyse de Purple, ce que je recommande vivement pour tout site où le temps de séjour et la durée des sessions sont des indicateurs significatifs. Une note rapide sur les attributs RADIUS. Meraki respecte l'attribut Session-Timeout renvoyé dans la réponse RADIUS Access-Accept. Purple utilise cet attribut pour contrôler la durée d'une session invité avant qu'une réauthentification ne soit requise. Pour un hôtel, vous pouvez le configurer sur 86 400 secondes — soit 24 heures. Pour un café, une valeur de 3 600 secondes, soit une heure, est plus appropriée. L'attribut Idle-Timeout est également respecté, mais uniquement si la comptabilité RADIUS est activée. Cela déconnecte les sessions inactives, ce qui est important pour la gestion de la capacité dans les sites à haute densité. Étape quatre : URL de la Splash page. Accédez à Wireless, puis Configure, puis Splash page. Sélectionnez votre SSID invité dans le menu déroulant. Définissez l'URL Custom splash URL sur l'URL du portail Purple de votre site. C'est l'URL vers laquelle Meraki redirigera les clients non authentifiés. Meraki ajoute des paramètres de requête à cette URL — y compris un paramètre login_url — que Purple utilise pour finaliser le processus d'authentification. Ne modifiez pas et ne supprimez pas ces paramètres. Étape cinq : le walled garden. C'est ici que la plupart des déploiements rencontrent des difficultés. Le walled garden est la liste des domaines et des plages d'adresses IP qu'un appareil invité peut atteindre avant de s'être authentifié. Sans les entrées correctes, la page du Captive Portal elle-même ne se chargera pas, car le navigateur sera bloqué et ne pourra pas atteindre le CDN de Purple ni les fournisseurs de connexion sociale.Revenez à la section Access Control pour votre SSID invité. Définissez le Walled garden sur Walled garden is enabled. Dans le champ Walled garden ranges, vous devez ajouter les éléments suivants. Premièrement, les domaines de la plateforme Purple : star dot purple dot ai et star dot venuewifi dot com. Deuxièmement, les domaines CDN que Purple utilise pour diffuser les ressources du portail : star dot cloudfront dot net et star dot akamaihd dot net. Troisièmement, l'infrastructure de redirection Meraki : star dot network-auth dot com. Quatrièmement, si vous proposez des options de connexion via les réseaux sociaux, vous devez ajouter les domaines OAuth correspondants. Pour Google : accounts dot google dot com, star dot googleapis dot com, star dot gstatic dot com. Pour Facebook : star dot facebook dot com, star dot fbcdn dot net et connect dot facebook dot net. Pour Twitter ou X : star dot twitter dot com et star dot twimg dot com. Une remarque importante sur la façon dont Meraki gère les domaines génériques (wildcards) dans le walled garden. Meraki prend en charge les entrées génériques à l'aide du préfixe astérisque, par exemple star dot cloudfront dot net. Cependant, il s'agit d'une correspondance basée sur le DNS — Meraki résout le domaine et autorise les adresses IP qui en résultent. Cela signifie que pour les fournisseurs de CDN comme CloudFront ou Akamai, où les adresses IP résolues peuvent changer fréquemment, vous devez utiliser le domaine générique plutôt que des plages d'adresses IP statiques. Les entrées d'IP statiques conviennent parfaitement pour les points de terminaison RADIUS de Purple, qui sont stables, mais pas pour le trafic CDN. Parlons maintenant de deux scénarios réels sur lesquels j'ai travaillé directement. Le premier concerne un hôtel de 350 chambres au Royaume-Uni. Le client utilisait des points d'accès Meraki MR46 répartis sur trois bâtiments, avec environ 400 appareils invités connectés simultanément aux heures de pointe. Le déploiement initial utilisait une page d'accueil de type clic-clic — sans RADIUS, juste une acceptation des conditions d'utilisation. Le problème était qu'ils n'avaient aucune visibilité sur l'identité des personnes connectées, aucune collecte d'e-mails et aucun moyen de mener des campagnes marketing après le séjour. Nous les avons migrés vers Purple avec une authentification basée sur RADIUS. La configuration était simple, mais le piège résidait dans le fait que leur pare-feu en amont bloquait le trafic UDP sortant sur le port 1812 vers tout ce qui se trouvait en dehors du sous-réseau local. Une fois que nous avons ajouté les plages d'adresses IP du tableau de bord Meraki à la liste d'autorisation du pare-feu, l'authentification a fonctionné immédiatement. Après le déploiement, l'hôtel a collecté les adresses e-mail d'environ 68 % des invités connectés au cours du premier mois, et leur équipe marketing a mené une campagne de réengagement qui a généré une hausse mesurable des réservations directes. Le second scénario concerne une chaîne de vente au détail de 45 magasins, chacun équipé de points d'accès Meraki MR33. Le défi résidait ici dans l'échelle et la cohérence. Configurer manuellement 45 SSID avec les paramètres RADIUS et les listes de walled garden appropriés aurait été source d'erreurs et chronophage. La solution a consisté à utiliser la configuration basée sur les modèles de Meraki. Nous avons créé un modèle de réseau unique avec les paramètres de SSID, RADIUS et walled garden appropriés, puis nous avons lié les réseaux des 45 magasins à ce modèle. Tout changement — par exemple, l'ajout d'un nouveau fournisseur de connexion sociale au walled garden — est effectué une seule fois dans le modèle et se propage automatiquement à tous les magasins. Les analyses de Purple ont ensuite agrégé les données de fréquentation et de temps de séjour de tous les magasins, offrant à l'équipe des opérations de vente au détail une vue unique sur tableau de bord du comportement des visiteurs par magasin, par région et par heure de la journée. Laissez-moi vous donner trois règles d'or qui vous feront gagner du temps sur chaque déploiement de Captive Portal Meraki. Règle numéro un : vérifiez toujours les plages d'adresses IP du tableau de bord Meraki avant de configurer RADIUS. Ces plages changent occasionnellement, et si votre pare-feu les bloque, l'authentification échouera de manière invisible pour l'utilisateur — il verra simplement la page du portail se figer. Utilisez l'outil de test RADIUS intégré dans le tableau de bord sous Contrôle d'accès pour vérifier la connectivité avant la mise en service. Règle numéro deux : utilisez des domaines génériques (wildcards) dans le walled garden, et non des plages d'adresses IP, pour tout contenu hébergé sur un CDN. Les plages d'adresses IP des CDN sont vastes et changent fréquemment. Une entrée de domaine générique est plus facile à maintenir et plus fiable. Règle numéro trois : activez la comptabilité RADIUS sur le port 1813, même si vous pensez ne pas en avoir encore besoin. Les données de session sont précieuses pour résoudre les problèmes de déconnexion et pour alimenter votre plateforme d'analyse avec des mesures précises du temps de séjour. Cela ne coûte rien à activer et est très difficile à intégrer après coup. À présent, voici quelques questions rapides que l'on me pose régulièrement. Puis-je utiliser la page d'accueil intégrée de Meraki au lieu de Purple ? Oui, mais vous perdez la capture de données, les analyses, l'automatisation du marketing et la gestion des consentements conforme au GDPR. La page d'accueil intégrée convient pour un simple clic d'accès, mais ce n'est pas une plateforme d'intelligence client. Cette configuration fonctionne-t-elle sur les pare-feux Meraki MX ainsi que sur les points d'accès MR ? La configuration de la page d'accueil RADIUS est prise en charge sur les points d'accès MR. Les appliances MX gèrent l'authentification VPN client différemment. Pour le WiFi invité spécifiquement, vous configurez les SSID MR. Qu'en est-il du WPA3 ? Les points d'accès Meraki MR prennent en charge le WPA3 sur les SSID d'entreprise. Pour les déploiements de Captive Portal invités, le SSID est généralement ouvert (Open), le WPA3 ne s'applique donc pas directement. Cependant, si vous déployez un SSID Passpoint ou OpenRoaming aux côtés de votre SSID de Captive Portal — ce que Purple prend en charge — ce SSID utilise le WPA3-Enterprise avec 802.1X, et c'est là que le WPA3 devient pertinent. Pour résumer : l'intégration de Cisco Meraki et Purple est éprouvée et fiable, mais elle nécessite une attention particulière sur trois points : le routage IP source RADIUS, l'exhaustivité du walled garden et la configuration de l'expiration de session. Maîtrisez ces trois aspects et le déploiement se fera sans encombre. L'intérêt commercial est évident : les établissements qui déploient une plateforme de guest WiFi correctement configurée avec capture de données constatent systématiquement des retours mesurables en matière d'engagement marketing et d'analyse opérationnelle. Si vous souhaitez approfondir le sujet, consultez le guide de Purple sur l'implémentation de l'authentification 802.1X avec cloud RADIUS, ainsi que notre guide de déploiement des AP Cisco Wireless sur le blog de Purple. Les deux liens figurent dans les notes de l'émission. Merci pour votre écoute. Si vous avez un scénario de déploiement spécifique que vous aimeriez nous voir aborder, contactez l'équipe technique de Purple. À bientôt pour le prochain épisode.

📚 Part of our core series: Multi-Tenant WiFi

header_image.png

Résumé exécutif

Ce guide de référence fait autorité et fournit un cadre de configuration complet, étape par étape, pour intégrer les réseaux sans fil Cisco Meraki au Captive Portal basé sur le cloud de Purple. Conçu pour les responsables informatiques, les architectes réseau et les fournisseurs de services gérés (MSP), ce document détaille les configurations exactes requises au sein du tableau de bord Meraki pour déployer une solution de WiFi invité sécurisée et performante [1].

En découplant la couche d'intelligence invité du matériel, les sites d'entreprise peuvent exploiter les plateformes certifiées de Guest WiFi et de WiFi Analytics de Purple pour capturer des données de première partie riches et conformes au GDPR, tout en garantissant l'intégrité du réseau et la conformité réglementaire [2]. Ce guide aborde les paramètres d'intégration critiques, notamment l'authentification RADIUS (ports 1812/1813), les exceptions de domaine de walled garden, la résolution générique CDN et les mécanismes de redirection des invités à travers divers sites physiques tels que le Commerce de détail , la Santé , l' Hôtellerie et les hubs de Transport .


Analyse technique approfondie

Pour intégrer avec succès les points d'accès (AP) Cisco Meraki MR avec un Captive Portal externe comme Purple, les ingénieurs réseau doivent comprendre l'architecture sous-jacente des plans de contrôle et de données. Contrairement aux contrôleurs sans fil sur site traditionnels où les requêtes d'authentification RADIUS proviennent du contrôleur physique ou des AP individuels, Cisco Meraki utilise une architecture gérée par le cloud [1].

Séparation du plan de contrôle et du plan de données

Lorsqu'un client invité s'associe à un SSID ouvert configuré pour un Captive Portal externe, l'AP Meraki MR place le client dans un état de pré-authentification. Dans cet état, tout le trafic est bloqué à l'exception des requêtes DNS, du DHCP et du trafic destiné aux adresses IP ou aux noms d'hôte explicitement définis dans le Walled Garden [3].

Les messages RADIUS Access-Request réels ne sont pas générés par l'AP Meraki MR local. Ils proviennent plutôt de l'infrastructure cloud du tableau de bord Cisco Meraki [1]. Il s'agit d'une distinction architecturale cruciale :

> "Les messages de requête d'accès RADIUS pour une page d'accueil proviendront du tableau de bord, et non des appareils Meraki locaux. Par conséquent, l'adresse IP LAN privée du serveur RADIUS ne peut pas être spécifiée ici." [1]

Par conséquent, les pare-feu en amont protégeant vos serveurs RADIUS doivent autoriser le trafic entrant provenant de l'ensemble du bloc de plages d'adresses IP sortantes du tableau de bord Meraki, qui sont dynamiques et spécifiques à chaque région [1]. Ces plages peuvent être récupérées de manière dynamique via le tableau de bord Meraki sous Aide > Informations sur le pare-feu [1].

architecture_overview.png

Protocole d'authentification RADIUS (PAP)

Pour l'authentification de la page de connexion (splash page), Meraki utilise le protocole d'authentification par mot de passe (PAP) [1]. Bien que le protocole PAP soit historiquement non chiffré, l'intégration Meraki-Purple atténue les risques de sécurité grâce à un chiffrement multicouche :

  1. Chiffrement Client-to-Cloud : Le client invité établit une session HTTPS (SSL/TLS) sécurisée directement avec le Captive Portal hébergé de Purple. Les identifiants (par exemple, les jetons de connexion sociale, les formulaires d'e-mail) sont chiffrés en transit depuis le navigateur du client vers les serveurs de Purple [1].
  2. Chiffrement par secret partagé RADIUS : Lorsque le Cloud Meraki envoie la demande d'accès RADIUS (Access-Request) au serveur Cloud RADIUS de Purple, il chiffre le mot de passe de l'utilisateur à l'aide du secret partagé RADIUS configuré et d'une fonction XOR standard conformément à la norme RFC 2865 [1]. Cela garantit que les identifiants en clair ne sont jamais transmis sur l'Internet public.

Attributs RADIUS pris en charge

Le Cloud Meraki et le Cloud RADIUS de Purple échangent plusieurs attributs clés lors de la phase d'authentification afin d'appliquer les paramètres et les politiques de session :

Attribut RADIUS Type Direction Description et contexte pratique
User-Name Chaîne Requête L'identifiant de l'utilisateur invité (par exemple, adresse e-mail, adresse MAC) [1].
User-Password Chaîne Requête Le mot de passe utilisateur chiffré ou le jeton de session [1].
Called-Station-ID Chaîne Requête Formaté comme AP_MAC:SSID_NAME (par exemple, AA-BB-CC-DD-EE-FF:GuestWiFi). Crucial pour le routage des politiques basées sur la localisation [1].
Calling-Station-ID Chaîne Requête L'adresse MAC physique du client (par exemple, 11-22-33-44-55-66). Utilisé pour le suivi des appareils et la reprise de session [1].
Session-Timeout Entier Acceptation La durée maximale de la session en secondes. Après expiration, le client est redirigé vers le Captive Portal [1].
Idle-Timeout Entier Acceptation Le temps d'inactivité maximal en secondes. Si aucune donnée n'est transférée, la session est interrompue. Nécessite l'utilisation de RADIUS Accounting [1].
Filter-Id Chaîne Acceptation Transmet le nom d'une politique de groupe Meraki spécifique à appliquer au client (par exemple, limitation de la bande passante ou blocage de catégories spécifiques) [1].

Guide d'implémentation

Ce guide de configuration étape par étape décrit comment intégrer les points d'accès Cisco Meraki MR avec le Captive Portal externe de Purple.

Étape 1 : Configurer le contrôle d'accès au SSID

Accédez à Wireless > Configure > Access control dans le tableau de bord Meraki [1]. Sélectionnez votre SSID invité cible et configurez les paramètres suivants :

  • Association Requirements : Définissez sur Open (no encryption) [1]. Cela garantit une expérience d'intégration fluide. Si vous avez besoin d'un transit invité chiffré, envisagez d'implémenter Passpoint / Hotspot 2.0 avec Cloud RADIUS [4].
  • Splash Page : Sélectionnez Sign-on with et choisissez my RADIUS server dans le menu déroulant [1].
  • RADIUS Servers : Cliquez sur Add server et saisissez les points de terminaison primaire et secondaire de Cloud RADIUS de Purple [1] :
    • Host IP : 116.203.120.121 (Primaire) et 195.201.123.149 (Secondaire)
    • Port : 1812 (Authentification) [1]
    • Secret : [Votre secret partagé Purple]
  • RADIUS Accounting : Définissez sur RADIUS accounting is enabled et ajoutez les serveurs de comptabilisation :
    • Host IP : 116.203.120.121 (Primaire) et 195.201.123.149 (Secondaire)
    • Port : 1813 (Comptabilisation)
    • Secret : [Votre secret partagé Purple]
  • Captive Portal Strength : Sélectionnez Block all access until sign-on is complete [1]. Cela impose strictement que les clients ne puissent pas accéder à Internet sans passer par la splash page.

Étape 2 : Configurer l'URL personnalisée de la Splash Page

Accédez à Wireless > Configure > Splash page [1]. Sélectionnez votre SSID invité et configurez :

  • Custom Splash URL : Sélectionnez Or point to a custom URL et saisissez l'URL de redirection Purple :
    • https://login.venuewifi.com/ip/v2/meraki
  • Splash Page Redirect : Définissez sur The URL they were trying to fetch ou redirigez-les vers une page de destination spécifique (par exemple, la page d'accueil de votre établissement) [3].

Étape 3 : Configurer les exceptions de noms de domaine du Walled Garden

Pour garantir que les clients invités puissent charger le Captive Portal, télécharger des ressources à partir de réseaux de diffusion de contenu (CDN) et effectuer une authentification sociale (par exemple, Google ou Facebook OAuth), vous devez activer et configurer le Walled Garden [3].

Revenez à Wireless > Configure > Access control et localisez la section Walled Garden [1].

  1. Définissez Walled Garden sur Walled garden is enabled [1].
  2. Dans le champ Walled garden ranges, saisissez les FQDN et les domaines génériques requis [1].

walled_garden_infographic.png

Comment Meraki gère les caractères génériques et le trafic CDN

Les points d'accès Cisco Meraki MR prennent en charge les domaines génériques dans le walled garden en utilisant le préfixe astérisque (par exemple, *.purple.ai) [1]. Cependant, il est essentiel de comprendre les mécanismes sous-jacents :

  • Liste blanche basée sur le DNS : Le point d'accès Meraki intercepte les requêtes DNS du client. Lorsque le client demande un domaine correspondant à une entrée du walled garden, le point d'accès résout le domaine vers son adresse IP actuelle et autorise temporairement le client à communiquer avec cette IP [3].
  • IP de CDN dynamiques : les CDN comme Amazon CloudFront (*.cloudfront.net) et Akamai (*.akamaihd.net) se résolvent en adresses IP hautement dynamiques et géographiquement distribuées qui changent fréquemment. La mise sur liste blanche basée sur le DNS de Meraki gère cela de manière transparente en résolvant les domaines en temps réel. N'utilisez jamais d'adresses IP statiques pour les ressources CDN dans votre walled garden, car cela entraînerait des échecs de chargement intermittents des éléments du portail.

Bonnes pratiques

Pour garantir une haute disponibilité, la sécurité et une expérience utilisateur optimale, respectez ces bonnes pratiques de déploiement conformes aux normes de l'industrie :

1. Segmentation du réseau et isolation des VLAN

Ne pontez jamais le trafic invité directement sur votre LAN d'entreprise. Configurez vos AP Meraki MR pour taguer le trafic invité avec un VLAN invité dédié (par exemple, VLAN 30) [4]. Assurez-vous que ce VLAN se termine sur une DMZ ou une instance de routage et de transfert virtuel (VRF) distincte sur votre pare-feu amont. Cela atténue les risques de déplacement latéral et garantit la conformité avec les normes de sécurité telles que PCI DSS et le GDPR [2] [4].

2. Configurer le basculement et la résilience des sessions

Les liaisons réseau peuvent échouer. Pour éviter que les invités ne soient bloqués hors d'Internet lors d'une panne du serveur d'authentification, configurez la politique de basculement RADIUS dans le tableau de bord Meraki :

  • Politique de basculement : définissez sur Refuser l'accès pour une sécurité maximale, ou Autoriser l'accès si le maintien de la connectivité des invités est prioritaire sur la capture de données lors d'une panne.
  • Serveurs secondaires : configurez toujours des serveurs RADIUS principaux et secondaires pour répartir la charge et assurer un basculement automatique [1].

3. Implémenter des délais d'expiration de session et d'inactivité

Gérez votre spectre sans fil et vos baux de pool DHCP en configurant les paramètres de délai d'expiration appropriés [1] :

  • Délai d'expiration de la session : définissez sur 1440 minutes (24 heures) pour les environnements hôteliers, permettant aux invités de rester connectés tout au long de leur séjour sans réauthentification constante [1]. Pour le commerce de détail ou les transports publics, réduisez cette valeur à 120 minutes (2 heures) pour encourager un nouvel engagement et libérer des baux DHCP.
  • Délai d'expiration d'inactivité : définissez sur 15 minutes. Si un appareil client se met en veille ou quitte le site, l'AP met fin à la session, récupérant ainsi les ressources réseau [1].

Dépannage et atténuation des risques

Lors du déploiement de portails captifs externes sur Cisco Meraki, les ingénieurs rencontrent généralement trois modes de défaillance principaux. Utilisez cette matrice de diagnostic pour isoler et résoudre rapidement les problèmes :

Symptôme Cause racine Étape de diagnostic Résolution
La page d'accueil ne se charge pas ; le navigateur affiche « Connexion expirée ». Le pare-feu amont bloque le trafic DNS ou HTTP/HTTPS sortant vers le CDN de Purple [1]. Tentez de résoudre login.venuewifi.com depuis un appareil filaire sur le même VLAN. Assurez-vous que le VLAN invité dispose d'un accès sortant vers le DNS public (UDP 53) et HTTP/HTTPS (TCP 80/443).
La Captive Portal se charge, mais les identifiants de l'utilisateur ne parviennent pas à s'authentifier. Le pare-feu en amont bloque le trafic RADIUS provenant du Meraki Cloud [1]. Utilisez l'utilitaire RADIUS Test dans le tableau de bord Meraki sous Access Control [1]. Ajoutez les plages d'adresses IP sortantes du tableau de bord Meraki (situées sous Help > Firewall info) à la liste d'autorisation sortante de votre pare-feu pour les ports UDP 1812 et 1813 [1].
La connexion via les réseaux sociaux (ex. Google OAuth) échoue avec une erreur de redirection. Domaines d'assistance OAuth requis manquants dans le Walled Garden de Meraki [1]. Vérifiez la console du navigateur sur l'appareil client pour identifier les chargements de ressources bloqués. Ajoutez les domaines OAuth obligatoires (ex. *.googleapis.com, *.gstatic.com) à la liste du Walled Garden [1].

ROI & Impact Commercial

L'intégration de Cisco Meraki avec Purple transforme le WiFi invité d'un centre de coûts en un actif commercial stratégique. En exploitant un matériel de classe entreprise associé à des analyses avancées, les organisations obtiennent des rendements mesurables sur plusieurs dimensions :

  • Monétisation des données & Portée marketing : En capturant des adresses e-mail vérifiées et des profils sociaux, les sites constituent une base de données propre et conforme de données clients de première main [2]. Ces données alimentent directement les systèmes de gestion de la relation client (CRM) et d'automatisation du marketing, permettant des campagnes marketing hautement ciblées et hyper-locales.
  • Efficacité opérationnelle : L'intégration automatisée via Purple réduit la charge de travail du personnel d'accueil et du support informatique. Dans le secteur de l'hôtellerie, cela se traduit par moins de plaintes de clients concernant la connectivité WiFi et une réduction des coûts opérationnels.
  • Analyses avancées de fréquentation : En combinant les API de localisation de Meraki avec le moteur d'analyse de Purple, les exploitants de sites obtiennent des informations approfondies sur le comportement des visiteurs, notamment la fréquentation, les temps de séjour, les taux de retour et les heures de pointe [2]. Ces données permettent de prendre des décisions éclairées concernant le personnel, l'agencement des magasins et l'évaluation immobilière.

Références

Définitions clés

Captive Portal

Une page web qui s'affiche pour les utilisateurs nouvellement connectés à un réseau Wi-Fi avant qu'ils ne se voient accorder un accès plus large aux ressources du réseau.

Utilisé par les établissements pour faire respecter les conditions d'utilisation, collecter les données des utilisateurs et authentifier les invités via RADIUS avant d'autoriser l'accès à Internet.

RADIUS (Remote Authentication Dial-In User Service)

Un protocole réseau qui fournit une gestion centralisée de l'authentification, de l'autorisation et de la comptabilisation (AAA) pour les utilisateurs qui se connectent et utilisent un service réseau.

Les points d'accès Meraki interrogent les serveurs Cloud RADIUS de Purple pour vérifier les identifiants des invités et autoriser l'accès au réseau.

Walled Garden

Un ensemble restreint d'adresses IP ou de noms de domaine auxquels les clients invités non authentifiés sont autorisés à accéder avant de terminer le processus d'authentification sur le Captive Portal.

Crucial pour permettre aux clients d'accéder à la page de connexion hébergée, de télécharger des ressources CSS/JS à partir de CDN et de communiquer avec les points de terminaison OAuth de connexion sociale.

Session-Timeout

Un attribut RADIUS RFC 2865 qui spécifie le nombre maximum de secondes pendant lesquelles une session utilisateur peut rester active avant de nécessiter une nouvelle authentification.

Renvoyé par le RADIUS de Purple dans le paquet Access-Accept pour contrôler la durée pendant laquelle un invité reste connecté (par exemple, 24 heures pour les clients d'un hôtel).

Idle-Timeout

Un attribut RADIUS qui définit la période maximale d'inactivité (aucun transfert de données) autorisée avant que la session de l'utilisateur ne soit interrompue.

Utilisé pour déconnecter les appareils inactifs et récupérer les adresses IP dans des environnements à haute densité comme les stades ou les magasins de détail.

PAP (Password Authentication Protocol)

Un protocole d'authentification simple et non chiffré utilisé par RADIUS pour valider les identifiants des utilisateurs.

Requis par Cisco Meraki pour l'authentification RADIUS de la page de connexion externe. La sécurité est maintenue en chiffrant le transit du client vers le portail via HTTPS et en chiffrant le champ de mot de passe du paquet RADIUS à l'aide du secret partagé.

Passpoint (Hotspot 2.0)

Une norme de l'industrie développée par la Wi-Fi Alliance qui permet une itinérance automatique de type cellulaire et une connexion sécurisée aux réseaux Wi-Fi.

Pris en charge par les points d'accès Meraki MR et Purple pour permettre une intégration fluide et sécurisée des invités, basée sur des certificats, sans Captive Portal.

CMX (Cisco Meraki Location APIs)

Un framework d'API qui permet aux points d'accès Meraki d'exporter des données de localisation et de présence en temps réel (requêtes de sonde) vers des plateformes d'analyse tierces.

Intégré à Purple pour fournir des analyses détaillées sur la fréquentation, le temps de séjour et le taux de retour pour les établissements physiques.

Exemples concrets

Un hôtel de luxe de 350 chambres équipé de points d'accès Cisco Meraki MR46 doit déployer un réseau WiFi invité sécurisé. Il souhaite collecter les e-mails des clients, limiter la bande passante à 5 Mbps par utilisateur et s'assurer que les clients n'ont à se connecter qu'une seule fois tous les 7 jours. Comment l'architecte réseau doit-il configurer le tableau de bord Meraki et les paramètres RADIUS ?

  1. Configuration du SSID : Configurez un SSID ouvert nommé 'Hotel_Guest' avec la page d'accueil définie sur 'Se connecter avec' et 'mon serveur RADIUS'.\n2. Configuration RADIUS : Saisissez les adresses IP RADIUS principale (116.203.120.121) et secondaire (195.201.123.149) de Purple. Définissez le port d'authentification sur 1812 et le port de comptabilité sur 1813. Configurez le secret partagé.\n3. Paramètres de délai d'expiration : Dans le profil du serveur RADIUS ou le tableau de bord Purple, définissez l'attribut Session-Timeout sur 604800 secondes (7 jours) et Idle-Timeout sur 1800 secondes (30 minutes) pour récupérer les baux DHCP inactifs.\n4. Limitation du trafic : Dans le tableau de bord Meraki, sous Wireless > Configure > Firewall & traffic shaping, sélectionnez le SSID, activez la limitation du trafic et définissez une limite par client de 5 Mbps en débit descendant et 2 Mbps en débit montant.\n5. Walled Garden : Activez le walled garden et ajoutez *.purple.ai, *.venuewifi.com ainsi que les caractères génériques CDN nécessaires comme *.cloudfront.net pour permettre l'affichage de la page d'accueil avant l'authentification.
Commentaire de l'examinateur : Cette solution équilibre avec succès l'expérience utilisateur et les performances du réseau. L'utilisation d'un Session-Timeout de 7 jours évite la fatigue de connexion pour les clients séjournant longtemps, tandis que l'Idle-Timeout de 30 minutes empêche l'épuisement des adresses IP dans le pool DHCP. Il est préférable de configurer la limitation du trafic directement sur les points d'accès Meraki plutôt que de s'appuyer sur des attributs RADIUS (comme Maximum-Data-Rate-Downstream), car cela réduit la charge de traitement sur les points d'accès et offre un mécanisme d'application plus cohérent.

Une chaîne nationale de vente au détail comptant 45 magasins souhaite déployer un réseau WiFi invité sur l'ensemble de ses sites à l'aide de points d'accès Meraki MR33. Elle doit garantir une configuration cohérente, bloquer l'accès au réseau d'entreprise et collecter des analyses de fréquentation. Comment cela doit-il être mis en œuvre à grande échelle ?

  1. Modèles de configuration : Créez un modèle de configuration réseau unique dans le tableau de bord Meraki. Configurez le SSID invité avec les paramètres RADIUS de Purple, les domaines du walled garden et l'URL personnalisée de la page d'accueil : https://login.venuewifi.com/ip/v2/meraki. Associez les 45 réseaux de magasins à ce modèle.\n2. Segmentation VLAN : Sur le commutateur local et le pare-feu de chaque magasin, configurez un VLAN invité dédié (par exemple, VLAN 50). Dans les paramètres du SSID Meraki, définissez l'attribution d'adresses IP client sur 'Serveur DHCP externe' et spécifiez le VLAN 50. Assurez-vous que le pare-feu bloque tout routage du VLAN 50 vers les sous-réseaux de l'entreprise.\n3. Analyses de localisation : Activez l'API de balayage Meraki (CMX) dans le tableau de bord Meraki sous Network-wide > Configure > General. Saisissez l'URL de publication Purple et le validateur secret. Cela permet aux points d'accès Meraki de transmettre en temps réel les données de requêtes de sonde au moteur d'analyse de Purple pour les rapports de fréquentation et de temps de séjour.
Commentaire de l'examinateur : Le déploiement à grande échelle nécessite une automatisation et une gestion basée sur des modèles. En associant tous les réseaux à un modèle unique, toutes les futures mises à jour du walled garden (comme l'ajout d'un nouveau fournisseur de connexion sociale) peuvent être déployées instantanément dans les 45 magasins, éliminant ainsi les erreurs de configuration manuelle. L'activation de l'API de balayage Meraki parallèlement à la comptabilité RADIUS garantit que le détaillant capture à la fois les analyses de session des invités actifs et les mesures de fréquentation des visiteurs passifs, maximisant ainsi la valeur commerciale du déploiement.

Questions d'entraînement

Q1. Un ingénieur réseau déploie un nouveau SSID invité Meraki avec un Captive Portal Purple. Les clients non authentifiés sont redirigés avec succès vers la page de connexion, mais lorsqu'ils tentent d'utiliser "Se connecter avec Google", la page tourne en boucle et finit par échouer avec une erreur DNS ou de délai d'attente (timeout). Les autres méthodes de connexion (comme le formulaire d'e-mail) fonctionnent parfaitement. Quelle est la cause la plus probable de ce problème et comment doit-il être résolu ?

Conseil : Considérez les domaines externes que le navigateur du client doit atteindre pour finaliser le handshake Google OAuth avant que l'authentification RADIUS ne soit terminée.

Voir la réponse type

La cause la plus probable est que les domaines d'assistance Google OAuth sont manquants dans la configuration du Walled Garden du SSID Meraki. Bien que les domaines principaux de Purple et les domaines CDN soient autorisés (ce qui explique pourquoi la splash page se charge), les serveurs d'authentification Google sont bloqués par les règles de pare-feu de pré-authentification de l'AP. Pour résoudre ce problème, accédez à Sans fil > Configurer > Contrôle d'accès, sélectionnez le SSID invité, et ajoutez les domaines Google OAuth suivants à la liste du Walled Garden : accounts.google.com, *.googleapis.com, *.gstatic.com et *.googleusercontent.com. Une fois enregistrée, l'AP permettra au client de finaliser le handshake d'authentification Google et de le rediriger vers Purple pour terminer la connexion RADIUS.

Q2. Lors d'un audit post-déploiement d'un réseau WiFi de stade à haute densité, l'équipe informatique constate que le pool DHCP pour le VLAN invité (un sous-réseau /21 avec 2048 adresses IP) est complètement épuisé au cours des 2 premières heures d'un événement, même si les connexions simultanées actives ne dépassent jamais 800. L'accounting RADIUS est activé. Comment l'architecte réseau peut-il ajuster les paramètres Meraki et RADIUS pour atténuer ce problème ?

Conseil : Analysez la relation entre les délais d'expiration de session client (session timeouts), les délais d'inactivité (idle timeouts) et les durées de bail DHCP dans les environnements transitoires à haute densité.

Voir la réponse type

L'épuisement du pool DHCP est causé par des clients transitoires (des utilisateurs qui passent devant ou entrent brièvement dans le stade) qui se connectent, obtiennent une adresse IP, puis quittent le site. Comme le Session-Timeout par défaut de Meraki ou la durée du bail DHCP est trop long, ces adresses IP restent réservées même si les appareils physiques ne sont plus présents. Pour résoudre ce problème, l'architecte doit mettre en œuvre trois modifications coordonnées : 1) Réduire la durée du bail DHCP : Sur le serveur DHCP (ou l'appareil de sécurité Meraki gérant le DHCP), réduisez la durée du bail à 10 ou 15 minutes. 2) Configurer l'Idle Timeout : Assurez-vous que l'accounting RADIUS est activé sur le port 1813 et configurez un Idle-Timeout de 10 minutes (600 secondes) dans le profil Access-Accept de RADIUS. Cela indique à l'AP Meraki de mettre fin à la session de tout client inactif pendant 10 minutes. 3) Raccourcir le Session Timeout : Réduisez le Session-Timeout global pour le profil du stade à 120 minutes (7200 secondes) pour forcer une réévaluation périodique des appareils actifs.

Q3. Un MSP configure un SSID invité Meraki avec un Captive Portal Purple. Il a saisi les adresses IP et les ports des serveurs RADIUS Purple appropriés (1812/1813) dans le Dashboard Meraki, mais lors des tests avec l'outil de test RADIUS intégré, tous les points d'accès ne parviennent pas à joindre le serveur. Le MSP vérifie que le secret partagé RADIUS est correct et que le cloud Purple est en ligne. Quel paramètre de routage ou de pare-feu le MSP a-t-il probablement négligé ?

Conseil : Rappelez-vous d'où proviennent les requêtes d'authentification RADIUS dans une architecture gérée par le cloud Cisco Meraki.

Voir la réponse type

Le MSP a probablement configuré ses pare-feux réseau locaux pour autoriser le trafic RADIUS sortant depuis les sous-réseaux locaux des AP, mais a oublié que dans un déploiement de splash page Meraki, les requêtes Access-Request RADIUS proviennent directement de l'infrastructure cloud du Dashboard Cisco Meraki, et non des AP locaux. Pour résoudre ce problème, le MSP doit obtenir les plages d'adresses IP sortantes du Dashboard Meraki (disponibles dans le Dashboard Meraki sous Aide > Informations sur le pare-feu) et configurer son pare-feu d'entreprise en amont pour autoriser le trafic UDP entrant et sortant sur les ports 1812 (Authentification) et 1813 (Accounting) entre ces plages d'adresses IP du Dashboard Meraki et les serveurs Cloud RADIUS de Purple. De plus, il doit s'assurer que les adresses IP du Dashboard Meraki sont ajoutées en tant que clients RADIUS valides dans la configuration du portail Purple.

Continuer la lecture de cette série

Intégration de CommScope Ruckus avec Purple WiFi : Guide d'installation et de configuration

Ce guide de référence technique fournit un manuel de configuration faisant autorité pour l'intégration des architectures CommScope Ruckus avec Purple WiFi. Il détaille les déploiements étape par étape pour les Captive Portals de WiFi invité, le WiFi personnel sécurisé via 802.1X et l'isolation réseau multi-locataire à l'aide de Ruckus Dynamic PSK.

Lire le guide →

Intégration des points d'accès Allied Telesis avec Purple WiFi

Ce guide fournit un manuel de configuration complet pour l'intégration des points d'accès Allied Telesis de la série TQ avec Purple WiFi. Il traite de la redirection vers le Captive Portal externe, de l'authentification RADIUS 802.1X et de l'orientation VLAN dynamique à l'aide de clés prépartagées privées (PPSK) pour des déploiements multi-locataires sécurisés.

Lire le guide →

Intégration des points d'accès Grandstream GWN avec Purple WiFi

Ce guide de référence technique officiel détaille comment intégrer les points d'accès Grandstream GWN avec le Guest WiFi de Purple et sa plateforme d'analyse. Il couvre la configuration du Captive Portal Grandstream, les paramètres RADIUS AAA, la configuration du walled garden, l'authentification sécurisée du personnel en 802.1X avec routage dynamique des VLAN, et la segmentation PPSK multi-tenant - offrant ainsi des instructions étape par étape directement exploitables pour les MSP et les équipes informatiques déployant du WiFi invités et personnel à grande échelle.

Lire le guide →