Pfsense est à la base un routeur pare-feu issu de la distribution unix FreeBSD. Il est relativement facile et rapide à mettre en place et il est possible de lui rajouter des paquets supplémentaires via le gestionnaire de paquets afin de lui faire faire d’autres chose comme par exemple un serveur radius (freeradius) ou encore serveur proxy (squid).

 

Un portail captif est un dispositif qui permet de rediriger tous les clients HTTP d’un réseau vers une page web pour une authentification. Ces clients se trouvent sur le même réseau que le portail captif qui par le biais de son pare-feu, leur assigne des adresses IP.

Tous les clients qui veulent accéder à internet doivent donc passer par le portail captif et doivent ouvrir un navigateur. On retrouve le plus souvent ces systèmes dans des infrastructures wifi de supermarchés, de fast-foods, d’établissements scolaires ou encore d’entreprises et peut servir à plusieurs choses comme le blocage de sites, la journalisation de logs, la publicité ou encore faire accepter un règlement intérieur à l’infrastructure concernant la navigation sur un réseau wifi ouvert.

 


 

Installation et configuration de pfsense.

Si vous ne l’avez pas déjà fait, commencez par télécharger l’image de pfsense. Elle est disponible sur leur site à cette adresse : https://www.pfsense.org/download/

Vous pouvez l’installer soit à partir d’un cd gravé (cdburnerxp est un bon outil pour cela)

Soit monté sur une clé USB (rufus est un bon outil pour ça aussi).

 

Une fois démarré cela donne à peu près ceci.

0

Il y a un timer de 10 secondes au bout duquel le lancement de l’installation se lancera sur le premier choix, l’installation par défaut. Appuyer sur Entrer aura le même effet.

cap2

Vous arriverez donc sur un écran comme celui-ci si cela vous fait comme moi, sinon, il est possible que vous ayez une étape juste avant vous demandant de confirmer quelques paramètres graphiques (qui sont bons par défaut), mais cela n’est pas systématique en fonction de la machine qui fait tourner pfsense, j’ai eu l’étape sur la machine physique mais pas ici sur cette machine ci par exemple.

cap3

Ici, il faudra sélectionner le codage clavier. Il existe plusieurs codages clavier pour la France, mais a défaut de savoir lequel choisir j’ai préféré garder le codage clavier qwerty. Choisissons donc et « select ».

cap4 Pour le partitionnement, nous pouvons laisser en automatique si nous utilisons tout le disque, sinon vous pouvez prendre le mode manuel.

 

cap5L’installation est terminée, il propose d’ouvrir un Shell pour terminer quelques installations manuelles. Choisissez non, car les modifications Shell seront inutiles car, de toute façon au redémarrage on terminera ça.

cap6Ici pareil, on redémarre la machine.

 

ins1Le système a bien redémarré, nous passons donc à la configuration du réseau. Ici il demande si nous devons configurer les vlan, choisissez non, nous n’en auront pas besoin.

 

ins2Après les vlan, place aux interfaces, premièrement il demande quelle carte réseau attribuer au réseau WAN (réseau extérieur) pour moi c’est donc la carte pcn0. A noter que la carte ne sera pas la même pour vous que celle qui est sur la capture d’écran. La même chose pour le réseau LAN (réseau interne) pour moi ça sera donc la carte pcn1.

final (a modifier)Arrivé ici, il faut se rendre sur un pc situé sur le réseau LAN et se connecter à l’adresse du pfsense (dans mon cas 192.168.1.1). On peut également changer l’adresse LAN en appuyant sur 2, dans ce cas il faudra répéter les étapes précédentes. Il faut également vérifier que les interfaces correspondent bien à ce qui était initialement prévu (si WAN obtient bien son ip en dhcp entre autres).

CaptureUne fois l’IP saisie dans la barre d’adresse du navigateur du client, vous arriverez au menu de connexion. Les id de base sont:

  • admin
  • pfsense

Il est possible pour que l’interface soit différente pour vous, la mienne est celle de la dernière mise à jour, ce qui ne sera pas forcément le cas pour la vôtre.

Pour mettre à jour, rien de plus simple (quoi qu’en fait si, parce qu’il a tendance à rater ses mises à jour si on essaye de passer plusieurs versions d’un coup, mais suffit de lui redemander jusqu’au moment où tout passe).

update1On met donc à jour dans system>update>update settings et on prend la dernière version stable disponible. A la fin de l’installation le serveur va redémarrer et va vérifier toutes les 20 secondes s’il est prêt.

not ready.PNG

Il est également possible de changer la langue du système dans System > general setup

et trouver la rubrique langage pour changer en français.


Configuration du portail captif

Pour le portail captif, il y a plusieurs façons de procéder, mais je n’en retiendrais que deux :

  • Sans authentification, passage simple
  • avec authentification ldap active directory.

 

Pour la première façon, nous nous rendons directement dans la partie portail captif.

Services>portail captif

panel - portail captif

Il suffit de cocher la case Activer le portail captif et tout apparaît.

service-portailcaptif-enable

Et cocher de préférence fenêtre contextuelle de déconnexion.

truc a trucs a activer dans le portail captif

 

il suffit de sauvegarder et d’ouvrir un nouvel onglet.

portailcaptif vue user

Sur cette fenêtre on est même pas obligés de rentrer quoique ce soit, il suffit d’appuyer sur continue et on arrive sur la page désirée.


Portail avec authentification ldap/AD

Pour faire cela il va falloir passer par un serveur radius, il existe pour moi, deux moyens d’en faire un dans ce cas précis. Soit, utiliser Freeradius, une extension disponible sur le gestionnaire de paquet de pfsense, ou, utiliser un serveur radius de Windows serveur (ici 2K12 r2). Ayant perdu beaucoup de temps avec le paquet Freeradius de pfsense, qui n’est vraiment pas intuitif à mettre en place et qui apparaît totalement buggé sur mon pfsense, j’ai décidé d’installer un Windows serveur 2K12 et de lui coller une active directory basique et un serveur radius. Ce tuto est disponible ici

 

Une fois que nous avons notre active directory et notre serveur radius fonctionnels nous pouvons donc nous atteler à le relier au pfsense.

Tout d’abord, notre serveur radius/active directory doit toujours avoir l’adresse ip paramétrée, ici dans mon cas, elle sera toujours 192.168.92.123. On va donc réserver l’adresse ip avec son adresse mac. A noter que pour qu’une adresse puisse être réservée elle doit être hors d’une plage d’adresse ip.

on va donc dans service > serveur DHCP et tout en bas dans la rubrique mappages DHCP statiques … et à la fin cela devrait ressembler à cela. On clique donc sur ajouter.

dhcp2

Il est plus facile de faire la réservation depuis l’appareil à mapper car cela rend plus facile l’écriture de l’adresse mac dans la case (il suffit d’appuyer sur le bouton).

réservation dhcp - plus facile en faisant depuis le poste concerné

 

La réservation d’ip est terminée après un :

ipconfig /release
ipconfig /renew

Sur le serveur il récupère son adresse ip.

panel - portail captif

 

Dans les paramètres radius du portail captif, on remplit donc les rubriques authentifications, source d’authentification primaire et comptabilité. on peut également compléter la direction après URL.

bonus1

param radiusparam radius2

arrivé à ce point ci tous les éléments sont réunis pour que l’authentification se fasse.

il manque plus qu’à tester en enregistrant et en ouvrant un nouvel onglet.

portal

Après authentification on est automatiquement redirigé à l’adresse précisée si on l’a fait, pour ma part j’ai redirigé vers google pour que ça soit plus pratique, mais dans un établissement on peut rediriger vers la vie scolaire, dans un restaurant, fastfood vers la page pub etc. les possibilités sont infinies.

TADAM

On peut également vérifier si quelqu’un (et précisément qui) est connecté au portail captif et pouvoir le déconnecter pour le forcer à se reconnecter par exemple.

final portalvoici

 

 

 

 

2 commentaires sur « Installation de PfSense (portail captif) »

  1. Bonsoir , c’est un très bon tuto. Merci
    Mais j’ai une question à sur les commandes: ipconfig /release
    Et ipconfig /renew. On excute les deux commandes sur quelle invite de commande. Pfsense ou Windows serveur.

    Si la page d’authentification s’affiche on se connecte avec quel utilisateur et mot passé. Merci pour votre réponse

    Aimé par 1 personne

    1. Bonjour, merci de votre retour.
      Il faut le faire sur le périphérique qui est réservé, à noter que cette étape sert de test pour la réservation et peut être ignorée si l’adresse à réserver est celle déjà indiquée. (La première commande permettant de libérer l’adresse actuelle puis la seconde d’en redemander une nouvelle)

      J’aime

Laisser un commentaire