web-dev-qa-db-fra.com

Utilisez Network-Manager pour vous connecter à un point d'accès WiFi sur la ligne de commande.

J'aimerais me connecter à un point d'accès sans fil à partir de la ligne de commande. Idéalement, je n'aurais besoin que du nom de l'AP. Mais l'adresse du matériel fonctionnerait également.

Je sais que je peux utiliser nmcli pour me connecter à une connexion réseau gérée, mais dans mon cas, le point d'accès n'est peut-être pas encore configuré pour Network-Manager (voyez la différence entre les résultats de nm-tool et nmcli con).

Exemple de sortie de nmcli:

Auto pwln       3a3d62b1-bbdf-4f76-b4d2-c211fd5cfb03   802-11-wireless [...]  
Wired Network   aa586921-accf-4932-98c4-c873c310f08e   802-3-ethernet [...]  
Cisco-UDP Uni   7f94847b-04dc-40b7-9955-5246fb77cc65   vpn [...]  
T-mobile (D1)   867f345a-cbbf-4bd4-b883-a5e5ae0932f0   gsm  [...]

Exemple de sortie de nm-tool:

State: connected
- Device: eth1  [Auto pwln] ----------------------------------------------------
[...]
  Wireless Access Points (* = current AP)
    *pwln: Infra, [...], Freq 2472 MHz, Rate 54 Mb/s, Strength 80 WPA WPA2
    WLAN:  Infra, [...], Freq 2422 MHz, Rate 54 Mb/s, Strength 20 WPA WPA2

[...]

Comment puis-je me connecter à un point d'accès qui peut ou non être connu de NM?

Extra: Découvrir si la connexion nécessite une phrase secrète, et le soumettre en ligne de commande serait également très utile (c’est-à-dire que ce serait bien si le gestionnaire de réseau n’ouvre pas de dialogue de trousseau ou erreurs sur l'interface graphique)

26
Stefano Palazzo

Vous pouvez utiliser cnetworkmanager pour cela.

Modifier:

Après enquête, il apparaît qu’il est impossible d’exécuter simultanément deux "fournisseurs de configuration utilisateur" (une application écoutant une adresse dbus donnée) et cnetworkmanager doit jouer le rôle de "fournisseur de configuration" la connexion est établie).

Maintenant, vous pouvez ajouter les informations pour la connexion à gconf sous la clé /system/networking/connections (vous pouvez le faire à partir de la ligne de commande ou d'un script), puis utiliser dbus ou un outil de ligne de commande comme cnetworkmanager ou nmcli pour vous y connecter. . Peut-être devrez-vous aussi d'abord ajouter la clé au trousseau de l'utilisateur (pour éviter les popups de mots de passe).

Mais bien sûr, cela ne fonctionnera pas sur un poste de travail utilisant un autre client NM que nm-applet (par exemple, KDE). Vous devriez aussi trouver un moyen de leur fournir une configuration ...

Éditer 2:

Il semble que cela pourrait être possible via org.freedesktop.NetworkManagerUserSettings sur le DBus du système, mais tout cela est mal documenté IMO ...

Vous voudrez peut-être lire à propos de paramètres de configuration et spécifications d'interface DBus .

Et voici n exemple pertinent (vous voulez peut-être configurer une connexion utilisateur au lieu d'une connexion système)

6
JanC

Vous pouvez le faire directement en utilisant nmcli, même si la connexion n’est pas encore configurée dans Network Manager:

nmcli dev wifi con "myssid" password "myssidpassword"

Si vous ne souhaitez pas que le mot de passe sans fil soit stocké dans votre historique dans les versions récentes (peut-être plus récent que celui mentionné ci-dessous), vous pouvez ajouter --ask pour que nmcli vous invite à fournir les informations manquantes dont il a besoin.

nmcli --ask device wifi connnect "myssid"

Cette fonctionnalité a été ajoutée à Network Manager 0.9.6. Elle ne fonctionne donc que sous Ubuntu 12.10 ou ultérieure.

Vous pouvez également obtenir une liste des points d’accès disponibles avec:

nmcli dev wifi list
11
Robie Basak

Vous pouvez utiliser iwconfig (wifitools) pour le cryptage wep, ou wpa_supplicant pour wpa et wep, vous pouvez également utiliser wicd-curses si vous cherchez quelque chose de plus facile, bonne chance =)

2
chilicuil

Vous pouvez consulter iwconfig et iwlist:

  • iwconfig manipule les paramètres sans fil de base
  • iwlist permet d'initier le balayage et de lister les fréquences, les débits binaires, les clés de cryptage ...

Il y a beaucoup d'options. Départ Outils sans fil pour Linux pour plus.

1
Fernando Briano