Brique vpn » Historique » Révision 27
« Précédent |
Révision 27/38
(diff)
| Suivant »
david.daugareil, 10/03/2019 17:41
Brique vpn¶
Séance du samedi 9 mars 2019.
Il s'agit d'installer sur un raspberry pi un client VPN et un hotspot wifi.
Installation du système¶
Télécharger le zip contenant l'image de Raspbian Lite : https://www.raspberrypi.org/downloads/raspbian/
Extraire l'image avec p7zip par exemple :
7z x nom-de-l-image-raspbian-stretch-lite.zip
Identifier le périphérique correspondant à sa carte micro SD :
sudo fdisk -l
insérer la carte micro SD et refaire la même manip, le device supplémentaire est la carte micro SD.
Copier l'image sur la micro SD (X est la lettre du device de l'étape précédente) :
sudo dd bs=4M if=/chemin-de-l-image/nom-de-l-image-raspbian-stretch.img of=/dev/sdX conv=fsync status=progress
/!\ créer un fichier vide ssh à la racine de la partition boot de la carte SD pour activer le démon SSH sur le pi
Trouver la PI sur le réseau¶
Ne pas brancher la PI et afficher la liste des IPS dispos sur le réseau
sudo arp-scan -l --interface wlp4s0
ici, wlp4s0 est le nom de l'interface WiFi
Autre méthode possible avec nmap (à adapter en fonction de votre IP privée) :
nmap -sP 192.168.1.*
Brancher la PI et relancer la commande précédente de votre choix. Normalement une nouvelle IP est apparue, c'est celle de votre PI.
Se connecter au PI :
ssh pi@<IP_DE_MON_PI>
Mot de passe par défaut : raspberry
Première connexion au PI¶
Changer le mot de passe par défaut avec la commande :
passwd
Mettre à jour du système
sudo apt update && sudo apt upgrade
Installer openvpn, hostapd et dnsmasq
sudo apt install openvpn hostapd dnsmasq
Redémarrer le PI
sudo reboot
Configuration du point d'accès¶
Mise en place d'un IP statique sur l'interface WiFi, éditer le fichier dhcpcd.conf avec vi, vim, nano...selon vos préférences :
sudo vi /etc/dhcpcd.conf
A la fin du fichier ajouter, avec l'IP privée de votre choix (ici 172.16.10.1) :
interface wlan0 static ip_address=172.16.10.1/24 nohook wpa_supplicant
Remarque : dhcpcd exécute tous les scripts du répertoire '/lib/dhcpcd/dhcpcd-hooks' dans l'ordre croissant. L'option nohook wpa_supplicant empèche le script du même nom de s'exécuter et à wpa_supplicant de prendre la main sur le WiFi.
Enregistrer et redémarrer le démon dhcpcd
sudo service dhcpcd restart
Le message suivant s'affiche : Warning: dhcpcd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
Faire :
sudo systemctl daemon-reload sudo service dhcpcd restart
Configuration du serveur DHCP, editer le fichier dnsmasq.conf
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig sudo touch /etc/dnsmasq.conf sudo vi /etc/dnsmasq.conf
Et y mettre :
interface=wlan0 # Interface WiFi - habituellement wlan0 dhcp-range=172.16.10.100,172.16.10.120,255.255.255.0,24h
Ici pour wlan0, nous allons fournir des adresses IP entre 172.16.10.100 et 172.16.10.120, avec un temps de location de 24 heures.
Configuration de hostapd :
sudo touch /etc/hostapd/hostapd.conf sudo vi /etc/hostapd/hostapd.conf
Y coller :
interface=wlan0 driver=nl80211 ssid=SonicLeHerisson hw_mode=g channel=6 ieee80211d=1 country_code=FR ignore_broadcast_ssid=0 wmm_enabled=0 macaddr_acl=0 wpa_passphrase=lemotdepassedeouf auth_algs=1 wpa=2 wpa_key_mgmt=WPA-PSK rsn_pairwise=CCMP
Je mets le détail ici car hostapd n'aime pas trop les commentaires dans le fichier de conf :
- interface=wlan0 # l'interface utilisée par l'AP
- driver=nl80211 # nl80211 avec tous les drivers Linux mac80211 => https://wireless.wiki.kernel.org/en/users/drivers
- ssid=SonicLeHerisson # petit nom du hotspot
- hw_mode=g # mode Wi-Fi (a = IEEE 802.11a, b = IEEE 802.11b, g = IEEE 802.11g)
- channel=6 # le canal utilisé
- ieee80211d=1 # limiter les fréquences utilisées à celles autorisées dans le pays
- country_code=FR # l'indicatif du pays
- ignore_broadcast_ssid=0 # envoyer les SSID vides dans les balises et ignorer les trames de requête de sonde qui ne le font pas
- wmm_enabled=0 # pas de QoS
- macaddr_acl=0 # pas d'authentification basée sur l'adresse MAC de la station
- wpa_passphrase=lemotdepassedeouf # la phrase de passe
- # WPA2 Personnel, AES
- auth_algs=1
- wpa=2
- wpa_key_mgmt=WPA-PSK
- rsn_pairwise=CCMP
Puis éditer '/etc/default/hostapd' pour modifier la ligne DAEMON_CONF :
sudo vi /etc/default/hostapd DAEMON_CONF="/etc/hostapd/hostapd.conf"
Et on démarre/redémarre tout ce beau monde fraîchement configuré :
sudo systemctl start hostapd
Le message suivant s'affiche : Failed to start hostapd.service: Unit hostapd.service is masked.
Continuer :
sudo systemctl unmask hostapd sudo systemctl start hostapd sudo systemctl restart dnsmasq
Remarque : A partir de maintenant, il est possible de se connecter sur le hotspot qui doit maintenant être visible, il n'y a pas encore d'accès au NET, c'est normal.
Activer le démon hostapd au démarrage et redémarrer pour vérifier si tout ce qui a était fait jusqu'à présent persiste :
sudo systemctl enable hostapd sudo reboot
le VPN¶
Récupérer le fichier de configuration du VPN d'Aquilenet et le copier dans /etc/openvpn avec l'extension *.conf
scp /chemin-vers-le-fichier-de-conf/aqn.ovpn pi@<IP-DU-PI>:/tmp
sudo mv /tmp/aqn.ovpn /etc/openvpn/aqn.conf
Créer un fichier nommé secret qui contiendra le loggin et mdp du VPN :
cd /etc/openvpn && sudo touch secret sudo chmod 600 secret
L'éditer pour y mettre loggin et mdp :
sudo vi secret
loggin-du-vpn mot-de-passe-du-vpn
Tester la bon fonctionnement du VPN :
sudo systemctl start openvpn@aqn sudo systemctl status openvpn ifconfig traceroute www.debian.org
Si tout est au vert, on valide le démon openvpn :
sudo systemctl enable openvpn@aqn
Mis à jour par david.daugareil il y a presque 6 ans · 27 révisions