Linux Hostapd 移植與配置記錄

1、簡介

  Hostapd的功能就是做爲softAP的認證服務器,負責控制管理stations(一般能夠認爲帶無線網卡的PC)的接入和認證。hostapd通常與wpa_supplicant同時提供,這個東西是實現WPA加密認證的。linux

  下載地址:http://w1.fi/releases/vim

2、安裝

  hostapd的安裝依賴於libnl和openssl;服務器

配置less

tar -zxvf hostapd-2.6.tar.gz
cd hostapd-2.6
cd hostapd
cp deconfig .config

.config 添加:
CONFIG_LIBNL32=y

CFLAGS += -I/home/work/lib/libnl-3.2.24/arm_install/include/libnl3
LDFLAGS += -L/home/work/lib/libnl-3.2.24/arm_install/lib

CFLAGS + = -I/home/work/lib/openssl-1.0.1f/__install/include
LDFLAGS += -L/home/work/lib/openssl-1.0.1f/__install/lib

修改編譯鏈加密

vim Makefile
CC=arm-arago-linux-gnueabi-gcc

編譯spa

make

報錯:code

 ../src/crypto/tls_openssl.o: In function `tls_parse_pkcs12':
/home/work/lib/hostapd-2.6/hostapd/../src/crypto/tls_openssl.c:2544: undefined reference to `SSL_CTX_clear_extra_chain_certs'
../src/crypto/tls_openssl.o: In function `tls_connection_client_cert':
/home/work/lib/hostapd-2.6/hostapd/../src/crypto/tls_openssl.c:2343: undefined reference to `SSL_CTX_clear_extra_chain_certs'
collect2: ld returned 1 exit statusblog

 

版本問題。。換了一個版本的hostapd(hostapd-2.2.tar.gz),解決;ssl

編譯開發

make

查看下安裝路徑:

vim Makefile 
/install    ---> Enter
904 install: all
905     mkdir -p $(DESTDIR)/usr/local/bin
906     for i in $(ALL); do cp -f $$i $(DESTDIR)/usr/local/bin/$$i; done

安裝

make DESTDIR=$PWD/arm_install install

將目錄下 share_install/usr/local/bin/hostapd hostapd_cli 拷貝到開發板上;

 

3、配置文件

對於 hostapd,最關鍵的一步就是配置hostapd的配置文件了。源程序裏面包含了一個hostapd.conf文件,這個文件很大,裏面的配置項至關的多,從簡單到高級。但通常地咱們可以使用到的功能只是其中不多的一部分,下面介紹一下我認爲最經常使用的一些配置選項。首先介紹一些基本的配置項:

a.hostapd的配置文件:WPA/WPA2

ctrl_interface=/var/run/hostapd
#change wlan0 to your wireless device
interface=wlan0    #接入點設備名稱,注意不要包含ap後綴,即若是該設備稱爲wlan0ap,填寫wlan0便可;
driver=rtl871xdrv  #設定無線驅動;
ssid=Jalyn_WiFi   #無線接入點的名稱
channel=1      #設定無線頻道

# 認證/加密方式
macaddr_acl=0    #可選,指定MAC地址過濾規則,0表示除非在禁止列表不然容許,1表示除非在容許列表不然禁止,2表示使用外部RADIUS服務器;
auth_algs=1
ignore_broadcast_ssid=0
wpa=3
wpa_passphrase=123456789
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
hostapd -B /etc/myhostapd.conf  #-B 表示後臺運行

注意:driver須要配置爲 rtl871xdrv ,配置爲 nl80211 將出現以下錯誤,這應該跟使用的WIFI驅動有關係:

root@Jalyn:/hmi/bin# hostapd -B /etc/myhostapd.conf Configuration file: /etc/myhostapd.confLine 4: invalid/unknown driver 'nl80211'1 errors found in configuration file '/etc/myhostapd.conf'

相關文章
相關標籤/搜索