CoovaChilli

De NCad Wiki
Aller à la navigation Aller à la recherche

Présentation

CoovaChilli est un portail captif. Lorsque les utilisateur tente d'accéder à Internet, ils sont redirigés vers une page web les invitant à s'authentifier. L'authentification est alors gérée par un serveur Radius qui indique au portail captif si l'utilisateur est autorisé à accéder à Internet.

Maquette

Le tutoriel suivant se basera sur la topologie suivante :

Maquette CoovaChili

Voici le plan d'adressage :

  • 10.0.0.0/26 : Réseau LAN câblé dont fait partit le serveur hébergeant le portail captif (10.0.0.40) ainsi que le serveur radius (10.0.0.41).
  • 10.0.0.64/26 : Réseau WLAN wifi dont fait partit le serveur hébergeant le portail captif (10.0.0.65) ainsi que les machines clientes (au moins une pour les tests).

Installation

Prérequis

Il est nécessaire de disposer de deux cartes réseaux. Par défaut, ces dernières seront détecté comme ceci :

  • eth0 : carte réseau connecté sur Internet;
  • eth1 : carte réseau connecté au LAN.

L'installation nécessite également un serveur Radius fonctionnel. FreeRadius est un serveur gratuit compatible.

Installation

  • Télécharger l'archive .deb sur le site du développeur :

wget http://ap.coova.org/chilli/coova-chilli_1.3.0_i386.deb

  • Installer le paquet précédemment téléchargé :

dpkg -i coova-chilli_1.3.0_i386.deb

  • Pour fonctionner, CoovaChilli a besoin du module haserl :

apt-get install haserl

Configuration

Lancement au démarrage du serveur

  • Editer le fichier /etc/default/chilli puis rechercher la ligne suivante :
START_CHILLI=0
  • Remplacer par :
START_CHILLI=1

Configuration du DHCP

  • Editer le fichier /etc/chilli/default.conf puis rechercher et adapter les paramètres IP suivants :
HS_LANIF=eth1              # Interface d'écoute du portail captif
HS_NETWORK=10.1.0.0        # Adresse de réseau du portail captif
HS_NETMASK=255.255.255.0   # Masque de sous-réseau du portail captif
HS_UAMLISTEN=10.1.0.1      # Adresse IP du portail captif
  • Adapté à la topologie plus haut, cela donne ceci :
HS_LANIF=eth1              # Interface d'écoute du portail captif
HS_NETWORK=10.0.0.64       # Adresse de réseau du portail captif
HS_NETMASK=255.255.255.192 # Masque de sous-réseau du portail captif
HS_UAMLISTEN=10.0.0.65     # Adresse IP du portail captif

Configuration des paramètres du radius

Pour la configuration du serveur RADIUS, vous pouvez vous reporter à cette article.

  • Rechercher et adapter les lignes suivantes :
HS_NASID=aurila-monique.net.ncad.fr
HS_RADIUS=10.0.0.51
# HS_RADIUS2=localhost # Nous n'avons pas de second serveur dans notre topologie
HS_UAMALLOW=travaux.ncad.fr,wiki.ncad.fr,www.ncad.fr,www.tisseo.fr,mobi.tisseo.fr,www.ncad.sx,www.sncf.com,www.legifrance.gouv.fr,www.justice.gouv.fr,www.impots.gouv.fr,www.wifi.glx,www.ncad.glx,www.securite.glx # Quelques sites autorisés sans login
HS_RADSECRET=MotDePasseRad # Phrase secrète partagée avec le Radius
HS_UAMSECRET=change-me
HS_UAMALIASNAME=aurila-monique

Démarrage du service

  • Pour démarrer le service, il suffit de lancer la commande suivante :

service chilli start

  • Lorsque le service est bien initialisé, l'interface tun0 doit être montée avec les paramètres IP définis précédemment :

ifconfig tun0
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
. inet addr:10.0.0.65 P-t-P:10.0.0.65 Mask:255.255.255.192
. UP POINTOPOINT RUNNING MTU:1500 Metric:1
. RX packets:0 errors:0 dropped:0 overruns:0 frame:0
. TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
. collisions:0 txqueuelen:100
. RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)