Académique Documents
Professionnel Documents
Culture Documents
CoovaChilli
CoovaChilli, fork (https://fr.wikipedia.org/wiki/Fork_(développement_logiciel)) du projet
abandonné ChilliSpot, est un portail captif.
Il permet de rediriger tous les clients HTTP d'un réseau vers une page web qui peut
demander une authenti!cation et/ou un paiement ou tout simplement demander d'accepter
les conditions d'utilisation avant d'accéder à Internet. Cette technique est souvent employée
pour les accès Wi-Fi et peut être utilisée aussi pour l'accès à des réseaux !laires (ex. hôtels,
campus etc.).
1. Pré-requis
2. Fonctionnement
Ceci est le schéma de fonctionnement par défaut :
________________ _____________
| Serveur | | |
| Hotspot | | Pc-Client |
|______________| | (Abonné) |
Internet | Radius-Mysql | )))Wifi((( ======> |
^ | ^ | ^ |___________|
| | | | |
V | V | V
DHCP ====Eth0===> CoovaChilli =Eth1===========>DHCP ou périphérique personnel.
3. Initialisation du reseau
3.1 Con!guration du SSH
En supposant que votre machine soit connectée à votre routeur ADSL () (serveur DHCP ()),
vous devrez trouver votre adresse IP en saisissant dans un terminal la commande suivante :
ip addr
https://doc.ubuntu-fr.org/coovachilli 2
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
Ou en ligne de commande :
mysql -u root -p
#Entrer le mot de passe de Mysql.
mysql> CREATE DATABASE radius;
mysql> quit
2. Importation de la base de données avec les tables créées par les fabricants de
Freeradius :
client localhost {
ipaddr = 127.0.0.1
[# explication commentée
#sur plusieurs lignes
#...]
secret = votre_secret_radius
#par defaut : testing123
}
Utilisez la fonction recherche Ctrl+W sur nano par exemple pour trouver les lignes dans
le !chier
https://doc.ubuntu-fr.org/coovachilli 4
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
https://doc.ubuntu-fr.org/coovachilli 5
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
Si les tests ci-dessus on réussi, vous pouvez désormais déplacer l'autorisation de la fonction
Fichier à la fonction MySql. Pour cela il faudra éditez le !chier /etc/freeradius/sites-
available/default et remplacer l’autorisation en commentant/décommentant3) comme ceci :
[...]
# unix
#
# Read the 'users' file
# files
#
# Look in an SQL database. The schema of the database
# is meant to mirror the "users" file.
#
# See "Authorization Queries" in sql.conf
sql
#
# If you are using /etc/smbpasswd, and are also doing
# mschap authentication, the un-comment this line, and
# configure the 'smbpasswd' module.
# smbpasswd
[...]
https://doc.ubuntu-fr.org/coovachilli 6
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
sql {
driver = "rlm_sql_mysql"
server = "localhost"(ou x.x.x.x l'ip de votre serveur mysql)
login = "Votre login mysql"
password = "le mot de passe de my sql"
radius_db = "radius"
[...]
https://doc.ubuntu-fr.org/coovachilli 7
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
$INCLUDE ${confdir}/sql.conf
authorize {
preprocess
chap
suffix
eap {
ok = return
}
# files ### Changer le manuellement
sql ### Changer le manuellement
pap
}
authenticate {
Auth-Type PAP {
pap
}
Auth-Type CHAP {
chap
}
Auth-Type eap {
eap {
handled = 1
}
}
# files ###Changer le manuellement
}
accounting {
detail
radutmp
https://doc.ubuntu-fr.org/coovachilli 8
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
4. Editez le !chier /etc/freeradius/radiusd.conf pour décommenter (~ ligne 683) :
echo "INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('mysqltest', 'Passwor
#Entrer le mot de passe de Mysql.
Coovachilli utilise "chillispot" comme nom d'utilisateur et "chillispot" comme mot de passe
pour se connecter au radius par défaut. Ajoutez également cet utilisateur dans la table
radcheck.
HS_ADMUSR=chillispot
HS_ADMPWD=chillispot
echo "INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('chillispot', 'Passwo
#Entrer le mot de passe de Mysql.
id UserName GroupName
1 utilisateur groupe
2 prof1 professeurs
3 élève1 élèves
https://doc.ubuntu-fr.org/coovachilli 9
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
5. Installationet con!guration de
Coovachilli
5.1 Installationde CoovaChilli à partir des !chiers
Sources
Pensez à véri!er les mises à jour et utilisez la dernière version. Version 1.4 au
15 déc 2016
sudo apt-get install -y g++ automake autoconf libtool libltdl-dev gengetopt make cmak
Clone du git
cd /tmp
git clone https://github.com/coova/coova-chilli/
cd coova-chilli/
https://doc.ubuntu-fr.org/coovachilli 10
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
Premier script
./bootstrap
Deuxième script : con!guration pour la compilation avec options (à rentrer ligne par ligne)
Installation
sudo -s
cp /etc/chilli/defaults /etc/chilli/config
mkdir /var/www/hotspot
cd /var/www/hotspot
cp /etc/chilli/www/* /var/www/hotspot
mkdir /var/www/hotspot/images
cp /var/www/hotspot/coova.jpg /var/www/hotspot/images/
mkdir /var/www/hotspot/uam
cd /var/www/hotspot/uam
: adresse introuvable :
wget http://ap.coova.org/uam/
wget http://ap.coova.org/js/chilli.js
exit
Vous donnerez ici l'adresse de l'interface local eth1 au dossier hotspot. Pour l'exemple il
s'agira de 192.168.1.1 :
Faites le pont entre l'interface eth0 qui héberge le serveur chilli et l'interface du réseau eth1
qui hébergera les client abonnés :
https://doc.ubuntu-fr.org/coovachilli 12
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
Elle va permettre de transférer ce qui arrive par le Wi! vers l’Ethernet
START_CHILLI=0
par
START_CHILLI=1
haserl=/usr/local/bin/haserl
HS_WANIF=eth0
HS_LANIF=wlan0
HS_NETWORK=192.168.10.0
HS_UAMLISTEN=192.168.10.1
HS_UAMALLOW=192.168.10.0/24
HS_SSID=PiHomeServerAP
...
HS_RADSECRET=testing123 # Set to be your RADIUS shared secret
https://doc.ubuntu-fr.org/coovachilli 13
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
Vous venez de copier le !chier de con!guration par défaults dans le !chier con!g . Pour
charger ces paramètres et démarrer le serveur Chilli, exécutez la commande suivante :
chilli -fd
Ensuite avec les dispositifs adéquats vous pourrez con!gurer et redémarrer le serveur Chilli.
5.4.2 Con!guration
Dans les exemples si dessous. L'adresse de l'interface réseau eth0 sera nommé
192.168.0.1 et les interfaces eth1 ou wlan0 seront nommées 192.168.1.1 .
Paramètres Explications
https://doc.ubuntu-fr.org/coovachilli 14
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
votre propre périphériqu
HS_LOC_AC=408 HS_LOC_AC=87000
Rendez-le exécutable :
$uamsecret = "votre_secret_UAM";
$userpassword=1;
print <<ENDHTML;
....Ici vous pourrez coder en Html.....
ENDHTML
https://doc.ubuntu-fr.org/coovachilli 16
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
Dans les réseaux informatiques, TUN et TAP sont des périphériques virtuels
dans le "Kernel réseau" (Noyaux réseau). Ce sont des dispositifs réseau qui sont
entièrement à la charge du logiciel. Ils sont di#érents des périphériques
réseaux ordinaires qui sont eux des adaptateurs réseaux matériel.
chmod +x /etc/chilli/ipup.sh
Dans la con!guration ci-dessus, vous avez relié le serveur DNS () au périphériques locaux.
C'est pourquoi, votre système doit posséder un serveur DNS () que vous pouvez installer à
partir de tasksel.
7. Con!guration
8. Utilisation
https://doc.ubuntu-fr.org/coovachilli 17
coovachilli [Wiki ubuntu-fr] 20/01/2023 21:17
9. Désinstallation
Pour désinstaller CoovaChilli saisissez dans un terminal les commandes suivantes :
sudo rm /var/lib/dpkg/info/coova-chilli.prerm
sudo dpkg --remove --force-remove-reinstreq coova-chilli
sudo dpkg --purge --force-remove-reinstreq coova-chilli
https://doc.ubuntu-fr.org/coovachilli 18