[Dernière mise à jour: 28/03/19]

Dans ce petit tutoriel, nous allons transformé notre Raspberry Pi en point d’accès Wifi, ceci dans le but de nous connecter dessus et d’accéder à internet en utilisant sa connexion filaire Ethernet ou pour pouvoir utiliser les applications qui y sont installés dessus comme par exemple notre Plex Media Server 🙂

Pour réaliser cela, il nous faut au préalable avoir installé, configuré et mis à jour Raspbian.

Au moment où j’écris ce tutoriel, la version de Raspbian est la 2018-11-13 Raspbian Stretch Lite Kernel version 4.14.

Connectez vous en SSH à votre Raspberry Pi, ensuite :

1. Installation des packages :

Exécutez la commande suivante : sudo apt-get install dnsmasq hostapd -y

Une fois dnsmasq installé, exécutez les commandes suivantes pour stopper les services non configurés :

sudo systemctl stop dnsmasq
sudo systemctl stop hostapd

Et redémarrez le avec la commande : sudo reboot now

2. Configuration de l’interface sans fil (wlan) :

Éditez le fichier « dhcpcd.conf » avec la commande : sudo nano /etc/dhcpcd.conf

A la fin de ce fichier ajoutez :

interface wlan0
static ip_address=192.168.4.1/24
static routers=192.168.4.1
static domain_name_servers=8.8.8.8

Tapez ctrl+o puis ENTER pour sauvegarder les changements, tapez ctrl+x pour quitter l’éditeur.

Redémarrez le service avec le commande suivante : sudo service dhcpcd restart

3. Configuration de HOSTAPD :

Éditez le fichier « hostapd.conf » avec la commande : sudo nano /etc/hostapd/hostapd.conf

Dans ce fichier ajoutez :

interface=wlan0
driver=nl80211
hw_mode=g
channel=7
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
ssid=RPiAP
wpa_passphrase=mypassword

Vous pouvez changer la valeur des deux dernières lignes afin de mettre le ssid et le mot de passe de votre choix.

Tapez ctrl+o puis ENTER pour sauvegarder les changements, tapez ctrl+x pour quitter l’éditeur.

Entrez ensuite la commande suivante : sudo nano /etc/default/hostapd

Trouvez la ligne #DAEMON_CONF=""  et changez la en  DAEMON_CONF="/etc/hostapd/hostapd.conf"

Tapez ctrl+o puis ENTER pour sauvegarder les changements, tapez ctrl+x pour quitter l’éditeur.

4. Configuration du DNSMASQ :

Éditez le fichier « dnsmasq.conf » avec la commande : sudo nano /etc/dnsmasq.conf

A le fin de ce très long fichier ajoutez le code ci-dessous.

Truc : Descendez en bas du ficher avec  la touche « Page Down ».

interface=wlan0
domain-needed
bogus-priv
dhcp-range=192.168.4.8,192.168.4.250,12h

Tapez ctrl+o puis ENTER pour sauvegarder les changements, tapez ctrl+x pour quitter l’éditeur.

5. Configuration de l’IP Table (optionnelle – Personnellement pas tester) :

Cette opération est optionnelle, faite la seulement si vous souhaitez que les appareils connectés à votre Point d’accès puissent accéder à internet.

Entrez la commande : sudo nano /etc/sysctl.conf

Supprimez le # au début de la ligne containant net.ipv4.ip_forward=1

Configurez maintenant  le NAT (Network address translation). Vous pouvez le faire en utilisant les commandes suivantes :

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

Pour que cette configuration soit appliquée à chaque démarrage du Raspberry Pi, executez les commandes suivante :

Pour sauvegarder ces règles dans le fichier « iptables.ipv4.nat », entrez la commande suivante :sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

Éditez le fichier « rc.local » avec la commande sudo nano /etc/rc.local et juste avant le exit 0 ajoutez :

iptables-restore < /etc/iptables.ipv4.nat

Tapez ctrl+o puis ENTER pour sauvegarder les changements, tapez ctrl+x pour quitter l’éditeur.

6. Pour finir :

Voilà, tout est prêt, il ne vous reste plus qu’à activer les services avec les commandes suivantes:

sudo systemctl start hostapd

Si vous avez le message suivant : « Failed to start hostapd.service: Unit hostapd.service is masked. », exécutez les deux commandes suivants :

sudo systemctl unmask hostapd
sudo systemctl enable hostapd

Ensuite à nouveau : sudo systemctl start hostapd

Suivie de : sudo systemctl start dnsmasq

Et pour finir, on va redémarrer le Raspberry Pi avec la commande : sudo reboot now

Une fois démarrer, connectez vous sur votre nouveau Wifi avec un appareil client.