← Retour au portail
🎯 TUTORIEL PAS À PAS

🔐 DĂ©ploiement d'un portail captif sur pfSense 2.8.1

📅 Mis Ă  jour : AoĂ»t 2026 ⏱ DurĂ©e : 25-30 min 📋 Niveau : IntermĂ©diaire đŸ”· pfSense 2.8.1 🔐 Portail captif 🌐 RĂ©seau

Ce tutoriel vous guide pas à pas dans la mise en place d'un portail captif sur pfSense 2.8.1. Le portail captif permet de forcer les utilisateurs à s'authentifier (via un nom d'utilisateur/mot de passe, un code d'accÚs, ou un simple clic d'acceptation) avant d'accéder à Internet. Cette fonctionnalité est trÚs utilisée pour les réseaux invités, les hÎtels, les espaces publics ou les zones Wi-Fi sécurisées.[reference:0][reference:1]

📌 PrĂ©requis :
  • Un serveur ou une VM avec pfSense 2.8.1 dĂ©jĂ  installĂ© et configurĂ©.
  • Une interface rĂ©seau dĂ©diĂ©e pour le rĂ©seau invitĂ© (ex: OPT1, GUEST).
  • AccĂšs Ă  l'interface web de pfSense (https://IP_PFSENSE).

1 Préparation de l'interface réseau

Étape 1 – Identifier l'interface dĂ©diĂ©e
Avant de configurer le portail captif, assurez-vous que l'interface sur laquelle il sera activé est correctement configurée. Il peut s'agir d'une interface physique (ex: OPT1) ou d'une interface VLAN créée pour le réseau invité.
Si vous utilisez un VLAN, celui-ci doit ĂȘtre créé et assignĂ© au prĂ©alable.[reference:2]
Rendez-vous dans Interfaces > Assignments pour vérifier la présence de l'interface.
Étape 2 – Configurer l'IP de l'interface
Assurez-vous que l'interface dispose d'une adresse IP statique dans un sous-réseau dédié (ex: 192.168.100.1/24). C'est sur cette IP que les clients seront redirigés vers le portail.
💡 Conseil : Utilisez un sous-rĂ©seau diffĂ©rent de votre rĂ©seau LAN principal pour isoler les invitĂ©s et faciliter la gestion des rĂšgles de pare-feu.

2 Création de la zone Captive Portal

Une zone définit un portail captif indépendant, avec ses propres paramÚtres d'authentification, sa page de connexion et ses rÚgles.[reference:3]

Étape 1 – AccĂ©der Ă  la configuration du portail captif
Dans l'interface web de pfSense, naviguez vers Services > Captive Portal.
C'est là que sont gérées toutes les zones du portail captif.[reference:4][reference:5]
Étape 2 – Ajouter une nouvelle zone
Cliquez sur le bouton Ajouter.
Zone name    : GUEST_PORTAL
Description  : Portail captif pour les invités
🔍 Explication :
  • Le nom de la zone doit ĂȘtre composĂ© de lettres, chiffres et underscores uniquement.[reference:6]
  • La description est facultative mais utile pour identifier la zone.
# Exemple de nom de zone valide :
GUEST_PORTAL
Cliquez sur Save & Continue.

3 Configuration de la zone

Étape 1 – Activer le portail captif
Dans la page de configuration de la zone, cochez la case Enable captive portal.
Sélectionnez l'interface sur laquelle le portail sera actif (ex: OPT1 ou le VLAN invité).[reference:7]
✅ Le portail captif est activĂ© sur l'interface sĂ©lectionnĂ©e.
Étape 2 – Choix de la mĂ©thode d'authentification
pfSense propose plusieurs méthodes d'authentification pour le portail captif.[reference:8]
MéthodeDescriptionCas d'usage
None (Click-Through)L'utilisateur doit simplement cliquer sur un bouton d'acceptation.Réseaux publics avec conditions d'utilisation.
Local User Manager / VouchersAuthentification avec des comptes locaux ou des codes d'accÚs (vouchers).HÎtels, conférences, accÚs temporaires.
RADIUS AuthenticationAuthentification via un serveur RADIUS externe.Environnements avec annuaire centralisé.
🔍 Pour ce tutoriel : Nous allons utiliser la mĂ©thode Local User Manager / Vouchers pour une gestion simple des utilisateurs.
Sélectionnez Local User Manager / Vouchers dans le champ Authentication Method.
Étape 3 – Configuration des timeouts
Configurez les durées de session pour les utilisateurs authentifiés.[reference:9]
ParamÚtreDescriptionValeur recommandée
Idle timeoutDurée d'inactivité avant déconnexion (en minutes).30
Hard timeoutDurée maximale de session (en minutes).480 (8h)
Traffic quotaVolume de données maximum (en Mo).Laissez vide pour illimité.
Étape 4 – Sauvegarder la configuration
Cliquez sur Save en bas de la page pour enregistrer la configuration de la zone.
✅ La zone est maintenant configurĂ©e.

4 Création des utilisateurs locaux

Si vous avez choisi l'authentification locale, vous devez créer des comptes utilisateurs dans le User Manager.[reference:10]

Étape 1 – AccĂ©der au gestionnaire d'utilisateurs
Naviguez vers System > User Manager.
Étape 2 – Ajouter un utilisateur
Cliquez sur Add pour créer un nouvel utilisateur.
Username  : visiteur1
Password  : MotDePasseFort
Full name : Visiteur 1
Group     : Aucun (laissez vide)
🔍 Explication :
  • Le nom d'utilisateur et le mot de passe seront utilisĂ©s pour se connecter au portail captif.
  • Les utilisateurs doivent avoir le privilĂšge Captive Portal Login s'ils appartiennent Ă  un groupe.
Cliquez sur Save pour créer l'utilisateur.
Étape 3 – CrĂ©er plusieurs utilisateurs
Répétez l'opération pour chaque utilisateur nécessitant un accÚs au réseau invité (ex: visiteur2, visiteur3, etc.).

5 Personnalisation de la page de connexion

pfSense permet de personnaliser la page de connexion du portail captif. Vous pouvez utiliser une page HTML existante ou en créer une avec un logo et des messages personnalisés.[reference:11][reference:12]

Étape 1 – AccĂ©der Ă  la page de personnalisation
Dans la configuration de votre zone (Services > Captive Portal), cliquez sur l'icĂŽne ✏ (Edit) Ă  cĂŽtĂ© du nom de la zone, puis allez dans l'onglet Portal Page.
Étape 2 – Choisir le type de page
Deux options s'offrent Ă  vous :
  • Portal page contents : un Ă©diteur HTML intĂ©grĂ© pour modifier la page directement.
  • Upload file : importer un fichier HTML existant.
Étape 3 – Exemple de page personnalisĂ©e (HTML)
Voici un exemple de code HTML pour une page de connexion simple avec un logo et un message de bienvenue.
<!DOCTYPE html>
<html>
<head>
    <title>Bienvenue - Réseau invité</title>
    <style>
        body { font-family: Arial, sans-serif; background: #f0f0f0; text-align: center; padding: 50px; }
        .container { background: white; padding: 30px; border-radius: 10px; max-width: 400px; margin: auto; }
        input { display: block; width: 100%; padding: 10px; margin: 10px 0; border: 1px solid #ccc; border-radius: 5px; }
        button { background: #007bff; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; }
    </style>
</head>
<body>
    <div class="container">
        <img src="/logo.png" alt="Logo" style="max-width:150px;">
        <h2>Bienvenue sur le réseau invité</h2>
        <p>Veuillez vous identifier pour accéder à Internet.</p>
        <form method="post" action="$PORTAL_ACTION$">
            <input type="text" name="auth_user" placeholder="Nom d'utilisateur">
            <input type="password" name="auth_pass" placeholder="Mot de passe">
            <input type="hidden" name="redirurl" value="$PORTAL_REDIRURL$">
            <button type="submit" name="accept">Se connecter</button>
        </form>
    </div>
</body>
</html>
🔍 Explication :
  • $PORTAL_ACTION$ : variable automatiquement remplacĂ©e par l'URL de traitement.
  • $PORTAL_REDIRURL$ : variable qui contient l'URL de redirection aprĂšs authentification.
  • Les champs auth_user et auth_pass sont utilisĂ©s pour l'authentification.[reference:13]
Étape 4 – TĂ©lĂ©verser ou coller le code
Collez votre code HTML dans l'éditeur ou téléversez votre fichier, puis cliquez sur Save.

6 Test du portail captif

Étape 1 – Connecter un client au rĂ©seau invitĂ©
Connectez un ordinateur ou un smartphone au réseau (Wi-Fi ou Ethernet) correspondant à l'interface sur laquelle le portail captif est activé.
Étape 2 – Ouvrir un navigateur
Depuis le client, ouvrez un navigateur web et tentez d'accĂ©der Ă  n'importe quel site Internet. Vous devriez ĂȘtre automatiquement redirigĂ© vers la page de connexion du portail captif.
https://IP_DU_PORTAIL:8002 ou l'IP de l'interface du portail captif
Étape 3 – S'authentifier
Saisissez les identifiants d'un utilisateur créé précédemment (ex: visiteur1 / MotDePasseFort) et validez.
✅ L'utilisateur est authentifiĂ© et peut maintenant accĂ©der Ă  Internet.
Étape 4 – VĂ©rifier les sessions actives
Dans l'interface pfSense, naviguez vers Status > Captive Portal pour visualiser les utilisateurs connectés, leur durée de session et le trafic consommé.[reference:14]
✅ La liste des sessions actives s'affiche.

💡 Bonnes pratiques et astuces

1. Sécuriser le portail captif
  • Utilisez HTTPS pour la page de connexion afin de protĂ©ger les identifiants.
  • Activez le hard timeout pour limiter la durĂ©e des sessions.
  • Configurez des rĂšgles de pare-feu pour restreindre l'accĂšs des invitĂ©s aux ressources internes.
2. Gérer les vouchers (codes d'accÚs temporaires)
Si vous utilisez la méthode Vouchers, vous pouvez générer des codes d'accÚs à usage unique ou limités dans le temps.
# Accéder à la génération de vouchers :
Services > Captive Portal > [Zone] > Vouchers
🔍 Explication : Les vouchers sont idĂ©aux pour des accĂšs temporaires (hĂŽtels, Ă©vĂ©nements).[reference:15]
3. Limiter la bande passante
Dans la configuration de la zone, vous pouvez définir des limites de bande passante (Bandwidth up et Bandwidth down) pour chaque utilisateur.
💡 Conseil : Limitez le dĂ©bit Ă  1 Mbit/s pour les invitĂ©s afin de prĂ©server les performances du rĂ©seau principal.[reference:16]
4. Redirection aprĂšs authentification
Vous pouvez configurer une URL de redirection aprÚs une authentification réussie en utilisant le champ After authentication redirect URL dans les paramÚtres de la zone.

✅ Test de validation

🎉 Installation rĂ©ussie si :

  • La page de connexion du portail captif s'affiche lorsqu'un client tente d'accĂ©der Ă  Internet.
  • Les utilisateurs créés peuvent s'authentifier avec succĂšs.
  • Les sessions actives sont visibles dans Status > Captive Portal.
  • Les invitĂ©s n'ont pas accĂšs aux ressources internes (selon les rĂšgles de pare-feu configurĂ©es).

📚 Ressources complĂ©mentaires