How to install wpa supplicant
Contents
Installing wpa_supplicant
- Get the source see link below
- Edit .config
# #.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.
Bring up my network card manual by
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