Apportez votre aide…
Ceci est une ancienne révision du document !
Chillispot : portail captif
Présentation
Chillispot est un portail captif. Il a pour rôle dans un premier temps de distribuer les adresses IP aux clients qui se connectent sur le Hotspot, puis dans un second temps de capturer toutes les requêtes à destination du web. Il force ainsi le client à passer par la page de demande d’authentification. Il n’est pas possible de passer outre, seuls les sites de dimension iT et la page d’authentification de Chillispot sont autorisés sans être, au préalable, authentifié sur le serveur Radius. Chillispot peut à la fois être installé sur une machine, via les paquets téléchargeables sur le site officiel, mais peut également être flashé dans un routeur compatible (du type Linksys WRT-54G) au moyen d’un firware spécifique (DD-WRT).
Installation
Pré requis
- Deux cartes réseau (interface LAN et publique)
- serveur web apache2
- générateur de certificats
- freeradius (authentification)
- iptables (pare-feu)
Installez les paquets :
apt-get install apache2 apache-ssl phpmyadmin mysql-server freeradius freeradius-mysql
Configuration Réseau (module TUN/TAP)
Vous avez besoin du module tun.o (inclus dans les sources du kernel depuis les versions >= 2.4.7). Ubuntu/Debian ne crée pas le périphérique "tun" automatiquement. Taper les commandes suivantes pour la création d'une interface « tun » :
mkdir /dev/net mknod /dev/net/tun c 10 200 modprobe tun
Installation de la partie applicative
Vérifier que le fichier /etc/modules.conf contient la ligne suivante :
alias char-major-10-200 tun
- installez le paquet chillispot
- Configuration du cgi
On copie le fichier cgi fourni dans le répertoire adéquat :
cp /usr/share/doc/chillispot/hotspotlogin.cgi.gz /usr/lib/cgi-bin/ cd /usr/lib/cgi-bin gunzip hotspotlogin.cgi.gz chmod a+x hotspotlogin.cgi.gz
(vous pourrez éditer ce fichier une fois chillispot fonctionnel afin de personnalisez l'installation)
Configuration
- Dans le fichier /usr/lib/cgi-bin/hotspotlogin.cgi, décommenter et modifier le paramètre suivant :
$uamsecret = "secretchilli" /* secret partagé entre le CGI hotspotlogin.cgi et le daemon chilli */
- Dans le fichier /etc/chilli.conf, décommenter et modifier les paramètres suivants :
net 192.168.1.0/24 | ou laisser commenter pour utiliser la configuration par défaut 192.168.182.0/24 |
dns1 10.187.36.3 | (le DNS de mon Fournisseur d’accès) ou laisser commenté pour utiliser la configuration par défaut ( les DNS spécifiés dans votre /etc/resolv.conf) |
radiuslisten 127.0.0.1 | Décommenter sinon l’adresse 0.0.0.0 (NAS-IP-Address) apparaît dans les logs de freeradius |
radiusserver1 127.0.0.1 | IP du serveur d’authentification |
radiusserver2 127.0.0.1 | IP du serveur d’authentification Radius |
radiussecret secretradius | secret partagé entre le serveur Radius et le daemon chilli |
Radiusnasid portail | identifiant de votre chillispot |
radiuslocationid | isocc=fr,cc=33,ac=87000,network=MonESSID |
dhcpif eth1 | nom de l’interface reliée au point d’accès |
uamserver https://ipdevotreserveur/cgi-bin/hotspotlogin.cgi | ou mettre https://192.168.182.1/cgi-bin/hotspotlogin.cgi si vous utilisez la configuration par défaut. |
Uamsecret secretchilli | mettre le même secret que dans le fichier /usr/lib/cgi-bin/hotspotlogin.cgi |
Uamlisten 192.168.1.1 | adresse écoutée |
uamallowed localhost www.yahoo.fr | Url autorisée |
Configuration du firewall
cp /usr/share/doc/chillispot/firewall.iptables /etc/chilli.iptables chmod u+x /etc/chilli.iptables
Vous devez avoir à l'intérieur :
EXTIF="eth0" /* interface reliée à Internet */ INTIF="eth1" /* interface reliée au point d'accès */
Si ce n’est pas déjà fait, activer le forwarding entre les interfaces réseau. Vérifier que la ligne suivante existe dans le fichier /etc/network/options :
ip_forward=yes
relancez ensuite les interfaces réseaux
/etc/init.d/networking restart
Dans le fichier /etc/freeradius/clients.conf, modifier le paramètre suivant :
client 127.0.0.1 { #secret = testing123 secret = secretradius /* mettre le même secret partagé que dans le fichier /etc/chilli.conf */
Liens et sources
- (fr) ébauche, inspiré du livre blanc http://www.guellec.fr/ressources/rapports/documentation_hotspot.pdf</note>
Auteur : erwik666 / Contributeur : Herrleiche.