Introduction à WPA Supplicant
wpa_supplicant est un client
d'accès au Wi-fi protégé (WPA) et compatible IEEE 802.1X. Il
implémente la négociation de clé WPA avec une authentification WPA
et le protocole d'authentification étendue (EAP) avec un serveur
d'authentification. De plus, il contrôle l'itinérance et
l'authentification/association IEEE 802.11 des pilotes. Il est
pratique pour se connecter à un point d'accès protégé par mot de
passe.
This package is known to build and work properly using an LFS-10.1
platform.
Informations sur le paquet
-
Téléchargement (HTTP) : https://w1.fi/releases/wpa_supplicant-2.9.tar.gz
-
Téléchargement (FTP) :
-
Somme de contrôle MD5 du téléchargement :
2d2958c782576dc9901092fbfecb4190
-
Taille du téléchargement : 3.1 Mo
-
Estimation de l'espace disque requis : 35 Mo
-
Estimation du temps de construction : 0.5 SBU (sans
l'interface graphique facultative)
Dépendances de WPA Supplicant
Recommandées
desktop-file-utils-0.26 (pour lancer
update-desktop-database) et
libnl-3.5.0
Facultatives
dbus-1.12.20, libxml2-2.9.10
et Qt-5.15.2
Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/wpa_supplicant
Installation de WPA Supplicant
En premier vous devez créer un fichier de configuration initial
pour la construction. Vous pouvez lire wpa_supplicant/README
et wpa_supplicant/defconfig
pour les explications
des options suivantes aussi bien que pour les autres options qui
peuvent être utilisées. Créer un fichier de configuration qui peut
fonctionner avec les initialisations standards pour le WiFi en
lançant les commandes suivantes :
cat > wpa_supplicant/.config << "EOF"
CONFIG_BACKEND=file
CONFIG_CTRL_IFACE=y
CONFIG_DEBUG_FILE=y
CONFIG_DEBUG_SYSLOG=y
CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
CONFIG_DRIVER_NL80211=y
CONFIG_DRIVER_WEXT=y
CONFIG_DRIVER_WIRED=y
CONFIG_EAP_GTC=y
CONFIG_EAP_LEAP=y
CONFIG_EAP_MD5=y
CONFIG_EAP_MSCHAPV2=y
CONFIG_EAP_OTP=y
CONFIG_EAP_PEAP=y
CONFIG_EAP_TLS=y
CONFIG_EAP_TTLS=y
CONFIG_IEEE8021X_EAPOL=y
CONFIG_IPV6=y
CONFIG_LIBNL32=y
CONFIG_PEERKEY=y
CONFIG_PKCS12=y
CONFIG_READLINE=y
CONFIG_SMARTCARD=y
CONFIG_WPS=y
CFLAGS += -I/usr/include/libnl3
EOF
Si vous souhaitez utiliser WPA
Supplicant avec NetworkManager-1.30.0, soyez
certain d'avoir installé dbus-1.12.20 et
libxml2-2.9.10, ensuite ajoutez les options
suivantes dans le fichier de configuration de WPA Supplicant en lançant les commandes
suivantes :
cat >> wpa_supplicant/.config << "EOF"
CONFIG_CTRL_IFACE_DBUS=y
CONFIG_CTRL_IFACE_DBUS_NEW=y
CONFIG_CTRL_IFACE_DBUS_INTRO=y
EOF
Installez WPA Supplicant en
lançant les commandes suivantes :
cd wpa_supplicant &&
make BINDIR=/sbin LIBDIR=/lib
Si vous avez installé Qt-5.15.2 et souhaitez construire l'interface
graphique de WPA Supplicant,
lancez les commandes suivantes :
Note
Le répertoire suivant est nommé qt4, mais est compatible avec
Qt-5.15.2.
pushd wpa_gui-qt4 &&
qmake wpa_gui.pro &&
make &&
popd
Ce paquet n'est pas fourni avec une suite de tests.
Maintenant, en tant qu'utilisateur root
:
install -v -m755 wpa_{cli,passphrase,supplicant} /sbin/ &&
install -v -m644 doc/docbook/wpa_supplicant.conf.5 /usr/share/man/man5/ &&
install -v -m644 doc/docbook/wpa_{cli,passphrase,supplicant}.8 /usr/share/man/man8/
Installez les fichiers supports de systemd en lançant la commande suivante en
tant qu'utilisateur root
:
install -v -m644 systemd/*.service /lib/systemd/system/
Si vous avez construit WPA
Supplicant avec le support D-Bus, vous devez installer les fichiers de
configuration de D-Bus.
Installez-les en lançant les commandes suivantes en tant
qu'utilisateur root
:
install -v -m644 dbus/fi.w1.wpa_supplicant1.service \
/usr/share/dbus-1/system-services/ &&
install -v -d -m755 /etc/dbus-1/system.d &&
install -v -m644 dbus/dbus-wpa_supplicant.conf \
/etc/dbus-1/system.d/wpa_supplicant.conf
De plus, activez wpa_supplicant.service
pour que systemd puisse activer correctement le service
D-Bus. Remarquez que le service
par connexion et le service D-Bus ne peuvent pas être activés en
même temps. Lancez la commande suivante en tant qu'utilisateur
root
:
systemctl enable wpa_supplicant
Si vous avez construit l'interface graphique de WPA Supplicant, installez-le en lançant les
commandes suivantes en tant qu'utilisateur root
:
install -v -m755 wpa_gui-qt4/wpa_gui /usr/bin/ &&
install -v -m644 doc/docbook/wpa_gui.8 /usr/share/man/man8/ &&
install -v -m644 wpa_gui-qt4/wpa_gui.desktop /usr/share/applications/ &&
install -v -m644 wpa_gui-qt4/icons/wpa_gui.svg /usr/share/pixmaps/
Note
Vous devrez redémarrer le démon du système D-Bus avant de pouvoir utiliser l'interface
D-Bus de WPA Supplicant.
Note
Ce paquet installe des fichiers du bureau dans la hiérarchie
/usr/share/applications
et vous
pouvez améliorer les performances du système et l'utilisation de
la mémoire en mettant à jour /usr/share/applications/mimeinfo.cache
. Pour
réaliser la mise à jour vous devez avoir installé desktop-file-utils-0.26 et taper la
commande suivante en tant qu'utilisateur root
:
update-desktop-database -q
Configuration de wpa_supplicant
Fichier de configuration
/etc/wpa_supplicant/wpa_supplicant-*.conf
Informations sur la configuration
Pour se connecter à un point d'accès qui utilise un mot de passe
vous devez mettre la clé partagée dans /etc/wpa_supplicant/wpa_supplicant-wifi0
.conf
. Le SSID
est la chaîne que le point d'accès ou le routeur transmet pour
s'identifier. Lancez la commande suivante en tant qu'utilisateur
root
:
install -v -dm755 /etc/wpa_supplicant &&
wpa_passphrase SSID
SECRET_PASSWORD
> /etc/wpa_supplicant/wpa_supplicant-wifi0
.conf
/etc/wpa_supplicant/wpa_supplicant-wifi0
.conf
peut
retenir les détails de plusieurs points d'accès. Quand vous
lancez wpa_supplicant il scannera les
SSID qu'il peut voir et choisira le mot de passe approprié pour
se connecter.
Si vous souhaitez vous connecter à un point d'accès qui n'est pas
protégé par un mot de passe, indiquez une entrée comme cela dans
/etc/wpa_supplicant/wpa_supplicant-wifi0
.conf
.
Remplacez « Some-SSID » avec le SSID du point
d'accès/routeur.
network={
ssid="Some-SSID
"
key_mgmt=NONE
}
Se connecter à un nouveau point d'accès qui n'est pas dans le
fichier de configuration peut se faire manuellement via la ligne
de commande ou l'interface graphique, mais cela doit se faire via
un utilisateur privilégié. Pour ce faire, ajoutez la suite dans
le fichier de configuration :
ctrl_interface=DIR=/run/wpa_supplicant GROUP=<privileged group>
update_config=1
Remplacez le <priviledged group> ci-dessus avec le groupe
système dont les membres peuvent se connecter au point d'accès
sans fil.
Il y a beaucoup d'options que vous pouvez utiliser pour
personnaliser la façon de se connecter à chaque point d'accès.
Elles sont décrites en détails dans le fichier wpa_supplicant/wpa_supplicant.conf
dans les
sources.
Connexion à un point d'accès
Il y a 3 types d'unités systemd
qui ont été installées :
La seule différence entre les 3 est le pilote utilisé pour se
connecter (option -D). La première utilise le pilote par défaut,
la deuxième utilise le pilote nl80211 et la troisième utilise le
pilote filaire.
Vous pouvez vous connecter au point d'accès sans fil en lançant
la commande suivante en tant qu'utilisateur root
:
systemctl start wpa_supplicant@wlan0
Pour vous connecter au point d'accès sans fil au démarrage,
activez simplement le bon service wpa_supplicant en lançant la
commande suivante en tant qu'utilisateur root
:
systemctl enable wpa_supplicant@wlan0
En fonction de votre configuration, remplacez wpa_supplicant@.service
avec celle qui
convient.
Pour assigner une adresse réseau à votre interface sans fil,
consultez la page Configuration
Générale du Réseau de LFS.