How to install wpa supplicant
Contents
Installing wpa_supplicant
- Get the source see link below
- Edit .config according to your wlan driver (see driver section)
# #.config # # Uncomment following two lines and fix the paths if you have installed openssl # in non-default location #CFLAGS += -I/usr/local/openssl/include #LIBS += -L/usr/local/openssl/lib # Driver interface for Host AP driver #CONFIG_DRIVER_HOSTAP=y # Driver interface for Agere driver #CONFIG_DRIVER_HERMES=y # Change include directories to match with the local setup #CFLAGS += -I../../hcf -I../../include -I../../include/hcf #CFLAGS += -I../../include/wireless # Driver interface for Prism54 driver # (Note: Prism54 is not yet supported, i.e., this will not work as-is and is # for developers only) #CONFIG_DRIVER_PRISM54=y # Driver interface for ndiswrapper #CONFIG_DRIVER_NDISWRAPPER=y # Driver interface for Atmel driver #CONFIG_DRIVER_ATMEL=y # Driver interface for Broadcom driver #CONFIG_DRIVER_BROADCOM=y # Example path for wlioctl.h; change to match your configuration #CFLAGS += -I/opt/WRT54GS/release/src/include # Driver interface for Intel ipw2100/2200 driver #CONFIG_DRIVER_IPW=y CONFIG_DRIVER_MADWIFI=y # Change include directories to match with the local setup CFLAGS += -I../madwif CONFIG_DRIVER_WEXT=y # Driver interface for FreeBSD net80211 layer (e.g., Atheros driver) #CONFIG_DRIVER_BSD=y #CFLAGS += -I/usr/local/include #LIBS += -L/usr/local/lib # Driver interface for Windows NDIS #CONFIG_DRIVER_NDIS=y #CFLAGS += -I/usr/include/w32api/ddk #LIBS += -L/usr/local/lib # For native build using mingw #CONFIG_NATIVE_WINDOWS=y # Additional directories for cross-compilation on Linux host for mingw target #CFLAGS += -I/opt/mingw/mingw32/include/ddk #LIBS += -L/opt/mingw/mingw32/lib #CC=mingw32-gcc # Driver interface for development testing #CONFIG_DRIVER_TEST=y # Driver interface for wired Ethernet drivers #CONFIG_DRIVER_WIRED=y CONFIG_IEEE8021X_EAPOL=y # EAP-MD5 (automatically included if EAP-TTLS is enabled) CONFIG_EAP_MD5=y # EAP-MSCHAPv2 (automatically included if EAP-PEAP is enabled) CONFIG_EAP_MSCHAPV2=y # EAP-TLS CONFIG_EAP_TLS=y # EAL-PEAP CONFIG_EAP_PEAP=y # EAP-TTLS CONFIG_EAP_TTLS=y # EAP-GTC CONFIG_EAP_GTC=y # EAP-OTP CONFIG_EAP_OTP=y # LEAP CONFIG_EAP_LEAP=y # PKCS#12 (PFX) support (used to read private key and certificate file from # a file that usually has extension .p12 or .pfx) CONFIG_PKCS12=y # Include control interface for external programs, e.g, wpa_cli CONFIG_CTRL_IFACE=y
- install wpa_supplicant by make && make install
Configuration
For WPA-PSK
- Edit wpa_supplicant.conf
# #wpa_supplicant.conf # ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=0 eapol_version=1 # ap_scan=2 was the one for me you may try 0 or 1 indstead of 2 ap_scan=2 fast_reauth=1 network={ ssid="" proto=WPA key_mgmt=WPA-PSK pairwise=TKIP group=TKIP psk= }
You have to change the values according to the response of "wpa_passphrase yourAPssid yourpassphrase ".
Starting wpa_supplicant
Make sure that the modules ath_pci,ath_hal,ath_rate_sample,wlan,wlan_tkip,wlan_xauth are loaded (lsmod).
Now you are able to start wpa_supplicant by
wpa_supplicant -d -c/etc/wpa_supplicant.conf -iath0 -Dmadwifi
If every thing works as expected, you can replace -d by -B for the deamon mode.
Bringing up the network card manual
ifconfig ath0 yourip up
and changing the routes and add the default gateway.
=Bringing up the device at boot for gentoo users:
- Make a symbolic link ln -s net.lo net.ath0 in /etc/init.d/
- Copy wpa_supplicant.conf to /etc/conf.d/wpa_supplicant
- Edit /etc/conf.d/net
# #net # wpa_supplicant_ath0="-Dmadwifi" wpa_timeout_ath0=60 config_ath0=("yourip netmask 255.255.255.0") routes_ath0=("default gw yourgateway")
- Add net.ath0 to runlevel by
rc-update add net.ath0 default
- Make sure all needed modules are in /etc/modules.autoloa.d/2.x
Links
- wpa_supplicant source
- linux-wireless wireless howtos
- EAP-TLS setting up WLAN network with EAP-TLS