I can connect to my WiFi out of the shell by doing:

nano wireless-wpa.conf

typing:

ctrl_interface=/var/run/wpa_supplicant

network={
ssid="my_router_id" 
scan_ssid=1
key_mgmt=WPA-PSK
psk="1234567890"
}

and doing:

ifconfig eth1 down
iwconfig eth1 mode Managed
ifconfig eth1 up
killall wpa_supplicant
wpa_supplicant -B -Dwext -i eth1 -c ./wireless-wpa.conf -dd
dhclient eth1

Pretty complicated.. Is there a possibility to connect to a WiFI via shell without the need of a wireless-wpa.conf?

  • Would having a script that wrote the .conf on the fly and established the network connection suffice? – Paul Sep 29 '11 at 5:58
  • Actually I was looking for a complete different solution, because I could write a bash script myself. – JohnnyFromBF Sep 29 '11 at 8:47

You can control a running wpa_supplicant using it's control interface, which you already specify in your .conf file. While this still needs a .conf file, you don't have to put any wireless networks in it, and don't have to change it. You can then configure it with wpa_cli.

wpa_cli may need to be told which wpa_supplicant instance and interface to configure:

wpa_cli -p /var/run/wpa_supplicant -i wlan0 command ...

For clarity, I'll use just wpa_cli here. Basically, you need to create a network, set its variables, and enable it:

# wpa_cli add_network
4                                          <--- note the network ID!
# wpa_cli set_network 4 ssid '"Your SSID"'
OK
# wpa_cli set_network 4 scan_ssid 1
OK
# wpa_cli set_network 4 key_mgmt WPA-PSK
OK
# wpa_cli set_network 4 psk '"1234567890"' <--- note the single quotes around
OK
# wpa_cli enable_network 4
OK
  • you might want to start with wpa_cli scan followed by wpa_cli scan_results to gather what SSID's are available – sibaz Dec 15 '15 at 12:56
  • The single quotes around the strings helped me, but what do you do when there is a single quote in the SSID? It doesn't seem to work. – JDavis May 24 at 19:11
  • The single quotes trick helped me. How can I used a variable like psk=$3 instead? – daixtr Nov 30 at 23:08

You want a cli command that manages your wpa_suplicant-config? Have you tried ifup, ifdown and ifcfg? They handle connection scripts and work for wifi too but may need some tinkering with.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.