¿Cómo uso NMCLI para crear una conexión Wifi y conectarme a SSID a través de WPA?

12

Ambiente

  • BeagleBone Black ejecuta Debian 7.7
  • herramienta nmcli, versión 0.9.4.0

Intenté algunos ejemplos de comandos para comenzar, sin embargo, ninguno me ayuda a agregar una conexión y conectarme.

Dispositivos

# nmcli dev
DEVICE     TYPE              STATE        
wlan0      802-11-wireless   disconnected     <====
usb0       802-3-ethernet    unmanaged    
eth0       802-3-ethernet    connected 

Conexiones

Tengo pocos

nmcli con    
NAME                      UUID                                   TYPE              TIMESTAMP-REAL                    
Wired connection 1        00000000-4a11-43d1-9252-4b92de0e75c3   802-3-ethernet    Thu Oct 23 05:46:02 2014          
WLAN-A69E22               29eeb2f6-cf80-0000-0000-d23733e97eb4   802-11-wireless   Thu Oct 30 16:06:14 2014          
Wireless connection 1     bfaa9524-a1d9-0000-8279-71a56720c06c   802-11-wireless   Wed Feb 24 02:33:55 2015          
Wireless connection 2     00000000-d5cc-411b-a62e-000000000000   802-11-wireless   Wed Oct 22 23:31:24 2014   

Redes

nmcli dev wifi list
SSID                              BSSID               MODE             FREQ       RATE       SIGNAL   SECURITY   ACTIVE  
'MAR'                       00:00:00:86:D0:22   Infrastructure   2462 MHz   54 MB/s    80       WEP        no      
'MYHOME'                    00:00:00:00:2D:16   Infrastructure   5180 MHz   44 MB/s    80       WPA WPA2   no

Me gustaría agregar una nueva conexión inalámbrica a SSID MYHOMEusando nmcliy quiero conectarme a ella.

Los documentos que encuentro no coinciden con mi versión de nmcli

Para Fedora, descubrí que lo siguiente funcionaría ver aquí

nmcli con add con-name MyCafe ifname wlan0 type wifi ssid MyCafe ip4 192.168.100.101/24 gw4 192.168.100.1

AYUDA

Conexiones

# nmcli con help
Usage: nmcli con { COMMAND | help }
  COMMAND := { list | status | up | down | delete }

  list [id <id> | uuid <id>]
  status [id <id> | uuid <id> | path <path>]
  up id <id> | uuid <id> [iface <iface>] [ap <BSSID>] [--nowait] [--timeout <timeout>]
  down id <id> | uuid <id>
  delete id <id> | uuid <id>

Dispositivos

# nmcli dev help
Usage: nmcli dev { COMMAND | help }

  COMMAND := { status | list | disconnect | wifi }

  status
  list [iface <iface>]
  disconnect iface <iface> [--nowait] [--timeout <timeout>]
  wifi [list [iface <iface>] [bssid <BSSID>]]

ninguno parece permitir crear conexiones

Unas pocas salidas

nmcli -f GENERAL,WIFI-PROPERTIES dev list iface wlan0

GENERAL.DEVICE:                         wlan0
GENERAL.TYPE:                           802-11-wireless
GENERAL.VENDOR:                         Realtek
GENERAL.PRODUCT:                        802.11n NIC
GENERAL.DRIVER:                         rtl8812au
GENERAL.HWADDR:                         04:8D:38:0F:D9:32
GENERAL.STATE:                          30 (disconnected)
GENERAL.REASON:                         42 (The supplicant is now available)
GENERAL.UDI:                            /sys/devices/ocp.3/47400000.usb/musb-hdrc.1.auto/usb1/1-1/1-1.3/1-1.3:1.0/net/wlan0
GENERAL.IP-IFACE:                       
GENERAL.NM-MANAGED:                     yes
GENERAL.FIRMWARE-MISSING:               no
GENERAL.CONNECTION:                     not connected
WIFI-PROPERTIES.WEP:                    yes
WIFI-PROPERTIES.WPA:                    yes
WIFI-PROPERTIES.WPA2:                   yes
WIFI-PROPERTIES.TKIP:                   yes
WIFI-PROPERTIES.CCMP:                   yes
zabumba
fuente
1
Suponiendo que Ubuntu respeta la numeración de paquetes de Debian, el registro de cambios parece indicar que la característica se agregó en 0.9.6.0 ( "Agregar capacidad para conectarse a nuevas redes WiFi desde nmcli" ). FWIW se accede a través del devobjeto en lugar del conobjeto, entonces nmcli dev wifi connect <SSID> password <PASS> iface <IFACE>.
steeldriver
Ok, déjame ver si puedo actualizar el paquete.
zabumba
@joelmaranhao: ¿Has tenido éxito? ¿Cómo hiciste para actualizarlo a la próxima versión? Tiene un problema diferente que también requiere una versión más nueva, pero apt-get upgradelo mantendrá en 0.9.4.
nhee
actualizar a 0.9.10 , es una gran actualización.
Iman

Respuestas:

12

nmtui es un comando alternativo para nmcli que se basa en la interfaz de usuario de texto

como root solo escribe

nmtui

ingrese la descripción de la imagen aquí

GAD3R
fuente
Esta es la única solución que funcionó para mí (fedora 23) después de innumerables noches de pirateo de cli sin ningún resultado razonable. ¿Por qué demonios es esto tan simple y estúpido y nadie lo escribe en ninguna wiki existente? muchas gracias GAD3R!
bitbitdecker
1
nmtui y nmcli no son comandos disponibles en mi instalación de Debian 8. ¿Lo que da?
Arya
1
@Arya nmtuies una parte del network-managerpaquete de packages.debian.org/...
GAD3R
7
nmcli device wifi con "ssid" password "p455w04d"
mrosiak
fuente
1
Gracias por esto. Realmente no entiendo por qué la contraseña requiere una palabra / argumento / comando y el SSID no.
pdoherty926
@ pdoherty926 Una solución alternativa deficiente es ejecutar el comando como en la respuesta con la contraseña en la contraseña clara pero incorrecta. Entonces puedes usarnmcli connection up "ssid" passwd-file <path to file>
MrMas