(Initial version) |
(→wpa_supplicant) |
||
(3 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | + | == iw == | |
[http://wireless.kernel.org/en/users/Documentation/iw iw] is a new nl80211 (802.11 netlink interface) based CLI configuration utility for wireless devices. | [http://wireless.kernel.org/en/users/Documentation/iw iw] is a new nl80211 (802.11 netlink interface) based CLI configuration utility for wireless devices. | ||
Line 21: | Line 21: | ||
</PRE> | </PRE> | ||
− | == iw == | + | === iw === |
With the Netlink Protocol Library Suite prerequisite installed, download and build the [http://wireless.kernel.org/en/users/Documentation/iw iw] nl80211 based CLI configuration utility: | With the Netlink Protocol Library Suite prerequisite installed, download and build the [http://wireless.kernel.org/en/users/Documentation/iw iw] nl80211 based CLI configuration utility: | ||
Line 48: | Line 48: | ||
</PRE> | </PRE> | ||
− | + | == wpa_supplicant == | |
[http://hostap.epitest.fi/wpa_supplicant/ wpa_supplicant] is a WPA Supplicant for linux offering support for WPA and WPA2. | [http://hostap.epitest.fi/wpa_supplicant/ wpa_supplicant] is a WPA Supplicant for linux offering support for WPA and WPA2. | ||
− | == Netlink Protocol Library Suite libnl-1.x == | + | === Netlink Protocol Library Suite libnl-1.x === |
wpa_supplicant requires the [http://www.infradead.org/~tgr/libnl/ Netlink Protocol Library Suite (libnl)] version 1.x. | wpa_supplicant requires the [http://www.infradead.org/~tgr/libnl/ Netlink Protocol Library Suite (libnl)] version 1.x. | ||
Line 67: | Line 67: | ||
</PRE> | </PRE> | ||
− | == OpenSSL == | + | === OpenSSL === |
[https://www.openssl.org/ OpenSSL] is a library for Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1). | [https://www.openssl.org/ OpenSSL] is a library for Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1). | ||
Line 84: | Line 84: | ||
</PRE> | </PRE> | ||
− | == wpa_supplicant == | + | === wpa_supplicant === |
With all the prerequisites installed, finally download, build and install the wpa_supplicant: | With all the prerequisites installed, finally download, build and install the wpa_supplicant: | ||
Line 103: | Line 103: | ||
cp /usr/arm-linux-gnueabi/lib/libcrypto.so.1.0.0 /home/export/rootfs/lib/ | cp /usr/arm-linux-gnueabi/lib/libcrypto.so.1.0.0 /home/export/rootfs/lib/ | ||
cp /usr/arm-linux-gnueabi/lib/libssl.so.1.0.0 /home/export/rootfs/lib/ | cp /usr/arm-linux-gnueabi/lib/libssl.so.1.0.0 /home/export/rootfs/lib/ | ||
+ | </PRE> | ||
+ | |||
+ | wpa_supplicant runs as a daemon and requires a configuration file. Create a file called /etc/wpa_supplicant.conf with the following contents: | ||
+ | |||
+ | <PRE> | ||
+ | network={ | ||
+ | ssid="MySSID" | ||
+ | key_mgmt=WPA-PSK | ||
+ | proto=RSN | ||
+ | pairwise=CCMP TKIP | ||
+ | psk="MyPassPhrase" | ||
+ | } | ||
+ | </PRE> | ||
+ | |||
+ | The above file works with both WPA (TKIP) and WPA2 (CCMP/AES). Please insert your access point name at MySSID and your pass phrase at MyPassPhase. | ||
+ | |||
+ | Once configured, wpa_supplicant can be started using: | ||
+ | |||
+ | <PRE> | ||
+ | wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf | ||
</PRE> | </PRE> | ||
iw is a new nl80211 (802.11 netlink interface) based CLI configuration utility for wireless devices.
iw requires the Netlink Protocol Library Suite (libnl)
Download, cross compile and install the Netlink Protocol libraries:
wget http://www.infradead.org/~tgr/libnl/files/libnl-3.2.24.tar.gz tar -xzf libnl-3.2.24.tar.gz cd libnl-3.2.24 ./configure --host=arm-linux-gnueabi --prefix=/usr/arm-linux-gnueabi make make install cd include make install
With the Netlink Protocol Library Suite prerequisite installed, download and build the iw nl80211 based CLI configuration utility:
wget https://www.kernel.org/pub/software/network/iw/iw-3.15.tar.gz tar -xzf iw-3.15.tar.gz cd iw-3.15/ export PKG_CONFIG_PATH=/usr/arm-linux-gnueabi/lib/pkgconfig export CC=arm-linux-gnueabi-gcc make
Manually install iw and required libraries on your target root-fs:
cp iw /home/export/rootfs/sbin/ cp /usr/arm-linux-gnueabi/lib/libnl-genl-3.so.200 /home/export/rootfs/lib/ cp /usr/arm-linux-gnueabi/lib/libnl-3.so.200 /home/export/rootfs/lib/
And update the dynamic linker run-time bindings on your target:
ldconfig -v
wpa_supplicant is a WPA Supplicant for linux offering support for WPA and WPA2.
wpa_supplicant requires the Netlink Protocol Library Suite (libnl) version 1.x.
Download, build and install libnl-1.x:
wget http://www.infradead.org/~tgr/libnl/files/libnl-1.1.4.tar.gz tar -xzf libnl-1.1.4.tar.gz cd libnl-1.1.4 ./configure --host=arm-linux-gnueabi --prefix=/usr/arm-linux-gnueabi make make install
OpenSSL is a library for Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1).
Download, build and install OpenSSL:
wget https://www.openssl.org/source/openssl-1.0.1h.tar.gz tar -xzf openssl-1.0.1h.tar.gz cd openssl-1.0.1h export ARCH=arm export CROSS_COMPILE=arm-linux-gnueabi- ./Configure linux-generic32 --prefix=/usr/arm-linux-gnueabi make make install
With all the prerequisites installed, finally download, build and install the wpa_supplicant:
wget http://hostap.epitest.fi/releases/wpa_supplicant-2.2.tar.gz tar -xzf wpa_supplicant-2.2.tar.gz cd wpa_supplicant-2.2/wpa_supplicant cp defconfig .config make CC=arm-linux-gnueabi-gcc make install DESTDIR=/home/export/rootfs
To be able to use wpa_supplicant on your target, it requires the following libraries to be installed:
cp /usr/arm-linux-gnueabi/lib/libnl.so.1.1.4 /home/export/rootfs/lib/ cp /usr/arm-linux-gnueabi/lib/libcrypto.so.1.0.0 /home/export/rootfs/lib/ cp /usr/arm-linux-gnueabi/lib/libssl.so.1.0.0 /home/export/rootfs/lib/
wpa_supplicant runs as a daemon and requires a configuration file. Create a file called /etc/wpa_supplicant.conf with the following contents:
network={ ssid="MySSID" key_mgmt=WPA-PSK proto=RSN pairwise=CCMP TKIP psk="MyPassPhrase" }
The above file works with both WPA (TKIP) and WPA2 (CCMP/AES). Please insert your access point name at MySSID and your pass phrase at MyPassPhase.
Once configured, wpa_supplicant can be started using:
wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf
hostapd is an 802.11 Access Point and IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator daemon.
Download, extract and build hostapd:
wget http://hostap.epitest.fi/releases/hostapd-2.2.tar.gz tar -xzf hostapd-2.2.tar.gz cd hostapd-2.2/hostapd cp defconfig .config make CC=arm-linux-gnueabi-gcc make install DESTDIR=/home/export/rootfs
rfkill is a userspace tool to query the state of the rfkill switches.
Download, extract and build rfkill:
wget https://www.kernel.org/pub/software/network/rfkill/rfkill-0.5.tar.gz tar -xzf rfkill-0.5.tar.gz cd rfkill-0.5/ make CC=arm-linux-gnueabi-gcc