wpa_supplicant-2.10

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 12.1 platform.

Informations sur le paquet

  • Téléchargement (HTTP) : https://w1.fi/releases/wpa_supplicant-2.10.tar.gz

  • Téléchargement (FTP) :

  • Somme de contrôle MD5 : d26797fcb002898d4ee989179346e1cc

  • Taille du téléchargement : 3.4 Mo

  • Estimation de l'espace disque requis : 37 Mo

  • Estimation du temps de construction : 0.5 SBU (sans l'interface graphique facultative)

Téléchargements supplémentaires

Dépendances de WPA Supplicant

Requise (à l'exécution)

Configurer le noyau Linux pour le réseau sans fil

Recommandées

Facultatives

dbus-1.14.10, libxml2-2.12.5 et (Qt-5.15.12 or qt-alternate-5.15.12)

Configuration du noyau

Pour utiliser wpa_supplicant, le noyau doit avoir les pilotes et autres fonctions auxiliaires appropriés. Consultez Configurer le noyau Linux pour le réseau sans fil pour plus de détails.

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 exécutant 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.44.2, soyez certain d'avoir installé dbus-1.14.10 et libxml2-2.12.5, ensuite ajoutez les options suivantes dans le fichier de configuration de WPA Supplicant en exécutant 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

Ensuite, corrigez une vulnérabilité de sécurité qui arrive quand on se connecte à certains réseaux :

patch -Np1 -i ../wpa_supplicant-2.10-security_fix-1.patch

Installez WPA Supplicant en exécutant les commandes suivantes :

cd wpa_supplicant &&
make BINDIR=/usr/sbin LIBDIR=/usr/lib

Si vous avez installé (Qt-5.15.12 or qt-alternate-5.15.12) et souhaitez construire l'interface graphique de WPA Supplicant, lancez les commandes suivantes :

[Note]

Note

Le répertoire suivant est nommé qt4, mais est compatible avec (Qt-5.15.12 or qt-alternate-5.15.12).

pushd wpa_gui-qt4 &&
qmake wpa_gui.pro &&
make &&
popd

Ce paquet n'a pas de suite de tests.

Maintenant, en tant qu'utilisateur root :

install -v -m755 wpa_{cli,passphrase,supplicant} /usr/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/

Si vous avez construit WPA Supplicant avec le support D-Bus, vous devez installer les fichiers de configuration de D-Bus. Installez-les en exécutant 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

Si vous avez construit l'interface graphique de WPA Supplicant, installez-le en exécutant 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]

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]

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 effectuer la mise à jour vous devez avoir installé desktop-file-utils-0.27 puis exécutez la commande suivante en tant qu'utilisateur root :

update-desktop-database -q

Configuration de wpa_supplicant

[Important]

Important

Si vous utilisez WPA Supplicant avec NetworkManager-1.44.2 (ou n'importe quoi d'autre qui communique avec WPA Supplicant par D-Bus), vous devriez sauter cette section. Exécuter une instance de WPA Supplicant connectée à D-Bus et une autre instance WPA Supplicant configurée en suivant cette section peut causer des problèmes subtiles.

Fichier de configuration

/etc/sysconfig/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/sysconfig/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 :

wpa_passphrase SSID SECRET_PASSWORD > /etc/sysconfig/wpa_supplicant-wifi0.conf

/etc/sysconfig/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/sysconfig/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

Si vous voulez configurer une interface réseau au démarrage en utilisant wpa_supplicant, vous devez installer le script /lib/services/wpa fourni dans le paquet blfs-bootscripts-20240209 :

make install-service-wpa

Si votre routeur/point d'accès utilise DHCP pour allouer les adresses IP, vous pouvez installer un client dhcpcd-10.0.6 et l'utiliser pour obtenir automatiquement une adresse réseau. Créez /etc/sysconfig/ifconfig-wifi0 en exécutant la commande suivante en tant qu'utilisateur root :

cat > /etc/sysconfig/ifconfig.wifi0 << "EOF"
ONBOOT="yes"
IFACE="wlan0"
SERVICE="wpa"

# Additional arguments to wpa_supplicant
WPA_ARGS=""

WPA_SERVICE="dhcpcd"
DHCP_START="-b -q <insert appropriate start options here>"
DHCP_STOP="-k <insert additional stop options here>"
EOF

Sinon, si vous utilisez une adresse statique de votre réseau local, alors créez /etc/sysconfig/ifconfig-wifi0 en exécutant la commande suivante en tant qu'utilisateur root :

cat > /etc/sysconfig/ifconfig.wifi0 << "EOF"
ONBOOT="yes"
IFACE="wlan0"
SERVICE="wpa"

# Additional arguments to wpa_supplicant
WPA_ARGS=""

WPA_SERVICE="ipv4-static"
IP="192.168.1.1"
GATEWAY="192.168.1.2"
PREFIX="24"
BROADCAST="192.168.1.255"
EOF

Vous pouvez vous connecter au point d'accès sans fil en exécutant la commande suivante en tant qu'utilisateur root :

ifup wifi0

Remplacez wlan0 par la bonne interface sans fil et wifi0 par le nom du fichier de configuration souhaité. Merci de noter que les fichiers de configuration wpa_supplicant-*.conf et ifconfig.* doivent avoir des noms identiques, c'est à dire les deux contiennent wifi0 dans leur nom.

Contenu

Programmes installés: wpa_gui, wpa_supplicant, wpa_passphrase et wpa_cli
Bibliothèques installées: Aucune
Répertoires installés: Aucun

Descriptions courtes

wpa_gui

est une interface graphique pour interagir avec wpa_supplicant

wpa_supplicant

est un démon qui peut se connecter à un point d'accès protégé par un mot de passe

wpa_passphrase

prend un SSID et un mot de passe et génère une configuration simple que wpa_supplicant peut comprendre

wpa_cli

est une interface en ligne de commandes pour contrôler le lancement du démon wpa_supplicant