La mise en place d'un point d'accès Wi-Fi (appelé hotspot par la suite) sur un Raspberry Pi (appelé Rpi par la suite) requiert 2 briques : le hotspot en lui-même et le serveur DHCP qui permettra aux clients de recevoir une adresse IP et donc joindre le réseau.
Le point d'accès Wi-Fi
Installez hostapd :
$ sudo aptitude install hostapd
Créez le fichier de configuration /etc/hostapd/hostapd.conf et insérez :
# Nom de l'interface réseau
interface = wlan0
# Nom du réseau
ssid = $ssid
# Canal
channel = 6
# Les clients ne sont pas filtrés par adresse MAC
macaddr_acl = 0
# Algorithme utilisé par IEEE 802.11
auth_algs = 1
# Utilisation de WPA2
wpa = 2
# Mot de passe
wpa_passphrase = $passphrase
wpa_key_mgmt = WPA-PSK
wpa_pairwise = TKIP
rsn_pairwise = CCMP
# Nombre maximum de clients autorisés
#max_num_sta = 12
Afin de démarrer hostapd au démarrage du Rpi, modifiez /etc/default/hostapd :
DAEMON_CONF="/etc/hostapd/hostapd.conf"
Assignez un sous-réseau d'adresses IP à la carte Wi-Fi gérant le hotspot en modifiant /etc/network/interfaces :
auto wlan0
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.2.1
netmask 255.255.255.0
Le serveur DHCP
Installez ISC DHCP server :
$ sudo aptitude install isc-dhcp-server
Modifier le fichier de configuration /etc/dhcp/dhcpd.conf tel que :
authoritative;
ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.10 192.168.2.50;
option domain-name-servers 192.168.2.1;
option netbios-name-servers 192.168.2.1;
option routers 192.168.2.1;
option broadcast-address 192.168.2.255;
interface wlan0;
# Adresses IP assignées en dur pour des adresses MAC données
group {
host client-01 { hardware ethernet $mac_addr; fixed-address 192.168.2.11; }
#host NOM { hardware ethernet MAC; fixed-address IP; }
}
}
Modifier le fichier de configuration /etc/default/isc-dhcp-server tel que :
INTERFACES="wlan0"
Pour terminer
Redémarrez le Rpi :
$ sudo reboot
Le clients peuvent dorénavant se connecter à votre hotspot Wi-Fi.
Pour voir la liste des clients connectés (installez le paquet iw) :
$ iw dev wlan0 station dump
Station 11:22:33:44:55:66 (on wlan0)
(...)
Station 12:23:34:45:56:67 (on wlan0)
(...)