What is wpa_supplicant?
"wpa_supplicant is a WPA Supplicant for Linux, BSD and Windows with support for WPA and WPA2 (IEEE 802.11i / RSN). Supplicant is the IEEE 802.1X/WPA component that is used in the client stations. It implements key negotiation with a WPA Authenticator and it controls the roaming and IEEE 802.11 authentication/association of the wlan driver.
wpa_supplicant is designed to be a "daemon" program that runs in the
background and acts as the backend component controlling the wireless
connection. Support for separate frontend programs is included and an
example text-based frontend, wpa_cli, is included with wpa_supplicant."
I have a Laptop running Linux and I always wanted to have WPA encryption working with less hassle, this write up should make life a whole lot easier.
NOTE: Assumption is made that you have ndiswrapper working or wlan0 is detected by Network Configuration and your ssid is been broadcasted with WEP/WPA or WPA2 encryption.
This page only applies to FC5
Wpa_supplicant is available from updates and to install it -->
Code:
yum -y install wpa_supplicant-0.4.8-5 wpa_supplicant-gui-0.4.8-5
navigate to
/etc/wpa_supplicant
Code:
cd /etc/wpa_supplicant
With an editor of your choice, modify wpa_supplicant.conf with the following information
Code:
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel
ap_scan=2
opensc_engine_path=/usr/lib/opensc/engine_opensc.so
pkcs11_engine_path=/usr/lib/opensc/engine_pkcs11.so
pkcs11_module_path=/usr/lib/pkcs11/opensc-pkcs11.so
update_config=1
network={
ssid="any"
key_mgmt=NONE
disabled=1
}
click on Desktop -> System Settings -> Users and Groups. When prompted type in the user root password and hightlight your username and click on Properties. The User Properties windows comes up, then go to the Groups Tab and scroll all the way down to wheel group and put a check mark and Ok out of the window.
Now to edit the /etc/sudoers file
If you do not have visudo command, then
Code:
yum -y install sudo
Open a terminal and become root and type in
scroll to the line similar to below
# Same thing without a password
#%wheel ALL=(ALL) NOPASSWD: ALL
remove the comment on %wheel, so you have
# Same thing without a password
%wheel ALL=(ALL) NOPASSWD: ALL
Save and exit
Below is the content of /etc/sysconfig/wpa_supplicant
Code:
# wlan0 and wifi0
# INTERFACES="-iwlan0 -iwifi0"
INTERFACES="-iwlan0"
# ndiswrapper and prism
# DRIVERS="-Dndiswrapper -Dprism"
DRIVERS="-Dndiswrapper"
I assume you interface is called wlan0, if it is something different modify /etc/sysconfig/wpa_supplicant accordingly
Still as root, start the wpa_supplicant service with
Code:
/sbin/chkconfig wpa_supplicant on
/sbin/service wpa_supplicant start
this should give you an [OK] result.
You have two choices of running wpa_supplicant, wpa_cli or wpa_gui, I prefer wpa_gui and unfortunately wpa_gui does not have an icon yet but, you can create one.
Right click your desktop and select "Create Launcher", give it a name, the command is "/usr/bin/wpa_gui", choose an icon for it and the select Ok.
Restart your system/desktop/laptop/notebook/tablet
Double click the icon you created and you will be presented with the gui interface for wpa_supplicant, the adapter should have wlan0 highlighted and just click scan --Assumption is made that you have ndiswrapper working and your ssid is been broadcasted with WPA or WPA2 encryption.
Once you see your ssid, double click on it and type in your encryption key and then connect. Once connected to the ssid, open a terminal and
or use Network Control to activate wlan0
While looking at wpa_gui interface, you should see an ip address assigned to it.
Hope this helps and please post any question or comment :D