Projet authentification wifi et logging http/https

De WIKI Les fourmis du libre
Révision de 10 janvier 2015 à 14:50 par Simon (discussion | contributions) (Page créée avec « Cette page rassemble mes pensées pour la mise en place d'une solution wifi avec filtrage de site web et logging. ==== Cahier des charges ==== - Authentif... »)

(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)
Aller à : navigation, rechercher

Cette page rassemble mes pensées pour la mise en place d'une solution wifi avec filtrage de site web et logging.

Cahier des charges

       - Authentification des utilisateurs avant de rentrer sur le wifi
       - Logging surf http/https des connexions circulant sur le wifi
       - Pouvoir autoriser ou interdire un site en fonction d'un groupe   (3 groupes principaux).

Il existe X solutions de "portail captif sur internet", exemple: pfsense

Il est possible avec pfsense d'activer la fonction de portail captif, une fois connectée nous récupérons les nom d'utilisateurs et adresse mac associer.

Pour faire du surf et filter il faut activer le squid transparent avec un squidguard pour filter les site.


MAIS PROBLÈME :

Raire du proxy transparent http est facile, par contre, faire du proxy transparent https est beaucoup plus compliquée.

Si je veux par exemple bloquer facebook, je peut bloquer http://facebook.com mais pas https://facebook.com je ne peut pas.

Je ne peut également pas bloquer en fonction de du groupe


Voilà donc ma principale problématique, filtrer le SSL.

Me voila donc à réfléchir sur la façon de filtrer et logger du ssl.


Filtre, logging par dns

Concepts: Pour surfer un client demande a un dns l'adresse sur site sur lequelle il va naviguer. C'est une technique aléatoire, en effet j'ai découvert que certaine application utilise diretement l'adresse ip pour surfer. Le problème également est que l'utilisateur peut par exemple entrer l'adresse ip de facebook dans sont c:\windows\system32\etc\driver\hosts et réussi a naviguer. Cette technique nécessite egalement de laisser le port 443 grand ouvert, beurk.



Filtrer par adresse ip

Concepts: avec iptables bloquer directement l'adresse ip du site internet. C'est la méthode qu'utilise sonicwall pour filter en transparent. Je n'aime pas cette méthode, oui car, imaginons je veut bloquer https://sono-syrius.fr, je bloque son adresse ip et ainsi potentiellement d'autre si internet hébergeut sur ce serveur, car oui ce site est hébergée sur un mutualiser. Ce serveur tri les site avec un virtualhost et donc utilise une même adresse ip pour plusieurs sites.



Filtrer avec Squid ssl bump (proxy transparent https)

La méthode est décrite ici: http://thejimmahknows.com/squid-3-1-caching-proxy-with-ssl/ Concepts: Comment squid fait il pour intercepter du surf https:

CLIENT ---ssl_squid---->SQUID---real_ssl---->FACEBOOK_HTTPS Une technique appelée MAN IN THE MIDDLE (C'est la même technique q'une attaque pirate)

Problème : il nécessite l'installation d'un ca root. Comment ca marche: le principe est d'installer une nouvelle autoritée de certification sur la machine. De plus certaine application utilise leurs propre liste de d'autoritée de certification et il n'est pas possible d'en installer d'autre. cette technique ne fonctionne pas également avec les site qui utilise le SNI De plus cette méthode est très controverser et essaie constamment d'être détectée par les liste web.


Filtrer avec Squid Authentifiant

Cette solution n'est pas trop mal. Le principe est de monter un squid avec authentification ldap. Cumulée avec un wpad. Une petit popup demande le nom d'utilisateur et le mot de passe lors de la connexion

Avantage: plus besoin de portail captif, permet

Inconvénient: malheureusement, peu d'application supporte le proxy authentifiant, notamment les téléphone androïd ...


Portail captif avec Squid en mode non transparent

Et oui ce sera la solution que j'ai choisis, en effet cette méthode est la méthode recommandée et prise en charge par la plupart des navigateurs, appareil mobile, application etc ...

Méthode :

Authentification avec un portail captif (capable d'intercepter du protocole proxy également)

J'ai choisis packetfence, ce NAC en effet me permettra de basculer l'utilisateur dans un vlan différent en fonction d'un groupe.

Packetfence permet également une authentification 802.1X comme sur Cette vidéo

Une fois authentifiée l'utilisateur devra sois activer la détection automatique du proxy dans son navigateur si celui-ci le prend en charge, sois rentrer le proxy manuellement.

Pour faciliter la vie des utilisateurs, si le proxy n'est pas configurée, l'utilisateur sera automatiquement redirigée sur une page expliquant comment l'activer.

Le proxy autorisera ensuite si oui ou non un site est autorisé en fonction du vlan d'où il vient et donc du groupe.


J'aurais apprécié une solution sans configuration de la part de l'utilisateur, mais cela sera toujours une méthode "crade" �