Passer au contenu principal

Captive Portal pour Cisco Meraki : le configurer avec le WiFi invité Purple

Comment exécuter un Captive Portal Purple sur Cisco Meraki : authentification web externe, RADIUS et un walled garden, avec un lien vers le guide de configuration étape par étape de Purple pour les détails exacts.

📖 2 min de lecture📝 411 mots📚 5 définitions clés

Écouter ce guide

Voir la transcription du podcast
Bienvenue dans la série d'informations techniques Purple. Je suis votre hôte et aujourd'hui, nous abordons un sujet qui revient dans presque tous les déploiements WiFi invités d'entreprise sur lesquels nous travaillons : la configuration d'un Captive Portal sur les points d'accès Cisco Meraki MR, et plus particulièrement la façon de l'intégrer à la plateforme cloud de Purple à l'aide de 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 sous-jacentes. Plantons le décor. Vous disposez d'un site - il peut s'agir d'un hôtel, d'un centre de conférence, d'un stade ou d'un parc commercial - équipé de points d'accès Cisco Meraki MR gérés via le Meraki Dashboard. L'objectif est de déployer une expérience WiFi invités personnalisée à l'image de la marque qui collecte des données de première partie, impose l'acceptation des conditions d'utilisation et transmet des données analytiques à une plateforme marketing. C'est précisément pour cela que Purple a été conçu, et Meraki est 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 une page de redirection 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 Dashboard - 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 cloud RADIUS 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 Meraki Dashboard, et pas seulement de votre sous-réseau AP local. Vous trouverez les plages d'adresses IP actuelles du Dashboard sous l'onglet Aide, puis Informations sur le pare-feu dans votre Meraki Dashboard. Passons maintenant à la configuration. Je vais vous guider dans l'ordre réel de réalisation lors d'un déploiement en direct. Étape 1 : Configuration de l'SSID. Dans le Meraki Dashboard, accédez à Wireless, puis Configure, puis SSIDs. Sélectionnez l'emplacement de l'SSID que vous souhaitez utiliser pour l'accès invité. Donnez-lui un nom clair - tel que GuestWiFi ou NomDuSite underscore Guest. Dans les exigences d'association (Association requirements), définissez la sécurité (Security) sur Open, sans chiffrement. C'est une démarche correcte et délibérée - 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 : Page de connexion et authentification. Toujours sur la page Access Control de votre SSID, faites défiler vers le bas jusqu'à la section Splash page. Configurez-la sur Sign-on with, et dans le menu déroulant, sélectionnez my RADIUS server. Il s'agit du paramètre essentiel qui indique à Meraki d'authentifier les utilisateurs auprès d'un serveur RADIUS externe avant d'accorder l'accès au réseau. Juste en dessous, vous verrez l'option Captive portal strength. Configurez-la sur Block all access until sign-on is complete. C'est ce qui applique le walled garden - sans cela, les visiteurs 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 l'UDP 1812, et le secret partagé. Purple fournit ces informations dans la section de configuration de l'établissement du portail. Pour garantir la redondance dans les déploiements de production, vous devez ajouter un serveur RADIUS secondaire - Purple fournit un point de terminaison de basculement. Configurez le port de comptabilité sur UDP 1813 si vous souhaitez que les données de session soient transmises au moteur d'analyse de Purple, ce que je recommande vivement pour tout établissement où le temps de séjour et la durée des sessions sont des indicateurs significatifs. Un mot rapide sur les attributs RADIUS. Meraki respecte l'attribut Session-Timeout renvoyé dans la réponse RADIUS Access-Accept. Purple l'utilise pour contrôler la durée d'une session visiteur avant qu'une ré-authentification ne soit requise. Pour un hôtel, vous pouvez configurer cela sur 86 400 secondes - soit 24 heures. Pour un café, une durée d'environ 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 établissements à forte densité. Étape quatre : URL de la page de connexion. Accédez à Wireless, puis Configure, puis Splash page. Sélectionnez votre SSID visiteur dans le menu déroulant. Configurez l'option Custom splash URL avec l'URL du portail Purple pour votre établissement. 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 la négociation d'authentification. Ne modifiez pas et ne supprimez pas ces paramètres. Étape cinq : le walled garden. C'est là 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 visiteur 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. Retournez dans le menu Access Control pour votre SSID invité. Définissez 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 point purple point ai, et star point venuewifi point com. Deuxièmement, les domaines CDN que Purple utilise pour héberger les ressources du portail : star point cloudfront point net, et star point akamaihd point net. Troisièmement, l'infrastructure de redirection Meraki : star point network-auth point 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 point google point com, star point googleapis point com, star point gstatic point com. Pour Facebook : star point facebook point com, star point fbcdn point net, et connect point facebook point net. Pour Twitter ou X : star point twitter point com et star point twimg point com. Une remarque importante sur la façon dont Meraki gère les domaines avec caractères génériques (wildcards) dans le walled garden. Meraki prend en charge les entrées avec caractères génériques en utilisant le préfixe astérisque, par exemple star point cloudfront point net. Cependant, il s'agit d'une correspondance basée sur le DNS - Meraki résout le domaine et autorise les adresses IP résultantes. Cela signifie que pour les fournisseurs de CDN comme CloudFront ou Akamai, où les IP résolues peuvent changer fréquemment, vous devez utiliser le caractère générique du domaine plutôt que des plages d'adresses IP statiques. Les entrées d'adresses 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 par simple clic - sans RADIUS, uniquement l'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 de près de 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 augmentation mesurable des réservations directes. Le second scénario est une chaîne de vente au détail de 45 magasins, chacun équipé de points d'accès Meraki MR33. Le défi ici résidait 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 extrêmement chronophage. La solution a été d'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 SSID, RADIUS et de walled garden appropriés, puis nous avons lié les 45 réseaux de magasins à ce modèle. Tout changement, comme 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 outils d'analyse 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 commerciales une vue unique sur un tableau de bord du comportement des visiteurs par magasin, par région et par heure de la journée. Voici 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 IP du tableau de bord Meraki avant de configurer RADIUS. Les plages changent occasionnellement, et si votre pare-feu les bloque, l'authentification échouera silencieusement du point de vue de l'utilisateur - la page du portail restera simplement bloquée. Utilisez l'outil de test RADIUS intégré dans le tableau de bord sous la section 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 IP, pour tout contenu hébergé sur un CDN. Les plages 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 besoin pour le moment. Les données de session sont précieuses pour résoudre les problèmes de déconnexion et pour transmettre des indicateurs précis de temps de séjour à votre plateforme d'analyse. Cela ne coûte rien à activer et est très difficile à mettre en œuvre rétroactivement. Voici maintenant quelques questions rapides qui me sont régulièrement posées. 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 équipements MX gèrent l'authentification VPN client différemment. Pour le WiFi invité spécifiquement, vous configurez les SSID des MR. Qu'en est-il de WPA3 ? Les points d'accès Meraki MR prennent en charge WPA3 sur les SSID d'entreprise. Pour les déploiements de Captive Portal d'invités, le SSID est généralement Open, donc WPA3 ne s'applique 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 WPA3-Enterprise avec 802.1X, et c'est là que WPA3 devient pertinent. En résumé : l'intégration entre Cisco Meraki et Purple est éprouvée et fiable, mais elle nécessite une attention particulière sur trois points : le routage de l'adresse IP source RADIUS, l'exhaustivité du walled garden et la configuration du délai d'expiration de la 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 WiFi invité correctement configurée avec capture de données constatent régulièrement des retours mesurables en termes d'engagement marketing et d'analyses opérationnelles. 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 sont disponibles dans les notes de l'émission. Merci pour votre écoute. Si vous avez un scénario de déploiement spécifique que vous aimeriez que nous abordions, contactez l'équipe technique de Purple. À bientôt dans le prochain épisode.

📚 Fait partie de notre série principale : WiFi multi-tenant

Un Captive Portal est la page de connexion que les invités rencontrent avant de se connecter. Sur Cisco Meraki, les points d'accès et les appliances des séries MX et Z gèrent le WiFi depuis le tableau de bord Meraki, et Purple fournit ce Captive Portal sous forme de superposition cloud. Votre équipement Meraki reste exactement tel quel.

Comment le Captive Portal Cisco Meraki fonctionne avec Purple

Purple est une superposition cloud. Meraki achemine le trafic ; Purple héberge le portail et détient les données, via des mécanismes standards que le tableau de bord prend déjà en charge.

  • Authentification web externe. L'SSID pointe vers une splash page personnalisée hébergée par Purple, avec le mode splash configuré pour une connexion via un serveur RADIUS. Un nouvel appareil est bloqué au niveau du portail jusqu'à ce que le visiteur se connecte, puis Meraki le laisse passer.
  • RADIUS. Meraki valide chaque connexion par rapport au service RADIUS de Purple sur les ports standards, 1812 pour l'authentification et 1813 pour la comptabilisation (accounting). Le flux de comptabilisation alimente vos analyses de visiteurs.

Un walled garden, une courte liste d'adresses autorisées accessibles avant la connexion, permet de charger le portail et de finaliser les étapes de paiement ou de connexion via les réseaux sociaux.

Ainsi, Meraki déplace les paquets et Purple gère la connexion et les données. Comme cette approche repose sur une authentification web standard et RADIUS, elle fonctionne de la même manière sur Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Cambium, Extreme et Fortinet. Purple est indépendant du matériel par conception.

Ce dont vous avez besoin

  • Un réseau Cisco Meraki (point d'accès, série MX ou Z) avec un accès administrateur au tableau de bord Meraki.
  • Un site Purple avec votre splash page et votre parcours de connexion configurés.
  • Vos informations RADIUS Purple et les adresses de votre walled garden, depuis votre tableau de bord Purple.

Configurez-le avec Purple

Les paramètres exacts du tableau de bord, le mode splash de contrôle d'accès, les serveurs d'authentification et de comptabilisation RADIUS, le walled garden et les URL de la splash page sont documentés étape par étape dans le guide d'assistance de Purple, avec les valeurs précises à saisir.

Guide de configuration Cisco Meraki AP / MX / Z1

Suivez ce guide pour la configuration. Cette page explique comment le Captive Portal s'intègre, afin que vous sachiez ce que fait chaque paramètre.

Ce que vous obtenez

Une fois que les invités se connectent via votre Captive Portal Purple, chaque visite se transforme en données de première partie vérifiées et consenties : qui a visité, à quelle fréquence et comment les contacter avec leur autorisation. C'est la différence entre un WiFi qui connecte simplement les gens et un WiFi qui construit une audience marketing qui vous appartient. Purple est aligné sur le GDPR et certifié ISO 27001, avec une disponibilité de 99,999 % sur plus de 80 000 sites actifs.

Définitions clés

Captive Portal

La page de connexion qu'un visiteur voit avant de se connecter. Purple l'héberge et l'exécute ; Meraki y redirige les appareils.

Ce que Purple fournit en plus de votre WiFi Meraki.

Authentification web externe

Un mode de splash page qui redirige un appareil non authentifié vers une page de connexion hébergée en externe, puis reprend une fois que le visiteur s'est connecté.

Comment Meraki redirige l'invité vers le portail Purple.

RADIUS

Un protocole standard pour vérifier les connexions et enregistrer les données de session, sur les ports 1812 (authentification) et 1813 (comptabilisation).

Comment Meraki valide chaque invité auprès de Purple et alimente les analyses.

Walled garden

Une courte liste d'adresses autorisées qu'un appareil peut atteindre avant de s'être connecté.

Permet de charger le portail, les paiements et la connexion sociale avant l'authentification.

Splash page

La page que Meraki montre à un nouvel appareil ; configurée avec une URL externe, elle charge le Captive Portal Purple.

Le terme Meraki pour désigner la page vers laquelle pointe le Captive Portal.