Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
coovachilli [Le 25/06/2011, 18:17] 85.69.165.172 [Pré-requis] |
coovachilli [Le 09/06/2024, 21:19] (Version actuelle) spnux [Voir aussi] MAJ du site officiel |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>wi-fi réseau sécurité portail_captif BROUILLON}} | + | {{tag>wifi réseau sécurité portail_captif BROUILLON}} |
---- | ---- | ||
====== CoovaChilli ====== | ====== CoovaChilli ====== | ||
- | **CoovaChilli** est un fork du projet de portail captif [[:chillispot|ChilliSpot]] désormais abandonné. | + | **CoovaChilli**, [[wpfr>Fork_(développement_logiciel)|fork]] du projet abandonné [[:chillispot|ChilliSpot]], est un **[[:portail captif]]**. |
- | <note tip> | + | |
- | Documentation toujours en cours de développement. Les Serveurs Freeradius, et CoovaChilli fonctionnent. Mais attention plusieurs informations sont erronés. En particulier le chapitre sur CoovaChilli. Alors ne vous lancer pas directement si vous n'avez pas d'expérience sur le sujet. | + | Il permet de rediriger tous les clients HTTP d'un réseau vers une page web qui peut demander une authentification 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 filaires (ex. hôtels, campus etc.). |
+ | |||
+ | Cette page visera à décrire : | ||
+ | * L'installation puis la configuration d'un serveur Freeradius et d' un serveur Freeradius-mysql (en version 2 uniquement ), | ||
+ | * L'installation puis la configuration d'un serveur [[http://coova.org/CoovaChilli/Binaries|Coova-chilli-1.2.6]], complété d'un par-feu, | ||
+ | * L'installation puis l'intégration d'une certification [[:tutoriel:securiser_apache2_avec_ssl|SSL]] à CoovaChilli, | ||
+ | * La personnalisation de la page d’accès. | ||
+ | |||
+ | <note tip>Les serveurs Freeradius et CoovaChilli fonctionnent cependant la documentation étant toujours en cours de développement, faites attention car plusieurs informations sont erronées, notamment le chapitre sur CoovaChilli. Alors ne vous lancez pas directement si vous n'avez pas d'expérience sur le sujet. | ||
</note> | </note> | ||
+ | |||
+ | |||
===== Pré-requis ===== | ===== Pré-requis ===== | ||
FIXME | FIXME | ||
- | ===Avant l’installation :=== | ||
* Tout pc avec 2 interfaces réseaux. | * Tout pc avec 2 interfaces réseaux. | ||
- | * Ubuntu 11.04, 10.10, 10.04 édition de bureau. ( i386 uniquement ). | + | * Un [[:lamp|serveur LAMP]]. |
- | * Un [[http://doc.ubuntu-fr.org/lamp|serveur LAMP]]. | + | * Un [[:dns|DNS]]. |
- | * Un [[http://doc.ubuntu-fr.org/dns|DNS]]. | + | |
- | + | ||
- | ===Pendant l’installation nous installerons et configurons : === | + | |
- | + | ||
- | * Un Serveur Freeradius et un serveur Freeradius-mysql (en version 2 uniquement ). | + | |
- | * Un Serveur [[http://coova.org/CoovaChilli/Binaries|Coova-chilli-1.2.6]], complété d'un par-feu. | + | |
- | * Installerons et intégrerons une certification [[http://doc.ubuntu-fr.org/tutoriel/securiser_apache2_avec_ssl|SSL]] a CoovaChilli . | + | |
- | * Verrons comment personnaliser la page d’accès. | + | |
+ | <note important>Le portail captif Coovachilli ne fonctionne qu'avec les édition d'Ubuntu 32 bits (X86 - i386) </note> | ||
===== Fonctionnement ===== | ===== Fonctionnement ===== | ||
+ | Ceci est le schéma de fonctionnement par défaut : | ||
+ | |||
<code> | <code> | ||
- | ________________ _____________ | + | ________________ _____________ |
- | | Serveur | | Pc-Client | | + | | Serveur | | | |
- | | Hotspot | | (Abonné) | | + | | Hotspot | | Pc-Client | |
- | |______________| |___________| | + | |______________| | (Abonné) | |
- | | Radius-Mysql | | Client | | + | Internet | Radius-Mysql | )))Wifi((( ======> | |
- | | | | | ^ | | + | ^ | ^ | ^ |___________| |
- | | | | | | | | + | | | | | | |
- | | V | | | | | + | V | V | V |
- | Internet ====>| CoovaChilli | <Eth1>=======<Eth0>========> | Wifi | | + | DHCP ====Eth0===> CoovaChilli =Eth1===========>DHCP ou périphérique personnel. |
- | ^ ^ | + | |
- | | | | + | |
- | <Eth0> <192.168.0.1><=Wifi=><192.168.0.2> | + | |
</code> | </code> | ||
+ | |||
+ | * Le périphérique **Eth0** a par exemple l'adresse IP **192.168.0.1** | ||
+ | * Le périphérique **Eth1** a par exemple l'adresse IP **192.168.1.1** | ||
+ | |||
===== Initialisation du reseau===== | ===== Initialisation du reseau===== | ||
- | ==== Configurations du SSH :==== | ||
- | En supposant que Ubuntu est connecté à votre routeur ADSL / serveur DHCP, vous devrez trouver votre adresse IP en entrant cette commande : | + | ==== Configuration 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_shell|commande]] suivante : | ||
<code>ip addr</code> | <code>ip addr</code> | ||
+ | FIXME Du mal à comprendre le rapport avec la configuration SSH. | ||
- | ==== Configuration du réseau : ==== | + | ==== Configuration du réseau : ==== |
- | Éditer le fichier __/etc/network/interfaces__ : | + | - [[:tutoriel:comment_modifier_un_fichier|Ouvrez avec les droits d'administration]] le fichier **/etc/network/interfaces** pour y ajouter ou modifiez les lignes suivantes :<file> |
- | Ajouter y les lignes suivantes : | + | # L'interface réseau de loopback |
- | + | ||
- | <code> | + | |
auto lo | auto lo | ||
iface lo inet loopback | iface lo inet loopback | ||
+ | # L'interface réseau principale en provenance du routeur | ||
auto eth0 | auto eth0 | ||
- | iface eth0 inet dhcp | + | iface eth0 inet dhcp |
- | auto eth1 | + | # L'interface réseau secondaire destinée aux clients |
- | </code> | + | auto eth1</file> |
- | <note>On indique ici que etho est relier au modem adsl/serveurdhcp. | + | |
- | Quand a eth1, il sera l'interface qui servira de passerelle avec les clients abonner | + | |
- | </note> | + | |
- | Il faut aussi activer le **net.ip4.ip_forward** dans le fichier __/etc/sysctl.conf__ (ligne 28) : | + | FIXME Si dans le fichier **/etc/network/interfaces** il y a d'autres nom d'interfaces tel que **ens160 et ens192** à la place de **eth0 eth1** conservez les sinon vous obtiendrez une erreur en tapant //service networking restart// pour relancer les interface réseaux. |
- | Décommenter ceci : | + | On indique ici que : |
- | <code> | + | * l'interface //eth0// sera reliée au modem adsl/serveur en mode dhcp. |
- | net.ip4.ip_forward=1 ### Changer le manuellement | + | * l'interface //eth1// sera celle qui servira de passerelle avec les clients abonnés. |
- | </code> | + | - [[:tutoriel:comment_modifier_un_fichier|Ouvrez avec les droits d'administration]] le fichier **/etc/sysctl.conf** pour activer ((décommenter en retirant le dièse #)) le paramètre //net.ip4.ip_forward//((ligne 28)). Vous devriez obtenir ceci : <file> |
- | + | # Uncomment the next line to enable packet forwarding for IPv4 | |
- | Relancez ensuite les interfaces réseaux : | + | net.ipv4.ip_forward=1</file> |
- | <code>/etc/init.d/networking restart | + | - Relancez ensuite les interfaces réseaux :<code>sudo service networking restart</code> |
- | </code> | + | =====Installationet configuration du serveur Radius ===== |
- | =====Installations et configuration du serveur Radius ===== | + | |
==== Téléchargement de Freeradius depuis les dépôts officiels ==== | ==== Téléchargement de Freeradius depuis les dépôts officiels ==== | ||
[[:tutoriel:comment_installer_un_paquet|Installez les paquets]] **[[apt>freeradius,freeradius-mysql|freeradius freeradius-mysql]]** | [[:tutoriel:comment_installer_un_paquet|Installez les paquets]] **[[apt>freeradius,freeradius-mysql|freeradius freeradius-mysql]]** | ||
- | ==== Installation de la base de donnée MySQL ==== | + | |
- | Création de la base de données pour stocker les noms d'utilisateurs et mots de passe : | + | Ou en ligne de commande : |
- | <code> | + | <code> sudo apt-get install freeradius freeradius-mysql -y</code> |
+ | ==== Installationde la base de donnée MySQL ==== | ||
+ | - Création de la base de données pour stocker les noms d'utilisateurs et mots de passe :<code> | ||
mysql -u root -p | mysql -u root -p | ||
#Entrer le mot de passe de Mysql. | #Entrer le mot de passe de Mysql. | ||
Ligne 89: | Ligne 93: | ||
mysql> quit | mysql> quit | ||
</code> | </code> | ||
- | Importation de la base de données avec les tables créées par les fabricants de Freeradius : | + | - Importation de la base de données avec les tables créées par les fabricants de Freeradius : <code> |
- | <code> | + | |
mysql -u root -p radius < /etc/freeradius/sql/mysql/schema.sql | mysql -u root -p radius < /etc/freeradius/sql/mysql/schema.sql | ||
mysql -u root -p radius < /etc/freeradius/sql/mysql/nas.sql | mysql -u root -p radius < /etc/freeradius/sql/mysql/nas.sql | ||
- | |||
mysql -u root -p | mysql -u root -p | ||
#Entrer le mot de passe de Mysql. | #Entrer le mot de passe de Mysql. | ||
mysql> GRANT ALL PRIVILEGES ON radius.* TO 'radius'@'localhost' IDENTIFIED BY 'le mot de passe de my sql'; | mysql> GRANT ALL PRIVILEGES ON radius.* TO 'radius'@'localhost' IDENTIFIED BY 'le mot de passe de my sql'; | ||
mysql> FLUSH PRIVILEGES; | mysql> FLUSH PRIVILEGES; | ||
- | mysql> quit | + | mysql> quit</code>**Si vous avez des doutes FIXME (Lesquels?) faites le en [[:sudo|Superutilisateur]]** |
- | </code> | + | - Exportez votre base de données pour vérifier : <code>mysqldump -u root -p radius > /home/'votre_nom_d'utilisateur'/backup.sql</code> |
- | <note> | + | - [[:tutoriel:comment_modifier_un_fichier|Modifiez avec les droits d'administration]] le paramètre suivant dans le fichier **/etc/freeradius/clients.conf** : <file> |
- | Si vous avez des doutes faites le en Superutilisateur. | + | |
- | Puis exporter votre base de donnée pour vérifier | + | |
- | <code>mysqldump -u root -p radius > /home/'votre_nom_d'utilisateur'/backup.sql | + | |
- | </code> | + | |
- | </note> | + | |
- | Dans le fichier __/etc/freeradius/clients.conf__, modifiez le paramètre suivant : | + | |
- | <code> | + | |
client localhost { | client localhost { | ||
ipaddr = 127.0.0.1 | ipaddr = 127.0.0.1 | ||
- | secret = votre_secret_radius | + | [# explication commentée |
+ | #sur plusieurs lignes | ||
+ | #...] | ||
+ | secret = votre_secret_radius | ||
+ | #par defaut : testing123 | ||
} | } | ||
- | </code> | + | </file>Utilisez la fonction recherche Ctrl+W sur nano par exemple pour trouver les lignes dans le fichier |
- | ===Réglage par défaut du fichier de configuration.=== | + | |
- | La configuration de Freeradius par défaut autorisent les noms d'utilisateurs et mots de passe à partir d'un **fichier** se trouvant dans __/etc/freeradius/users__. Nous devrions tester la configuration de FreeRadius par défaut avant de déplacer le lien d' autorisation provenant de la fonction **fichier** à la fonction **mysql**. | + | ===Réglage du fichier de configuration=== |
- | Nous allons ajouter un nom d'utilisateur et un mot de passe a notre fichier. Notre exemple sera : «John Doe » | + | |
- | Éditer donc le ficher __/etc/freeradius/users__ : | + | La configuration de Freeradius par défaut autorise les noms d'utilisateurs et mots de passe à partir d'un **fichier** se trouvant dans **/etc/freeradius/users**.\\ |
+ | Afin de tester cette configuration avant de déplacer le lien d' autorisation provenant de la fonction **fichier** à la fonction **mysql**, il sera pris pour exemple le nom d'utilisateur « John Doe » auquel le mot de passe « hello » lui sera associé. | ||
- | Dans un premier temps il faut décommenter les lignes suivantes : | + | Éditez le fichier **/etc/freeradius/users** pour décommenter les lignes suivantes : |
- | <code> | + | <file> |
- | "John Doe" Auth-Type := Local, User-Password == "hello" | + | # This is an entry for a user with a space in their name. |
- | Reply-Message = "Hello, %{User-Name}" | + | # Note the double quotes surrounding the name. |
- | </code> | + | # |
- | **À ce stade, vous devez redémarrer votre système.** | + | "John Doe" Cleartext-Password := "hello" |
- | ---- | + | Reply-Message = "Hello, %{User-Name}" |
- | ===Pour vérifiez les fichiers de configuration FreeRadius.=== | + | |
- | <code> | + | </file>puis redémarrez votre système. |
+ | <code>sudo shutdown -r now</code> | ||
+ | |||
+ | ===Vérifier les fichiers de configuration FreeRadius=== | ||
+ | - Dans un [[:terminal]] saisissez la [[:commande_shell|commande]] suivante:<code> | ||
sudo /etc/init.d/freeradius stop | sudo /etc/init.d/freeradius stop | ||
sudo freeradius -XXX | sudo freeradius -XXX | ||
- | </code> | + | </code>Si tout va bien la dernière ligne devrait afficher :<code> |
- | Si tout va bien la dernière ligne devrait afficher : | + | Mon Jun 20 18:33:54 2011 : Debug: Ready to process requests. |
- | <code> | + | </code>Appuyer sur les touches « Ctrl+C » de votre clavier pour quitter. |
- | Mon Jun 20 18:33:54 2011 : Debug: Ready to process requests. | + | - Redémarrez le serveur Freeradius : <code>sudo /etc/init.d/freeradius start</code> |
- | </code> | + | - Testez les autorisations du mot de passe précédemment configuré dans **/etc/freeradius/users** :<code> |
- | Appuyer sur les touches « Ctrl+C » de votre clavier pour quitter. | + | |
- | + | ||
- | Rédémarer le Server Freeradius : | + | |
- | <code>sudo /etc/init.d/freeradius start</code> | + | |
- | Nous allons pouvoir tester les autorisations du mot de passe précédemment configuré dans __/etc/freeradius/users__ : | + | |
- | <code> | + | |
sudo radtest "John Doe" hello 127.0.0.1 0 votre_secret_radius | sudo radtest "John Doe" hello 127.0.0.1 0 votre_secret_radius | ||
- | </code> | + | </code>Si tout va bien, vous devriez obtenir une réponse comme ceci :<code> |
- | Si tout va bien, vous devriez obtenir une réponse comme ceci : | + | |
- | + | ||
- | <code> | + | |
Sending Access-Request of id 136 to 127.0.0.1 port 1812 | Sending Access-Request of id 136 to 127.0.0.1 port 1812 | ||
User-Name = "John Doe" | User-Name = "John Doe" | ||
Ligne 156: | Ligne 148: | ||
Reply-Message = "Hello, John Doe" | Reply-Message = "Hello, John Doe" | ||
</code> | </code> | ||
- | ====Déplacement des autorisations pour intégrer MySql :==== | ||
- | Si les tests ci-dessus on réussi, nous pouvons désormais déplacer l'autorisation de la fonction **Fichier** à la fonction **MySql**. Pour cela il faudra éditez le fichier **__/etc/freeradius/sites-available/default__**. | + | ====Déplacement des autorisations pour intégrer MySql ==== |
+ | |||
+ | 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 fichier **/etc/freeradius/sites-available/default** et remplacer l’autorisation en commentant/décommentant((ajouter/ôter un dièse #)) comme ceci : | ||
+ | | Fichiers | == | files | remplacer par | # files | | ||
+ | | MySql | == | # sql | remplacer par | sql | | ||
+ | |||
+ | <file> | ||
+ | [...] | ||
+ | # 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 | ||
- | Et remplacer l’autorisation en commentant, décommentant comme ceci : | + | # |
- | | Fichiers | == | files | remplacer par | # files | | + | # If you are using /etc/smbpasswd, and are also doing |
- | | MySql | == | # sql | remplacer par | sql | | + | # mschap authentication, the un-comment this line, and |
+ | # configure the 'smbpasswd' module. | ||
+ | # smbpasswd | ||
+ | [...] | ||
+ | </file> | ||
- | <note>Vous pouvez utiliser une seule méthode d'autorisation à un moment, pas les deux. En conséquent la fonction **Fichier** a besoin d'être commenté. | + | <note important>Vous ne pouvez utiliser qu'une seule méthode d'autorisation à un moment, pas les deux. Par conséquent,la fonction **Fichier** a besoin d'être commentée. |
Par ailleurs Freeradius tentera toujours d'autoriser ** /etc/freeradius/users** avec la fonction** Fichier**, au lieu de la fonction **MySql**.</note> | Par ailleurs Freeradius tentera toujours d'autoriser ** /etc/freeradius/users** avec la fonction** Fichier**, au lieu de la fonction **MySql**.</note> | ||
- | ===Journalisation de MySQL :=== | + | ===Journalisation de MySQL :=== |
- | Si vous voulez utiliser des logiciels comme **ezRADIUS** ou **Admin Dialup** vous avez besoin d'activer la journalisation de MySQL. | + | Si vous voulez utiliser des logiciels comme **ezRADIUS** ou **Admin Dialup** vous avez besoin d'activer la journalisation de MySQL.\\ |
- | + | - Éditez le fichier **/etc/freeradius/sql.conf** pour modifier comme ceci :<file> | |
- | Editez le fichier __/etc/freeradius/sql.conf__ et remplacer : | + | |
- | <code> | + | |
sql { | sql { | ||
driver = "rlm_sql_mysql" | driver = "rlm_sql_mysql" | ||
Ligne 182: | Ligne 194: | ||
| | ||
} | } | ||
- | </code> | + | </file> |
- | <note>Il faut aussi décommenter la fonction **readclients**, pour permettre la lecture du client radius dans la base de donnée (table 'nas'). | + | - Décommentez la fonction **readclients** pour permettre la lecture du client radius dans la base de donnée (table 'nas') : <file>readclients = yes ###Changer le manuellement </file> |
- | <code>readclients = yes ###Changer le manuellement </code> | + | - Éditez le fichier **/etc/freeradius/sites-available/default** pour modifier comme ceci :<file> |
- | </note> | + | |
- | Ensuite éditer le fichier __/etc/freeradius/sites-available/default__ et modifier comme ceci : | + | |
- | <code> | + | |
$INCLUDE ${confdir}/sql.conf | $INCLUDE ${confdir}/sql.conf | ||
authorize { | authorize { | ||
Ligne 213: | Ligne 222: | ||
Auth-Type eap { | Auth-Type eap { | ||
eap { | eap { | ||
- | handled = 1 | + | handled = 1 |
} | } | ||
} | } | ||
Ligne 236: | Ligne 245: | ||
eap | eap | ||
} | } | ||
- | </code> | + | </file> |
+ | - Editez le fichier **/etc/freeradius/radiusd.conf** pour décommenter (~ ligne 683) : <file> | ||
+ | $INCLUDE sql.conf ### Changer le manuellement | ||
+ | </file> | ||
- | Il faut aussi éditer le fichier **/etc/freeradius/radiusd.conf** : | + | ====Ajouter un utilisateur dans la base de donnée MySql:==== |
- | + | ||
- | Et décommenter (pour moi a la ligne 683). | + | |
- | <code> | + | |
- | $INCLUDE sql.conf ### Changer le manuellement | + | |
- | </code> | + | |
- | ====Ajouter un utilisateur dans la base de donnée MySql:==== | + | |
- | Exemple : | + | Exemple : |
<code> | <code> | ||
echo "INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('mysqltest', 'Password', 'testsecret');" | mysql -u root -p radius | echo "INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('mysqltest', 'Password', 'testsecret');" | mysql -u root -p radius | ||
#Entrer le mot de passe de Mysql. | #Entrer le mot de passe de Mysql. | ||
</code> | </code> | ||
- | Coovachilli utilise "chillispot" comme nom d'utilisateur, avec aussi "chillispot" comme mot de passe pour se connecter au rayon par défaut. Ajouter cet utilisateur dans la table radcheck aussi. | + | 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//. |
- | Il faut le définir dans le fichier __/etc/chilli/config__ | + | Il faut le définir dans le fichier **/etc/chilli/config** FIXME Il n'existe pas de répertoire /chilli dans /etc sur Ubuntu 16.04.2 LTS |
<code> | <code> | ||
HS_ADMUSR=chillispot | HS_ADMUSR=chillispot | ||
HS_ADMPWD=chillispot | HS_ADMPWD=chillispot | ||
</code> | </code> | ||
- | Pour les insérer comme ceci : | + | Puis les insérer comme ceci : |
<code> | <code> | ||
echo "INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('chillispot', 'Password', 'chillispot');" | mysql -u root -p radius | echo "INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('chillispot', 'Password', 'chillispot');" | mysql -u root -p radius | ||
Ligne 264: | Ligne 270: | ||
</code> | </code> | ||
- | Ou d'une manière plus détaillé comme ceci : | + | Ou d'une manière plus détaillé comme ceci : |
== Table usergroup == | == Table usergroup == | ||
Ligne 280: | Ligne 286: | ||
=== Test de la configuration de Freeradius et de Mysql === | === Test de la configuration de Freeradius et de Mysql === | ||
- | Redémarrer le serveur radius. | + | Redémarrez le serveur radius: |
<code> | <code> | ||
sudo /etc/init.d/freeradius restart | sudo /etc/init.d/freeradius restart | ||
</code> | </code> | ||
- | Maintenant nous allons tester Freeradius, pour vérifier qu'il lit bien la base de données. | + | Vérifiez que Freeradius lit bien la base de données : |
<code> | <code> | ||
sudo radtest mysqltest testsecret 127.0.0.1 0 votre_secret_radius | sudo radtest mysqltest testsecret 127.0.0.1 0 votre_secret_radius | ||
Ligne 293: | Ligne 298: | ||
Si tout ce passe bien vous devriez avoir le message suivant, | Si tout ce passe bien vous devriez avoir le message suivant, | ||
- | |||
<code> | <code> | ||
Sending Access-Request of id 169 to 127.0.0.1 port 1812 | Sending Access-Request of id 169 to 127.0.0.1 port 1812 | ||
Ligne 304: | Ligne 308: | ||
</code> | </code> | ||
- | ---- | + | **Vous pouvez passer a l'[[#Installation_et_configuration_de_Coovachilli|installation de Coovachilli]].** |
- | **Nous pouvons passer a l'installation de Coovachilli.** | + | |
- | ===== Installation et configuration de Coovachilli ===== | + | |
- | ==== Installation de CoovaChilli a partir des fichiers Sources ==== | + | |
- | + | ||
- | Téléchargement de CoovaChilli. | + | |
+ | ===== Installationet configuration de Coovachilli ===== | ||
+ | ==== Installationde CoovaChilli à partir des fichiers Sources ==== | ||
+ | <note>Pensez à vérifier les mises à jour et utilisez la dernière version. Version 1.4 au 15 déc 2016</note> | ||
+ | Dans un [[:terminal]] saisissez les [[:commande_shell|commandes]] suivantes: | ||
+ | Installationdes prérequis : | ||
<code> | <code> | ||
- | wget http://ap.coova.org/chilli/coova-chilli_1.2.6_i386.deb | + | sudo apt-get install -y g++ automake autoconf libtool libltdl-dev gengetopt make cmake libssl-dev git |
+ | </code> | ||
+ | Clone du git | ||
+ | <code> | ||
+ | cd /tmp | ||
+ | git clone https://github.com/coova/coova-chilli/ | ||
+ | cd coova-chilli/ | ||
+ | </code> | ||
+ | Changement de branche pour acceder à la v 1.4 | ||
+ | <code> | ||
+ | git checkout -b 1.4 | ||
+ | git branch | ||
+ | </code> | ||
+ | Premier script | ||
+ | <code> | ||
+ | ./bootstrap | ||
+ | </code> | ||
+ | Deuxième script : configuration pour la compilation avec options (à rentrer ligne par ligne) | ||
+ | <code> | ||
+ | ./configure --prefix=/usr --mandir=\$${prefix}/share/man \ | ||
+ | --infodir=\$${prefix}/share/info \ | ||
+ | --sysconfdir=/etc --localstatedir=/var --enable-largelimits \ | ||
+ | --enable-binstatusfile --enable-statusfile --enable-chilliproxy \ | ||
+ | --enable-chilliradsec --enable-chilliredir --with-openssl --with-curl \ | ||
+ | --with-poll --enable-dhcpopt --enable-sessgarden --enable-dnslog \ | ||
+ | --enable-ipwhitelist --enable-redirdnsreq --enable-miniconfig \ | ||
+ | --enable-libjson --enable-layer3 --enable-proxyvsa --enable-miniportal \ | ||
+ | --enable-chilliscript --enable-eapol --enable-uamdomainfile \ | ||
+ | --enable-modules --enable-multiroute | ||
+ | </code> | ||
+ | Installation | ||
+ | <code> | ||
+ | make && make install | ||
</code> | </code> | ||
- | <note>Pour une version antérieur vous pouvez regarder sur [[http://www.coova.org/CoovaChilli|Coovachilli]]</note> | + | <note important>Les paquets préfabriqués de Coova-Chilli sont compilés pour i386.\\ |
- | + | Pour un PC 64bits et pour éviter les soucis d'identification (MD5, SHA, SSL,...), il faudra (pour le moment) compiler à partir des sources téléchargeables sur le site de Coova.org</note> | |
- | Dépaquetage et installation de CoovaChilli. | + | |
+ | ==== Installationdu packet haserl pour permettre au serveur chilli de rediriger les clients vers la page d'accueil ==== | ||
<code> | <code> | ||
- | sudo dpkg -i coova-chilli_1.2.6_i386.deb | + | cd /usr/src |
- | </code> | + | wget http://downloads.sourceforge.net/project/haserl/haserl-devel/haserl-0.9.35.tar.gz |
+ | tar zxvf haserl-0.9.35.tar.gz | ||
+ | cd haserl-0.9.35 | ||
+ | </code> | ||
+ | Compilation puis installation de Haserl | ||
+ | <code> | ||
+ | ./configure && make && make install | ||
+ | </code> | ||
==== Paramétrage du serveur hotspot ==== | ==== Paramétrage du serveur hotspot ==== | ||
Ligne 328: | Ligne 370: | ||
<code> | <code> | ||
+ | sudo -s | ||
cp /etc/chilli/defaults /etc/chilli/config | cp /etc/chilli/defaults /etc/chilli/config | ||
mkdir /var/www/hotspot | mkdir /var/www/hotspot | ||
Ligne 335: | Ligne 378: | ||
cp /var/www/hotspot/coova.jpg /var/www/hotspot/images/ | cp /var/www/hotspot/coova.jpg /var/www/hotspot/images/ | ||
mkdir /var/www/hotspot/uam | mkdir /var/www/hotspot/uam | ||
- | cd /var/www/hotspot/uam | + | cd /var/www/hotspot/uam</code> |
- | wget http://ap.coova.org/uam/ | + | FIXME : adresse introuvable : |
+ | <code>wget http://ap.coova.org/uam/ | ||
wget http://ap.coova.org/js/chilli.js | wget http://ap.coova.org/js/chilli.js | ||
+ | exit | ||
</code> | </code> | ||
- | Nous allons ici donner l'adresse de l'interface local eth1 au dossier hotspot. (l'exemple sera 192.168.1.1). | + | <note warning>Il n'y a plus les IP dans le scripte ChilliLibrary.js. Les modifications suivantes ne sont plus valides (les 3 commandes 'sed')\\ |
+ | Par contre vous devez re-adresser en local le scripte chilli.js\\ | ||
+ | sed -i 's/ap.coova.org\/js\/chilli.js/.\/chilli.js/g' /var/www/hotspot/uam/index.html</note> | ||
+ | Vous donnerez ici l'adresse de l'interface local eth1 au dossier **hotspot**. Pour l'exemple il s'agira de 192.168.1.1 : | ||
<code> | <code> | ||
sed -i 's/ap.coova.org\/js\/chilli.js/192.168.1.1\/uam\/chilli.js/g' /var/www/hotspot/uam/index.html | sed -i 's/ap.coova.org\/js\/chilli.js/192.168.1.1\/uam\/chilli.js/g' /var/www/hotspot/uam/index.html | ||
</code> | </code> | ||
- | Nous allons faire le point entre l'interface eth0 (qui héberge le serveur chilli), est l'interface du réseau eth1 qui hébergera les client abonnés. | + | 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 : |
- | + | ||
- | <note>Vous pouvez lui donner comme valeur a l'interface eth0 192.168.0.1/24, en effet 192.168.182.1 est la valeur par default </note> | + | |
<code> | <code> | ||
sed -i 's/192.168.182.1/192.168.1.1/g' /etc/chilli/www/ChilliLibrary.js | sed -i 's/192.168.182.1/192.168.1.1/g' /etc/chilli/www/ChilliLibrary.js | ||
sed -i 's/192.168.182.1/192.168.1.1/g' /var/www/hotspot/ChilliLibrary.js | sed -i 's/192.168.182.1/192.168.1.1/g' /var/www/hotspot/ChilliLibrary.js | ||
</code> | </code> | ||
+ | <note>Vous pouvez donner à l'interface //eth0// la valeur 192.168.0.1/24, la valeur 192.168.182.1 étant celle par defaut FIXME du mal à comprendre le sens de la phrase et les adresses </note> | ||
- | Maintenant il faut déplacer l'adresse ip de l'interface réseau **numéro 0** avec celle de l'interface réseau **numéro 1** de notre ordinateur. | + | ===Configuration de CoovaChill=== |
+ | A la fin du fichier **/etc/chilli/up.sh** ajouter la ligne : | ||
+ | <code>iptables -I POSTROUTING -t nat -o $HS_WANIF -j MASQUERADE</code> | ||
+ | Elle va permettre de transférer ce qui arrive par le Wifi vers l’Ethernet | ||
- | Pour cela il faudra donner à la fonction START_CHILLI la valeur 1. En éditant le fichier __/etc/default/chilli__. | + | Editer le fichier **/etc/default/chilli** et remplacer |
+ | <code>START_CHILLI=0</code> | ||
+ | par | ||
+ | <code>START_CHILLI=1</code> | ||
+ | Cela autorise le démarrage de CoovaChilli | ||
+ | |||
+ | Editer le fichier **/etc/chilli/wwwsh** et donner l’emplacement exact de haserl à la ligne 9 | ||
+ | <code>haserl=/usr/local/bin/haserl</code> | ||
+ | |||
+ | Editer le fichier **/etc/chilli/config** et modifier ces valeurs en fonction de votre réseau : | ||
<code> | <code> | ||
- | START_CHILLI=1 | + | 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 | ||
</code> | </code> | ||
- | Maintenant redémarer votre ordinateur. | + | Le détail des paramètres configurés : |
- | ---- | + | * HS_WANIF est l’interface reliée à Internet |
- | Nous allons tester si la configuration de résau c'est bien passer. En démarrant tout simplement le seveur Chilli. | + | * HS_LANIF est l’interface du Wifi/Hotspot |
+ | * HS_NETWORK le réseau du hotspot | ||
+ | * HS_UAMLISTEN la gateway du réseau du hotspot | ||
+ | * HS_UAMALLOW les IP du réseau du hotspot autorisées à se connecter | ||
+ | * HS_SSID le SSID (ne semble pas avoir d’effet) | ||
+ | * HS_RADSECRET la clée secrète du radius défini précédemment dans **/etc/freeradius/clients.conf** | ||
+ | Redémarrez votre ordinateur.\\ | ||
+ | Testez si la configuration de réseau s'est bien passée en démarrant tout simplement le serveur Chilli : | ||
<code> | <code> | ||
sudo /etc/init.d/chilli start | sudo /etc/init.d/chilli start | ||
</code> | </code> | ||
+ | |||
==== Configuration du serveur chilli ==== | ==== Configuration du serveur chilli ==== | ||
- | === Instruction : === | ||
- | Nous venons de copier le fichier de configuration par **défaults** dans le fichier **config** . Pour charger les paramètres et démarrer le serveur Chilli, exécutez __/etc/init.d/chilli start__. Cela va générer automatiquement des fichiers **main.conf**, **local.conf** et **hs.conf** dans le dossier__/etc/chili/__. Pour d'apporter des modifications aux paramètres à une date ultérieure, ré-exécutez un "chilli start". | + | === Instruction === |
- | <note>Le fichier d’initialisation __/etc/init.d/chilli__ du serveur chilli régénère **main.conf**. Lorsque vous démarrez le serveur chilli en mode débogage, on obtient le démarrage de Coovachilli sans la régénération de **main.conf**. Ainsi, le mode débogage permet d'éditer **main.conf** pour ensuite redémarrer le service normalement. | + | Vous venez de copier le fichier de configuration par **défaults** dans le fichier **config** . Pour charger ces paramètres et démarrer le serveur Chilli, exécutez la commande suivante : |
+ | <code>sudo service chilli start</code> | ||
+ | Cela va générer automatiquement des fichiers **main.conf**, **local.conf** et **hs.conf** dans le dossier **/etc/chili/**. Si vous apportez des modifications aux paramètres à une date ultérieure, ré-exécutez un "chilli start". | ||
- | Si vous souhaité redémarrer le serveur chilli en mode débogage il faudra donc taper ceci. | + | <note>Le script d’initialisation **/etc/init.d/chilli** du serveur chilli régénère un fichier **main.conf**. Lorsque vous démarrez le serveur chilli en mode débogage, on obtient le démarrage de Coovachilli sans la régénération de ce **main.conf**. Ainsi, le mode débogage permet d'éditer **main.conf** pour ensuite redémarrer le service normalement.\\ |
+ | Si vous souhaitez redémarrer le serveur chilli en mode débogage il faudra donc taper ceci. | ||
<code>/etc/init.d/chilli start --debug --fg</code> | <code>/etc/init.d/chilli start --debug --fg</code> | ||
+ | ou avec les dernières versions simplement : | ||
+ | <code>chilli -fd</code> | ||
</note> | </note> | ||
+ | Par défaut, il sera supposé que : | ||
+ | * le périphérique //eth0// sera relié à votre connexion internet. | ||
+ | * le périphérique //eth1// sera quand a lui l'interface (passerelle) que vous voudrez connecter avec des clients abonnés. | ||
+ | <note>Si ce n'était pas le cas, il faudra pratiquer par exemple un changement de configuration avec la fonction **HS_WANIF**((**W**ireless)) pour la relier à votre périphérique internet et relier également la fonction **HS_LANIF**((**L**an)) directement à votre périphérique WiFi.</note> | ||
- | Par défaut, il est supposé que le périphérique Ethernet « **eth0** » est relié sur votre connexion Internet. | + | Ensuite avec les dispositifs adéquats vous pourrez configurer et redémarrer le serveur Chilli. |
- | Le périphérique « **eth1** » est quand a lui l'interface (passerelle) que vous voulez connecter avec des clients abonnés. Si ce n'est pas le cas, il faut pratiquer un changement de configuration avec la fonction **HS_WANIF** pour la relié a votre périphérique Internet et aussi relié **HS_LANIF** directement à votre périphérique WiFi. (ceci est cité comme exemple). | + | |
- | + | ||
- | Ensuite avec les dispositifs adéquats vous pourrait configuré et redémarrez le serveur Chilli. | + | |
=== Configuration === | === Configuration === | ||
- | <note> | + | <note>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 .</note> |
- | Dans les exemples si dessous. L'adresse de l'interface réseau **eth0** sera nommé 192.168.**0**.1, quand aux interfaces **eth1** ou **wlan0** elles seront nommées 192.168.**1**.1 .</note> | + | |
- | Configuration du fichier __/etc/chilli/config__ : | + | Configuration du fichier **/etc/chilli/config**: |
- | + | ^Paramètres ^Explications ^ | |
- | | HS_WANIF=eth0 | Nom du périphérique WAN relié vers internet. Laisser le commenter si vous n'utilisé pas votre propre périphérique wifi. | | + | | HS_WANIF=eth0 | Nom du périphérique WAN relié vers internet. Laissez le commentaire si vous n'utilisez pas votre propre périphérique wifi. | |
| HS_LANIF=eth1 | Nom du périphérique relié au point d’accès client (eth1 ou wlan0) | | | HS_LANIF=eth1 | Nom du périphérique relié au point d’accès client (eth1 ou wlan0) | | ||
- | | HS_NETWORK=192.168.182.1/48 | 192.168.182.1/48 est l'adresse par défaut de l'interface eth0, vous pouvez lui donner une valeur comme 192.168.0.1/48 en précisant l'interface utiliser (1/48 de 1 à 48) | | + | | HS_NETWORK=192.168.182.0 | Définition du réseau d'accueil des clients, ici avec 192.168.182.0, on attribut aux clients des IP du type 192.168.182.x | |
| HS_NETMASK=255.255.255.0 | Masque du réseau hotspots | | | HS_NETMASK=255.255.255.0 | Masque du réseau hotspots | | ||
- | | HS_UAMLISTEN=192.168.1.1 | Adresse écoutée par l'interface eth1, wlan0 (peux ce représenter sous forme **ip** reseau ou comme ici d'**adresse** reseau). | | + | | HS_UAMLISTEN=192.168.182.1 | Adresse IP de la passerelle client (eth1 ou wlan0) - doit faire partie du réseau client | |
- | | HS_DNS1=208.67.222.222 | (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__) | | + | | HS_DNS1=208.67.222.222 | Le DNS de votre fournisseur d’accès. Laissez commenté pour utiliser la configuration par défaut. Les DNS utilisés seront alors ceux spécifiés dans votre fichier **/etc/resolv.conf** | |
- | | HS_NASID=nas01 | Décommenter sinon l’adresse 0.0.0.0 (NAS-IP-Address) apparaît dans les logs de freeradius | | + | | HS_NASID=nas01 | Décommentez sinon l’adresse 0.0.0.0 (NAS-IP-Address) apparaît dans les logs de freeradius | |
- | | HS_RADIUS=localhost | Ip ou nom de l’hôte local nous l'avons configurer dans__ /etc/freeradius/clients.conf__ (127.0.0.1) | | + | | HS_RADIUS=localhost | Ip ou nom de l’hôte local que vous avez configuré dans **/etc/freeradius/clients.conf** (127.0.0.1) | |
- | | HS_RADIUS2=localhost | Ip ou nom de l’hôte local nous l'avons configurer dans__ /etc/freeradius/clients.conf__ (127.0.0.1) | | + | | HS_RADIUS2=localhost | Ip ou nom de l’hôte local que vous avez configuré dans **/etc/freeradius/clients.conf** (127.0.0.1) | |
- | | HS_RADSECRET=testing123 | Notre secret radius nous l'avons configurer dans__ /etc/freeradius/clients.conf__ | | + | | HS_RADSECRET=testing123 | Votre secret_radius que vous avez configuré dans **/etc/freeradius/clients.conf** | |
| HS_UAMAAAURL=http://my-site/script.php | [[http://www.cisco.com/en/US/tech/tk59/technologies_tech_note09186a008069bdc5.shtml|(en) Documentation Cisco sur AAAURL]] | | | HS_UAMAAAURL=http://my-site/script.php | [[http://www.cisco.com/en/US/tech/tk59/technologies_tech_note09186a008069bdc5.shtml|(en) Documentation Cisco sur AAAURL]] | | ||
- | | HS_UAMDOMAINS=".paypal.com,.wikipedia.org" | Permet de filtré des noms des domaines ou DNS dans une "boite secrète" Attention ceci bloque l'accès au autres URL | | + | | HS_UAMDOMAINS=".paypal.com,.wikipedia.org" | Permet de filtrer des noms de domaine ou DNS dans une "boite secrète". Attention ceci bloque l'accès aux autres URL | |
- | | HS_SSID=<ssid> | Nom du réseau du SSID si vous utiliser la WIFI | | + | | HS_SSID=<ssid> | Nom du réseau du SSID si vous utilisez la WIFI | |
- | | HS_UAMSERVER= | Il faut remplace **$HS_UAMLISTEN** par l'adresse du périphérique eth0 (**$HS_NETWORK** ou 192.168.0.1) | | + | | HS_UAMSERVER= | Il faut remplacer **$HS_UAMLISTEN** par l'adresse du périphérique //eth0// (**$HS_NETWORK** ou 192.168.0.1) | |
- | | HS_UAMFORMAT= | Il faut remplacer l'ancienne syntax par un __https \$HS_UAMSERVER/uam/__ | | + | | HS_UAMFORMAT= | Il faut remplacer l'ancienne syntaxe par __https: \$HS_UAMSERVER/uam/__ | |
- | | HS_UAMSERVICE= | Il faut ajouter l'adresse du périphérique eth1 https://peripherique_eth1/cgi-bin/hotspotlogin.cgi | | + | | HS_UAMSERVICE= | Il faut ajouter l'adresse du périphérique //eth1// https://peripherique_eth1/cgi-bin/hotspotlogin.cgi | |
| HS_ADMUSR=chillispot | Nom du superutilisateur du serveur chilli (permet la jonction avec MySql). | | | HS_ADMUSR=chillispot | Nom du superutilisateur du serveur chilli (permet la jonction avec MySql). | | ||
| HS_ADMPWD=chillispot | Mot de passe du superutilisateur du serveur chilli (permet la jonction avec MySql). | | | HS_ADMPWD=chillispot | Mot de passe du superutilisateur du serveur chilli (permet la jonction avec MySql). | | ||
- | | HS_LOC_NETWORK="My Network" | Mon du réseau, ou SSID si vous utiliser la WIFI | | + | | HS_LOC_NETWORK="My Network" | Nom du réseau, ou SSID si vous utiliser la WIFI | |
| HS_LOC_AC=408 | HS_LOC_AC=87000 | | | HS_LOC_AC=408 | HS_LOC_AC=87000 | | ||
| HS_LOC_CC=1 | HS_LOC_CC=33 (suffix téléphonique +33) | | | HS_LOC_CC=1 | HS_LOC_CC=33 (suffix téléphonique +33) | | ||
- | | HS_LOC_ISOCC=US | HS_LOC_ISOCC=FR ( [[http://fr.wikipedia.org/wiki/ISO_3166-2|Voir doc wikipedia]] ) | | + | | HS_LOC_ISOCC=US | HS_LOC_ISOCC=FR ( [[https://fr.wikipedia.org/wiki/ISO_3166-2|Voir doc wikipedia]] ) | |
- | ==== Créez et configurer une page de connexion ==== | + | |
- | Nous avons besoin de créer une page de connexion. Heureusement, les créateurs de Coovachilli ont inclus hotspotlogin.cgi dans le packtage : | + | ==== Créer et configurer une page de connexion ==== |
- | + | ||
- | Pour trouver ce fichier, utilisez cette commande: | + | |
+ | Vous avez besoin de créer une page de connexion qu' heureusement les créateurs de Coovachilli fournisse avec le paquet .deb à travers le script **hotspotlogin.cgi**\\ | ||
+ | Pour trouver ce fichier, saisissez dans un [[:terminal]] la [[:commande_shell|commande]] suivante: | ||
<code> | <code> | ||
sudo find / | grep 'hotspotlogin.cgi' | sudo find / | grep 'hotspotlogin.cgi' | ||
</code> | </code> | ||
+ | L'exemple donné ici sera **/usr/share/doc/coova-chilli/hotspotlogin.cgi.gz**\\ | ||
- | Notre exemple ci dessous sera __/usr/share/doc/coova-chilli/hotspotlogin.cgi.gz__ | + | Créez un nouveau répertoire dans la racine du serveur Apache2 et copiez-y le fichier **hotspotlogin.cgi** |
- | + | ||
- | Maintenant nous allons créer un nouveau répertoire dans la racine du serveur Apache2, et copier hotspotlogin.cgi | + | |
<code> | <code> | ||
sudo mkdir -p /var/www/hotspot/cgi-bin | sudo mkdir -p /var/www/hotspot/cgi-bin | ||
zcat -c /usr/share/doc/coova-chilli/hotspotlogin.cgi.gz | sudo tee /var/www/hotspot/cgi-bin/hotspotlogin.cgi | zcat -c /usr/share/doc/coova-chilli/hotspotlogin.cgi.gz | sudo tee /var/www/hotspot/cgi-bin/hotspotlogin.cgi | ||
</code> | </code> | ||
- | Ensuite il faut le rendre exécutable : | + | Rendez-le exécutable : |
<code> | <code> | ||
sudo chmod a+x /var/www/hotspot/cgi-bin/hotspotlogin.cgi | sudo chmod a+x /var/www/hotspot/cgi-bin/hotspotlogin.cgi | ||
</code> | </code> | ||
- | Il faut éditer le script, __/var/www/hotspot/cgi-bin/hotspotlogin.cgi__, afin de décommenter et de modifiez le secret UAM comme ceci : | + | Editez le script **/var/www/hotspot/cgi-bin/hotspotlogin.cgi** afin de décommenter et de modifier le << secret UAM >> comme ceci : |
<code> | <code> | ||
$uamsecret = "votre_secret_UAM"; | $uamsecret = "votre_secret_UAM"; | ||
$userpassword=1; | $userpassword=1; | ||
</code> | </code> | ||
- | + | <note>Le langage de ce **.cgi** (Common Gateway Interface) étant du Perl((langage interprété par le navigateur, tout comme le Php, ou le Java Script)), si vous souhaitiez modifier le script, n'incluez pas de balise HTML classique. Editez-le comme ceci : | |
- | Si vous souhaiter modifiez le script, il ne faut pas inclure de balise HTML classique. | + | |
- | En effet le langage de ce **cgi** (Common Gateway Interface), est du Perl. | + | |
- | + | ||
- | <note>Le **Perl** est un langage interprété par le navigateur, tout comme le Php, ou le Java Script</note> | + | |
- | + | ||
- | Donc éditer le comme ceci : | + | |
<code> | <code> | ||
print <<ENDHTML; | print <<ENDHTML; | ||
- | ....Ici vous pourait coder en Html..... | + | ....Ici vous pourrez coder en Html..... |
ENDHTML | ENDHTML | ||
- | </code> | + | </code></note> |
===== Sécurité et certification d’authenticité ===== | ===== Sécurité et certification d’authenticité ===== | ||
- | ==== Installation du par-feu :==== | + | ==== Installationdu pare-feu :==== |
- | Les créateurs de CoovaChilli ont des règles prédéfinies pour iptables, mais leur script a besoin d'un peu d'aide avant que ça fonctionne. L' iptables de CoovaChilli est configuré dans le script __/etc/chili/ up.sh__ qui déclenche l'interface TUN/TAP mis en place. | + | Les créateurs de CoovaChilli ont des règles prédéfinies pour [[:iptables]], mais leur script a besoin d'un peu d'aide avant que ça fonctionne. L' iptables de CoovaChilli est configuré dans le script **/etc/chili/up.sh** qui déclenche l'interface TUN/TAP mise en place. |
+ | Ce déclenchement se fait en fonction du contenu du script **/etc/chili/ipup.sh** qui n'existe pas par défaut. Créez le fichier **/etc/chili/ipup.sh** si besoin est. | ||
- | <note>Dans les réseaux informatiques, TUN et TAP sont des périphériques virtuelles dans le "Kernel réseau" (Noyaux réseau). Ceux sont des dispositifs réseau qui sont entièrement à la charge du logiciel. Ils sont différents des périphériques réseaux ordinaires qui sont eux des adaptateurs réseaux matériel.</note> | ||
- | Nous allons donc aider Coova Chilli en ajoutant ces lignes à la fin du fichier __/etc/chilli/up.sh__ : | + | <note>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 différents des périphériques réseaux ordinaires qui sont eux des adaptateurs réseaux matériel.</note> |
+ | |||
+ | Pour "aider" Coova Chilli, ajoutez ces lignes à la fin du fichier **/etc/chilli/ipup.sh** : | ||
<code> | <code> | ||
[ -e "/var/run/chilli.iptables" ] && sh /var/run/chilli.iptables 2>/dev/null | [ -e "/var/run/chilli.iptables" ] && sh /var/run/chilli.iptables 2>/dev/null | ||
Ligne 479: | Ligne 549: | ||
Pour le rendre exécutable : | Pour le rendre exécutable : | ||
<code> | <code> | ||
- | chmod +x /etc/chili/up.sh | + | chmod +x /etc/chilli/ipup.sh |
</code> | </code> | ||
- | Dans la configuration ci-dessus, nous avons relié le serveur DNS au périphériques locaux. Ainsi, votre système doit posséder un serveur DNS. Vous pouvez l'installer à partir de [[http://doc.ubuntu-fr.org/tasksel|tasksel]]. | + | Dans la configuration 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|tasksel]]. |
+ | |||
+ | ==== Installationde la certification SSL au server Apache 2 ==== | ||
- | ==== Instalation de la certification SSL au server Apache 2 ==== | + | Suivre cette documentation : [[:tutoriel:securiser_apache2_avec_ssl]] |
===== Configuration ===== | ===== Configuration ===== | ||
Ligne 495: | Ligne 567: | ||
===== Désinstallation ===== | ===== Désinstallation ===== | ||
- | Pour désinstaller CoovaChilli il faut passer par c'est 3 commande : | + | Pour désinstaller CoovaChilli saisissez dans un [[:terminal]] les [[:commande_shell|commandes]] suivantes : |
<code> | <code> | ||
Ligne 504: | Ligne 576: | ||
===== Voir aussi ===== | ===== Voir aussi ===== | ||
- | * **(en)** [[http://www.coova.org/CoovaChilli|Site officiel]] | + | * **(en)** [[https://coova.github.io/CoovaChilli/|Site officiel]] |
- | * **(en-us)** [[https://help.ubuntu.com/community/WifiDocs/CoovaChilli|Documentaion Ubuntu Officiel ]] de Coova Chilli. | + | * **(en-us)** [[https://help.ubuntu.com/community/WifiDocs/CoovaChilli|Documentation Ubuntu Officiel ]] de Coova Chilli. |
* **(en)** [[http://linux.xvx.cz/2010/03/debian-wi-fi-hotspot-using-coovachilli-freeradius-mysql-and-daloradius/|linux.xvx.cz Documentation de Coova Chilli]] sous la distribution linux debian. | * **(en)** [[http://linux.xvx.cz/2010/03/debian-wi-fi-hotspot-using-coovachilli-freeradius-mysql-and-daloradius/|linux.xvx.cz Documentation de Coova Chilli]] sous la distribution linux debian. | ||
- | * **(en-hindou)** [[http://manajung.blogspot.com/2010/09/ubuntu-wi-fi-hotspot-using-coovachilli.html|Le Blogspot de Manajung]] qui nous explique comment installer Coova Chilli. | + | * **(en-hindou)** [[http://manajung.blogspot.com/2010/09/ubuntu-wi-fi-hotspot-using-coovachilli.html|Le Blogspot de Manajung]] qui explique comment installer Coova Chilli. |
| | ||
---- | ---- | ||
//Contributeurs principaux : [[utilisateurs:erwik666]], [[:utilisateurs:Herrleiche]], [[utilisateur:benjy4537]]// | //Contributeurs principaux : [[utilisateurs:erwik666]], [[:utilisateurs:Herrleiche]], [[utilisateur:benjy4537]]// |