Linux Hostapd 移植与配置记录

一、简介

  Hostapd的功能就是作为softAP的认证服务器,负责控制管理stations(通常可以认为带无线网卡的PC)的接入和认证。hostapd一般与wpa_supplicant同时提供,这个东西是实现WPA加密认证的。

  下载地址:http://w1.fi/releases/

二、安装

  hostapd的安装依赖于libnl和openssl;

配置

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

编译

make

报错:

 ../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 status

 

版本问题。。换了一个版本的hostapd(hostapd-2.2.tar.gz),解决;

编译

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 拷贝到开发板上;

 

三、配置文件

对于 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.conf
Line 4: invalid/unknown driver 'nl80211'
1 errors found in configuration file '/etc/myhostapd.conf'

 

posted on 2018-03-13 11:24  Jalyn  阅读(1930)  评论(1)    收藏  举报

导航