Donc, en gros, j'aimerais utiliser iwconfig
pour me connecter à mon réseau wifi quand je ne suis pas dans X. Mais je ne vois pas comment le faire dans la page de manuel. Une idée?
Donc, en gros, j'aimerais utiliser iwconfig
pour me connecter à mon réseau wifi quand je ne suis pas dans X. Mais je ne vois pas comment le faire dans la page de manuel. Une idée?
Réponses:
iw
(list / config) ne peut gérer que WEP.
Vous avez besoin du wpasupplicant
paquet qui fournit la wpa_supplicant
commande, installez si nécessaire via sudo apt-get install wpasupplicant
.
Vous mettez votre SSID et votre mot de passe dans /etc/wpa_supplicant.conf
(requiert sudo).
Exemple:
network={
ssid="ssid_name"
psk="password"
}
En supposant que votre interface soit wlan0, vous pouvez vous connecter avec:
sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf -D wext
sudo dhclient wlan0
"wext" est un pilote spécifique à chaque carte; se référer à wpa_supplicant -h
. Exemples:
hostap (default) Host AP driver (Intersil Prism2/2.5/3). (this can also be used with Linuxant DriverLoader).
hermes Agere Systems Inc. driver (Hermes-I/Hermes-II).
madwifi MADWIFI 802.11 support (Atheros, etc.).
atmel ATMEL AT76C5XXx (USB, PCMCIA).
wext Linux wireless extensions (generic).
ndiswrapper Linux ndiswrapper.
broadcom Broadcom wl.o driver.
ipw Intel ipw2100/2200 driver.
wired wpa_supplicant wired Ethernet driver
roboswitch wpa_supplicant Broadcom switch driver
bsd BSD 802.11 support (Atheros, etc.).
ndis Windows NDIS driver.
wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext && dhclient wlan0
n'est pas connecté au réseau sans fil. Cependant, par défaut, NetworkManager me connecte au réseau. Je souhaite essayer la ligne de commande. Y a-t-il une erreur que je fais?
root
qu’administrateur système. Donc, sudo wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext && sudo dhclient wlan0
ou divisez-les en deux commandes &&
.
Ce lien montre tout et a bien fonctionné pour moi: http://linux.icydog.net/wpa.php
Je copie le contenu ici, donc nous l'avons, au cas où ce site serait déconnecté.
Ligne de commande WPA
Parfois, vous êtes sur une ligne de commande sans accès aux outils de réseau de l'interface graphique, mais votre point d'accès est sécurisé avec WPA. Que faire?
En supposant que votre carte sans fil fonctionne réellement (c.-à-d. Que iwconfig peut la voir et interagir avec elle), utiliser wpa_supplicant est en fait assez simple. Installation de wpa_supplicant
Wpa_supplicant est installé par défaut dans la plupart des distributions. Si vous avez les commandes wpa_passphrase et wpa_supplicant disponibles, vous pouvez continuer. Sinon, vous devrez installer le paquet en effectuant quelque chose comme (pour Ubuntu):
$ sudo apt-get install wpasupplicant
Ou (pour Fedora):
# yum install wpa_supplicant
Ou quelle que soit la commande pour votre distribution.
Générer le fichier de configuration
Maintenant que wpa_supplicant est installé, nous allons créer son fichier de configuration. Une fois que vous connaissez le mot de passe SSID et WPA, tout ce que vous avez à faire est d’exécuter:
$ wpa_passphrase myrouter mypassphrase > wpa.conf
Bien sûr, remplacez "myrouter" par le SSID de votre routeur, "mypassphrase" par votre phrase secrète WPA et "wpa.conf" par le fichier dans lequel vous souhaitez stocker la configuration. Ce nom de fichier ne doit pas nécessairement suivre un format particulier. avoir une extension particulière.
Sinon, pour éviter de taper la phrase secrète sur la ligne de commande (afin qu'elle ne soit pas enregistrée dans l'historique du shell), vous pouvez spécifier uniquement le SSID sur la ligne de commande. wpa_passphrase attend que vous tapiez le mot de passe suivi de:
$ wpa_passphrase myrouter > wpa.conf
mypassphrase
Vous devriez vous retrouver avec un fichier ressemblant à ceci:
network={
ssid="myrouter"
#psk="mypassphrase"
psk=8ada1f8dbea59704ac379538b4d9191f6a72390581b4cd7a72864cea685b1a7f
}
Se connecter
Nous allons maintenant lancer wpa_supplicant pour nous connecter au réseau sans fil. Premièrement, si votre routeur diffuse son SSID (tous le font par défaut), vous voulez probablement vous assurer que votre carte sans fil peut réellement le voir:
$ iwlist scan
Vous devrez peut-être l'exécuter en tant que root pour forcer une actualisation.
Ensuite, vous aurez besoin de connaître trois informations:
wpa_supplicant --help
liste les différents pilotes dont il dispose (sous "pilotes:"). A partir de 0.5.8, les choix utiles sont: wext
, hostap
, madwifi
, atmel
, ndiswrapper
et ipw
(IPW est pour les vieux noyaux seulement;> = 2.6.13 doit utiliser wext). Si vous ne voyez pas de correspondance spécifique pour votre carte, essayez wext, car c'est un peu la panique.iwconfig
. Il signalera "pas d'extensions sans fil" pour les périphériques non sans fil et affichera des données pour tous les périphériques sans fil.Maintenant que vous avez ces données, lancez (en tant que root):
# wpa_supplicant -D[driver] -i[device] -c[/path/to/config]
Il n'y a pas d'espaces entre les options et les paramètres. N'incluez pas les crochets car je viens d'ajouter ceux pour plus de clarté. Par exemple, pour mon ordinateur portable, cela ressemble à ceci:
# wpa_supplicant -Dwext -ieth1 -c/root/wpa.conf
Vous pouvez également l'exécuter en arrière-plan en utilisant l' -B
option pour qu'il ne prenne pas votre console.
Maintenant, vous êtes associé au réseau.
Se mettre en ligne
Pour être réellement en ligne, vous devrez vous procurer une adresse IP. La plupart des gens voudront simplement obtenir une adresse IP dynamique d'un serveur DHCP, probablement celle intégrée au routeur. (Je ne vais pas couvrir la définition d'une adresse IP statique et d'une table de routage car c'est une bête en soi.)
Pour obtenir un bail DHCP, commencez par libérer les baux sur lesquels vous avez encore un contrat (en tant que root):
# dhclient -r
Puis demandez un nouveau bail (bien sûr, remplacez eth1 par le nom de votre périphérique réseau, le même que celui utilisé dans la section précédente):
# dhclient eth1
Vous avez maintenant un IP, au moins en théorie. Bonne navigation!
Dans Debian et d’autres distributions, wpa_suplicant est exécuté en tant que service par défaut afin de gérer les réseaux wifi. wpa_suplicant peut être géré par différents clients / front-end tels que l'interface graphique du gestionnaire de réseau. Ceci est mieux expliqué dans ce wiki debian .
wpa_cli est le client en ligne de commande wpa_suplicant pour gérer les réseaux wifi.
Edit : Je viens de trouver ce message expliquant comment utiliser nmcli et il est bien meilleur que wpa_cli car il est compatible avec le gestionnaire de réseau graphique et ses paramètres ainsi que les réseaux wifi enregistrés.
Exemple d'utilisation de wpa_cli :
Vérifiez que j'ai déjà une interface réseau compatible Wi-Fi:
# iwconfig
wlan0 IEEE 802.11bgn ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=22 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:on
Vérifiez si le processus wpa_suplicant est en cours d'exécution:
# ps -e | grep wpa
1881 ? 00:00:07 wpa_supplicant
Entrez en mode interactif client wpa:
# wpa_cli
Liste des points d'accès disponibles:
> scan
> scan_results
... et vous obtenez quelque chose comme ça:
bssid / frequency / signal level / flags / ssid
e0:60:66:7c:81:7f 2417 -66 [WPA2-PSK-CCMP][ESS] vodafone817E
e0:60:66:61:83:4b 2452 -76 [WPA2-PSK-CCMP][WPS][ESS] vodafone834A
f8:8e:85:c5:65:c2 2462 -76 [WPA-PSK-CCMP+TKIP][WPS][ESS] MOVISTAR_65C1
a8:d3:f7:46:0c:be 2472 -83 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS] Orange-0CBC
...
Ajoutez votre AP:
> add_network
> set_network 0 ssid "vodafone817E"
> set_network 0 psk "my-pass-phrase"
Sélectionnez-le comme courant:
> enable_network 0
Connectez-vous à elle:
> reconnect
Vérifiez le statut:
> status
Quittez wpa_cli:
> quit
À partir du shell, demandez à DHCP une adresse IP et des paramètres réseau:
# dhclient -r
# dhclient wlan0
wpa_cli
et ensuite vous écrivez wpa_client
? Sur Kubuntu, le 18.10 ne wpa_client
semble pas exister en tant que commande
Commencez par lever votre carte si elle n'est pas fugitive:
ifconfig wlan0 up
Définissez les paramètres en fonction de votre réseau
iwlist wlan0 scan
iwconfig wlan0 essid NETWORK_ID key WIRELESS_KEY
Il existe en fait un moyen de le faire en utilisant NetworkManager, si le checkbox
paquet est installé.
sudo /usr/share/checkbox/create_connection SSID --security=wpa -key=WPA-KEY
(Crédit: bug 923836 , qui est apparu dans mes recherches sur le sujet.)
Toutes les réponses suggérant wpa_supplicant sont fausses. Oui, cela peut vous connecter au réseau WPA, mais c'est une mauvaise solution à long terme car il sera très difficile à maintenir et ne jouera pas bien avec une connexion filaire. Lisez cette réponse et simplifiez-vous la vie en utilisant Network Manager à partir de la ligne de commande. J'ai perdu des heures à essayer de configurer wpa_supplicant, puis à essayer nmcli et cela "a juste fonctionné".
Vous pouvez utiliser VSWM - Very Simple Wireless Manager. Vous placez vos points d'accès connus sur un simple fichier cfg (/etc/vswm.cfg). Lorsque vous l'exécutez, analysez vswm
les réseaux disponibles et connectez votre carte au premier qui apparaît sur /etc/vswm.cfg.
VSWM est disponible à l' adresse https://github.com/dmelo/vswm . Voici un aperçu de la façon dont le fichier de configuration vswm.cfg se présente:
[global]
dev = wlan0
dns = ["4.2.2.1","8.8.8.8"]
[wlan0-0]
ssid = Network1
psk = netpassword
protocol = WPA
net = dhcp
[wlan0-1]
ssid = Network2
protocol = WEP
net = static
address = 192.168.0.15/24
Sous le capot, il utilise les outils de ligne de commande standard: iwlist, wpa_supplicant, iwconfig, dhclient ... Seulement, il automatise le travail.
J'ai eu du mal à utiliser wpa_supplicant
directement pour accéder à un réseau sans fil. Mon identifiant réseau et mon mot de passe ont généré des erreurs lorsque j'ai utilisé le wpa_supplicant.conf
fichier en wpa_supplicant
ligne de commande, par exemple
sudo wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B
J'ai pu contourner le problème wpa_cli
. La séquence de commande que j'ai dû utiliser, puisque j'utilise un pilote Windows avec Linux ndiswrapper, est la suivante:
sudo modprobe ndiswrapper
sudo iwconfig wlan0 essid "<My Network ID>" mode managed
sudo wpa_cli identity "<My Network ID>" password "<My password>"
J'avais configuré le réseau en l'ajoutant dans la section réseau de l'interface graphique pour pouvoir cliquer sur l'icône du réseau câblé ou sans fil et sélectionner le fournisseur de services sans fil (ce qui était parfois nécessaire pour terminer la connexion).
Le nmcli
est la version en ligne de commande de l'application de gestion de réseau par défaut sur Ubuntu.
Certains des avantages sont qu’il utilise la configuration que vous avez déjà à partir de l’interface graphique et qu’il n’a pas besoin d’un accès root.
Vous pouvez exécuter nmcli
pour afficher les options disponibles.
Exemple de connexion à un réseau Wi-Fi nommé MYESSID:
nmcli c up MYESSID