什么是wpasupplicat?
wpa_supplicant is a WPA Supplicant for Linux, BSD, Mac OS X, and Windows with support for WPA and WPA2 (IEEE 802.11i / RSN). It is suitable for both desktop/laptop computers and embedded systems. Supplicant is the IEEE 802.1X/WPA component that is used in the client stations. It implements key negotiation with a WPA Authenticator and it controls the roaming and IEEE 802.11 authentication/association of the wlan driver.
wpa_supplicant is designed to be a "daemon" program that runs in the background and acts as the backend component controlling the wireless connection. wpa_supplicant supports separate frontend programs and a text-based frontend (wpa_cli) and a GUI (wpa_gui) are included with wpa_supplicant.
wpa_supplicant uses a flexible build configuration that can be used to select which features are included. This allows minimal code size (from ca. 50 kB binary for WPA/WPA2-Personal and 130 kB binary for WPA/WPA2-Enterprise without debugging code to 450 kB with most features and full debugging support; these example sizes are from a build for x86 target).
1.什么是wpa_spplicant
wpa_supplicant本是开源项目源码,被谷歌修改后加入android移动平台,它主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket(不管是wpa_supplicant与上层还是wpa_supplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过socket发送命令给wpa_supplicant调动驱动来对WiFi芯片操作。 简单的说,wpa_supplicant就是WiFi驱动和用户的中转站外加对协议和加密认证的支持。
2.wpa_supplicant无线网络配置
目前可以使用wireless-tools 或wpa_supplicant工具来配置无线网络。请记住重要的一点是,对无线网络的配置是全局性的,而非针对具体的接口。
wpa_supplicant是一个较好的选择,但缺点是它不支持所有的驱动。请浏览wpa_supplicant网站获得它所支持的驱动列表。另外,wpa_supplicant目前只能连接到那些你已经配置好ESSID的无线网络。wireless-tools支持几乎所有的无线网卡和驱动,但它不能连接到那些只支持WPA的AP。
经过编译后的wpa_supplicant源程序可以看到两个主要的可执行工具:wpa_supplicant和wpa_cli。wpa_supplicant是核心程序,它和wpa_cli的关系就是服务和客户端的关系:后台运行wpa_supplicant,使用wpa_cli来搜索、设置、和连接网络。
apt-get update #更新软件包
apt-get install wpasupplicant #安装无线支持工具
vi /etc/network/interfaces #使用vi编辑器打开网络配置文件
将interfaces中的内容修改成以下内容
auto lo
iface lo inet loopback
auto eth0 #本行与下一行注释请在复制时删除。
iface eth0 inet dhcp #如不使用有线网口连接,请删除这两条,否则开机时间会延长。
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
:wq保存退出 输入以下指令:
wpa_passphrase <你所需连接的无线网络SSID> <该网络无线密码>
而后会出现类似这样的信息
network={
ssid="XXXXXXX"
#psk="XXXXXXX"
psk=1c98tdenf98007sadfv3943db7269ec71bd104e4dfd0f614
}
将以上信息复制下来
vi /etc/wpa_supplicant/wpa_supplicant.conf #使用vi编辑器打开无线配置文件
:wq保存退出 或使用以下命令将无线信息直接写入wpa_supplicant.conf中:
wpa_passphrase [SSID] [密码] >> /etc/wpa_supplicant/wpa_supplicant
最后运行以下命令即可开启无线网卡
ifup wlan0
参考: [1] .
http://willsky.info/?p=321 [2].
http://blog.csdn.net/wesleyluo/article/details/8104564 [3].
http://hostap.epitest.fi/wpa_supplicant/