Table des matières
Raspberry : Créer un point d'accès wifi avec RaspAP
Présentation
La Raspberry possède deux interfaces réseaux :
- une interface filaire avec un connecteur RJ45,
- une interface Wifi.
Ces deux interfaces permettent au Raspberry de se connecter à un réseau existant. Mais grâce à son interface Wifi, il est possible de créer un réseau Wifi en le configurant en point d'accès Wifi. Une solution possible est d'installer et de configurer le logiciel hostapd.
Ressources
- Site Github de RasAP : https://github.com/billz/raspap-webgui
Préparation du Raspberry
Le Raspberry doit être connecté en filaire et disposer d'une adresse IP.
- lancez le terminal et tapez la commande ifconfig pour visualiser les adresses IP du Raspberry :
pi@raspberrypi:~ $ ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.161 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::483a:1a71:19ce:cc56 prefixlen 64 scopeid 0x20<link> ether b8:27:eb:ab:ff:60 txqueuelen 1000 (Ethernet) RX packets 457569 bytes 653807911 (623.5 MiB) RX errors 0 dropped 202 overruns 0 frame 0 TX packets 228668 bytes 28678038 (27.3 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1 (Boucle locale) RX packets 37 bytes 2164 (2.1 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 37 bytes 2164 (2.1 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.171 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::90a1:81b6:d71e:dc4c prefixlen 64 scopeid 0x20<link> ether b8:27:eb:fe:aa:35 txqueuelen 1000 (Ethernet) RX packets 2216 bytes 374554 (365.7 KiB) RX errors 0 dropped 2 overruns 0 frame 0 TX packets 129 bytes 12139 (11.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 pi@raspberrypi:~ $
Explications :
- eth0 est le nom de l'interface filaire. Ici l'adresse IP est 192.168.1.161 et le masque de sous-réseau est 2555.255.255.0;
- l0 est le nom de l'interface de bouclage (loopback) : 127.0.0.1 et le masque de sous-réseau est 2555.0.0.0;
- wlan0 est le nom de l'interface wifi. Ici l'adresse IP est 192.168.1.171 et le masque de sous-réseau est 2555.255.255.0;
- les adresse IP de eth0 et de wlan0 ont été fournies au Raspberry par le serveur DHCP du réseau local (ici la box internet)
- l'interface eth0 permettra d'être connecté au réseau local et son adresse IP ne changera pas.
- l'interface Wlan0 va être utilisée comme point d'accès public. Son adresse IP sera alors différente. Le Raspberry va se comporter comme serveur DHCP pour attribuer une adresse IP aux ordinateurs qui vont se connecter sur le point d'accès Wifi.
- Visualisez la configuration actuelle du wifi du Raspberry
pi@raspberrypi:~ $ cat /etc/wpa_supplicant/wpa_supplicant.conf ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=FR network={ ssid="ssid_actuel" psk="motdepassen" key_mgmt=WPA-PSK } pi@raspberrypi:~ $
- Editez ce fichier pour ne gardez que les trois premières lignes et supprimez les lignes correspondantes à network. Voici ce que doit maintenir contenir le fichier /etc/wpasupplicant/wpasupplicant.conf :
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=FR
Mise à jour du Raspberry
Avant toute installation de nouveaux logiciels, il est recommandé de mettre à jour le Raspberry :
pi@raspberrypi:~ $ sudo apt update ... pi@raspberrypi:~ $ sudo apt upgrade
Installation du point d'accès
L'installation du point d'accès est basée :
- sur le logiciel hostapd,
- sur l'interface Web RaspAP : https://github.com/billz/raspap-webgui
- Dans le terminal, tapez la commande suivante :
pi@raspberrypi:~ $ wget -q https://git.io/voEUQ -O /tmp/raspap && bash /tmp/raspap
Après redémarrage du Raspberry, visualisez sa nouvelle configuration IP :
pi@raspberrypi:~ $ ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.161 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::483a:1a71:19ce:cc56 prefixlen 64 scopeid 0x20<link> ether b8:27:eb:ab:ff:60 txqueuelen 1000 (Ethernet) RX packets 3304 bytes 253979 (248.0 KiB) RX errors 0 dropped 12 overruns 0 frame 0 TX packets 3505 bytes 2939796 (2.8 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Boucle locale) RX packets 21 bytes 1448 (1.4 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 21 bytes 1448 (1.4 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.3.141.1 netmask 255.255.255.0 broadcast 10.3.141.255 inet6 fe80::90a1:81b6:d71e:dc4c prefixlen 64 scopeid 0x20<link> ether b8:27:eb:fe:aa:35 txqueuelen 1000 (Ethernet) RX packets 256 bytes 68835 (67.2 KiB) RX errors 0 dropped 1 overruns 0 frame 0 TX packets 82 bytes 11516 (11.2 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 pi@raspberrypi:~ $
- l'adresse IP de wlan0 est maintenant 10.3.141.1
- pour se connecter au point d'accès Wifi :
- le SSID est : raspi-webgui
- le mot de passe est : ChangeMe
- pour se connecter à l'interface d'administration à l'adresse http://10.3.141.1, utilisez les identifiants suivants :
- Username: admin
- Password: secret
- Le serveur DHCP configuré par RasAP, distribue des adresses IP dans la plage 10.3.141.50 à 10.3.141.255
A partir de l'interface d'administration de RasAP, vous pouvez modifier la configuration du point d'accès Wifi (nom SSID, mot depasse, DHCP, etc.).
Modification du mot de passe Wifi
- accédez au menu Configure Hotspot puis à l'onglet Security :
Visualisation la configuration du serveur DHCP
Le logiciel RaspAP gère un service DHCP qui permet aux clients qui se connecte sur le point d'accès Wifi d'obtenir une configuration IP.
- accédez au menu Configure DHCP Server :
Vous pouvez maintenant permettre à un ordinateur ou un portable :
- de se connecter au point d'accès Wifi
- et d'accéder au réseau local et à internet.
Supprimer RaspAP
Pour supprimer le logiciel RaspAP, lancez le script uninstall.sh situé dans le dossier de publication de RaspAP-Webui
$ sudo /var/www/html/installers/uninstall.sh
Puis désactiver le lancement du logiciel au démarrage :
$ sudo systemctl disable raspap.service $ sudo reboot