- 论坛徽章:
- 0
|
小弟因工作需要必须实现station侧的wpa/11i,得之在linux下已经有人实现,故拿来使用。现在把自己的使用经验告诉大家,或许有人能用的到。
安装hostap_driver步骤
概述:
这款驱动只支持intersil’s prism2/2.5/3系列网卡,在Linux下使用。此驱动的最大特点是可以使得linux下的无线网卡工作在AP模式下,也就是做为AP使用,可以支持WPA/11i。另外此驱动也可以做为station驱动使用,并且同样支持WPA/11i。
做为station使用时,如果希望使用WPA/11i,必须配合另外一个应用程序使用――wpa_supplicant。Wpa_supplicant做为客户端工具支持802.1x系列,WPA/11i。
笔者使用的是hostap_driver的station用法,以实现WPA/11i的应用。
操作系统:
redhat7.1(2.4.2内核),随后用linux-2.4.24重新编译内核。
无线卡:
正诚科技的WL-311F无线卡,prism2.5,11b。用prism firmware 1.7.4升级。升级工具为windows下WinUpdate-0-7-0.exe(prism标准升级工具)。
各种软件包:
(1) hostap-driver-0.2.5.tar.gz
from: http://hostap.epitest.fi/
(2) wpa_supplicant-0.2.5.tar.gz
from: http://hostap.epitest.fi/
(3) wireless_tools.tar.gz
(4) pcmcia-cs-3.1.34.tar.gz
(5) openssl-0.9.7d.tar.gz
hostap安装步骤:
(1) 编译内核,选用2.4.24内核源码。Make menuconfig时
General setup->;
PCMCIA/CardBus support->;
<> CMCIA/CardBus support /*不要选*/
Network device support->;
Wireless LAN(non-hamradio)->;
Wireless LAN(non-hamradio)/*由此展开的驱动都不要选*/
(2) 安装wireless_tools。
不需要配置,不出意外,直接成功。
(3) 安装pcmcia-cs。
不需要配置,不出意外的话直接成功。会在/lib/modules/2.4.24/pcmcia/下产生多个.o文件。其中关键需要pcmcia_core.o、i82365.o、ds.o。
以下4-7步骤是关于hostap编译、安装、使用的:
(4) 直接在hostap_driver的解压目录中进行编译(第一级目录),需要在Makefile中指定合适的内核源码路径及pcmcia-cs目录路径。
(5) make。
hostap编译过程中可能会找不到iw_config.h文件,从内核源码中拷一个到/usr/include/net/下。
(6) 在/etc/pcmcia/hostap_cs.conf中必须存在使用的无线卡类型。如果没有,可以自己添加。关键是要有无线卡的manfid,在linux下可以通过cardctr ident命令查看卡的信息。
添加如下->;
card “Gemtek Systems Wi-Fi PC Card”
manfid 0x0156, 0x0002
bind “hostap_cs”
(7) make install。
可能会遇到警告报错关于8390.o的,可以忽略不管。
在/lib/modules/2.4.24/pcmcia/下会产生hostap.o、hostap_cs.o;
在/lib/modules/2.4.24/net/下会产生hostap_crypt_wep.o、hostap_crypt_ccmp.o、hostap_crypt_tkip.o
(8) 使用hostap_driver。
必须先insmod:
pcmcia_core、i82365、ds
再insmod:
hostap、hostap_cs
再insmod:
hostap_crypt_wep、hostap_crypt_ccmp、hostap_crypt_tkip
(9) /etc/init.d/pcmcia命令可以查看pcmcia插槽的工作状态。
pcmcia status /*状态*/
pcmcia stop /*关闭*/
pcmcia start /*启动*/
pcmcia restart /*重启*/
(10) 在pcmcia_cs目录下的debug-tools中有工具可以测试网卡的状况。
wpa_supplicant安装步骤:
笔者只需要其支持hostap_driver,并且能够支持WPA/11i
(1) 参照README创建.config文件,其中只选
CONFIG_DRIVER_HOSTAP=y
CONFIG_WIRELESS_EXTERSION=y
CONFIG_IEEE8021X_EAPOL=y
CONFIG_EAP_TLS=y
(2) 修改Makefile
ifdef TLS_FUNCS
# Shared TLS functions (needed for EAP_TLS, EAP_PEAP, and EAP_TTLS)
CFLAGS += -DEAP_TLS_FUNCS
OBJS += eap_tls_common.o
LIBS += -lssl
#add by myself
LIBS += -lcrypto
#end
LIBS_p += -lcrypto
endif
(3) 修改Makefile,指定合适的openssl相关路径。如无openssl,需安装,建议版本openssl-0.9.7d。
(4) make all
(5) cp wpa_supplicant wpa_cli /usr/local/bin
(6) /etc/wpa_supplicant.conf是wpa_supplicant启动配置文件,可以参照wpa_supplicant目录下的wpa_supplicant.conf制作修改。
全部安装好后,使用起来很简单,关键是配置正确的wpa_supplicant.conf。
 |
|