APP下载

Linux下使用WPA保护无线网络安全

2009-01-12霍琼华

企业技术开发·中旬刊 2009年4期
关键词:无线网络

霍琼华

摘要:随着无线网络接入技术的发展,无线网络接入已经成为重要的网络接入方式,与此带来的网络安全问题也越来越受到重视,如何保护无线网络的安全,避免非授权用户接入无线网络也得到了更多的关注。在Windows平台下,操作系统简化了无线接入使用安全协议的操作步骤,用户几乎感觉不到这些安全协议的存在。而在Linux平台下,提供的无线接入程序界面友好程度相对要低一些,尤其是在对WPA 协议的支持上不能完全支持,经常会出现无法通过身份认证而无法连接到网络的情况。文章以 Linux下使用较多的Ubuntu版本为例,介绍了如何在Linux平台下使用WPA协议保护的无线网络的方法。

关键词:LINUX;WAP;无线网络

中图分类号:TP393.17文献标识码:A文章编号:1006-8937(2009)08-0119-02

Linux是一套免费使用和自由传播类Unix操作系统,其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。目前Linux的版本有很多,比较知名的有Red hat,Open SUSE以及目前比较流行的Ubuntu等。Ubuntu作为新兴的Linux版本,以其便捷的图形化操作界面,相比其他版本的Linux而言,大大减少了用户所需要记忆的各种枯燥的命令,而获得更多用户的青睐。目前无线接入相对于有线接入方式来说,最大的好处莫过于可以甩开网线,实现随时随地网络接入。Ubuntu虽然提供了无线接入方式,但是需要用户进行相应的配置,而且Ubuntu下的网络管理图形界面Network Management对于WPA无线身份认证协议支持不是很好,经常出现无法连接到使用WPA身份认证的无线AP的情况,下面介绍使用wpa_supplicant+wifi-radar方式实现接入WPA身份认证无线AP方法。

1无线网络相关术语

无线局域网络(Wireless Local Area Networks; WLAN)是相当便利的数据传输系统,它利用射频(Radio Frequency; RF)的技术,取代旧式碍手碍脚的双绞铜线(Coaxial)所构成的局域网络。

AP是(Wireless) Access Point的缩写,即(无线)访问接入点。如果无线网卡可比作有线网络中的以太网卡,那么AP就是传统有线网络中的HUB,也是目前组建小型无线局域网时 最常用的设备。AP相当于一个连接有线网和无线网的桥梁,其主要作用是将各个无线网络客户端连接到一起,然后将无线网络接入以太网(这正是Access Point名称的本义)。

SSID是Service Set Identifier的缩写,意思是:服务集标识。SSID技术可以将一个无线局域网络分为几个需要不同身份验证的子网络,每一个子网络都需要独立的身份验证,只有通过身份验证的用户才可以进入相应的子网络,防止未被授权的用户进入本网络,SSID也可以写为ESSID,用来区分不同的网络,最多可以有32个字符,无线网卡设置了不同的SSID就可以进入不同网络。出于安全考虑可以不广播SSID,此时用户就要手工设置SSID才能进入相应的网络。简单说,SSID就是一个局域网的名称,只有设置为名称相同SSID的值的电脑才能互相通信。

WEP--Wired Equivalent Privacy加密技术,WEP安全技术源自于名为RC4的RSA数据加密技术,以满足用户更高层次的网络安全需求。WEP是Wired Equivalent Privacy的简称,有线等效保密(WEP)协议是对在两台设备间无线传输的数据进行加密的方式,用以防止非法用户窃听或侵入无线网络。802.11b标准里定义的一个用于无线局域网(WLAN)的安全性协议。WEP被用来提供和有线LAN同级的安全性,目标就是通过对无线电波里的数据加密提供安全性,如同端-端发送一样。

WPA 全名为 Wi-Fi Protected Access,有WPA 和 WPA2两个标准,是一种保护无线电脑网络(Wi-Fi)安全的系统。WPA 实作了 IEEE 802.11i 标准的大部分,是在 802.11i 完备之前替代 WEP 的过渡方案。在使用家庭中和小型办公室最可能选用的“个人”模式时,为了保全的完整性,所需的密码一定要超过六到八个字符。

2配置实例

在配置计算机前,首先要对AP进行相应的配置,以启用WPA身份认证。这里以常见的无线宽带路由器TP-LINK的TL-WR340G型无线宽带路由器配置为例,其他型号的无线宽带路由器可以参考说明书进行相应的设置。首先在连接到无线宽带路由器的计算机上启动浏览器,在地址栏输入无线宽带路由器管IP地址,通常默认地址为:192.168.1.1,在弹出的登录对话框中输入用户名和密码,默认用户名和密码都是:admin。切换到无线参数选项栏中,首先对默认的SSID进行修改。为了提高无线网络安全性,建议将广播SSID功能取消,避免授权用户对AP进行扫描。将无线路由器的“开启安全设置”打开,在“安全类型”中,可以选择“WEP”,“WPA/WPA2”,“WPA-PSK/WPA2-PSK”,根据上面的介绍,WEP作为较旧的无线加密技术,RC4目前已经被破解,继续采用WEP方式已经无法满足安全的需求了,而 WPA/WPA2方式是指采用企业级的 WPA/WPA2身份认证方式,网络上还需要一台 RADIUS 服务器完成802.1x身份认证协议的支持,对于一般用户使用不到。PA-PSK/WPA2-PSK方式为个人版的WPA,已经可以足够满足搭建安全无线网络的需求了,所以这里“安全类型”选择“WPA-PSK/WPA2-PSK”。在“安全选项”中,选择类型有:“自动”,“WPA-PSK”,“WPA2-PSK”,最好选择安全性更高的WPA2-PSK。在“加密方式”:“自动”,“TKIP”,“AES”三个选项中,最好选择“自动”,表示同时启用“TKIP”,“AES”两种方式,因为TKIP: Temporal Key Integrity Protocol负责处理无线安全问题的加密部分,TKIP由WEP使用的同样的加密引擎和RC4算法组成,不过TKIP中密码使用的密钥长度为128位,AES用于对密匙进行加密。在PSK密码栏输入加密密匙:“TestPassw0rd123456”(注意:这里输入的密码长度最短为8个字符,最长不超过63个字符)。一切输入完毕以后点击保存,将配置保存。配置如图1所示。在配置完无线安全参数后,可以根据需要打开无线AP的DHCP功能,为了保护无线网络的安全,不建议打开该功能。

配置完无线AP以后,就可以在Ubuntu下进行配置了。配置之前首先需要进行一些准备工作:{1}检查你所安装的Ubuntu版本,目前最新的Ubuntu版本为8.10版,而8.04版以上的Ubuntu默认已经安装了wpa_supplicant,如果不清楚自己所安装的Ubuntu版本,可以在终端模式下输入命令:$uname -r 以检查自己的Ubuntu版本,8.04版本以上所使用的内核编号为2.6.24-19-generic。{2}安装wifi-radar软件包。wifi-radar是一个用Python语言编写的带图形化界面的WiFi管理软件,而我们就是使用wifi-radar代替Ubuntu自带的Network Management完成连接到无线网络工作。默认情况下Ubuntu是不安装wifi-radar软件包的,需要我们手动添加该软件包。从wifi-radar软件包的官方主页上进行下载安装包了,需要注意的是wifi-radar软件包对系统的其他软件包具有依赖关系,在安装wifi-radar软件包之前,要确认具有依赖关系的其他软件包都已经安装完毕。wpa_supplicant程序是在Linux,,BSD,Mac OS X以及Windows平台下提供对WPA/WPA2协议的支持。wpa_supplicant提供WPA-PSK,WPA(RADIUS 认证服务器) ,支持AES(Ubuntu下为CCMP)以及TKIP加密算法 ,支持PMKSA,以及预分配两种密匙管理方式。启用wpa_supplicant方法为:在终端模式下输入命令:$sudo wpa_supplicant -Bw -i wlan0 -c ~/wpa2-psk-tkip.conf就可以了(注意运行wpa_supplicant需要提升为root权限。-B:程序运行于后台。-w:等待直到网卡准备好,如果不带该参数wpa_supplicant运行后就会自动退出。-i:指定在哪一块网卡上监听。-c:指定wpa_supplicant所需要使用的配置文件。WPA-PSK协议中需要指定无线AP的SSID,使用的加密算法,以及使用的密匙等信息,就是通过wpa_supplicant配置文件提供的。在使用wpa_supplicant之前,要先建立所要使用的配置文件,根据无线AP上进行的安全配置选项,在当前用户目录下建立wpa2-psk-tkip.conf配置文件如下:

# WPA-PSK/TKIP

ctrl_interface=/var/run/wpa_supplicant

network={

ssid="wireless-home"

#输入无线AP的SSID

key_mgmt=WPA-PSK

#密匙管理采用WPA-PSK方式

proto=WPA2

#使用WPA2协议

pairwise=TKIP

#加密方式TKIP

group=TKIP

#密匙组TKIP

psk="TestPassw0rd123456" #输入无线AP中保存的密匙

}

在以上这些工作都结束以后,在终端模式下运行:$sudo wpa_supplicant -Bw -i wlan0 -c ~/wpa2-psk-tkip.conf,wpa_supplicant程序就已经在后台中运行,检查程序是否已经运行,在终端模式下输入:$ps -A | grep wpa_supplicant查看是否有wpa_supplicant进程正在运行。在完成wpa_supplicant程序进行身份认证的部分后,就可以开始使用wifi-radar管理无线网络连接了。在终端模式下运行:$sudo wifi-radar(需要提升至root权限)。wifi-radar是一个图形化界面的无线网络连接管理程序。单击“New”,在弹出的对话框中Network Name输入无线AP的SSID:wireless-home,在WPA项点击“Use WPA”,“Driver”项栏目保持为空,如果之前的无线AP配置中打开了DHCP功能的话,保持“Automatic network configuration(DHCP)”不作修改,否则填入与无线AP所在同一网段的IP地址以及网关。配置完毕以后,点击“Save”保存,回到wifi-radar界面下点击“Connect”,就可以连接到无线AP。

在使用过程中,如果出现无法连接到无线AP的情况,通常是wpa_supplicant配置文件出现了问题,为了确定身份认证是否成功,可以在运行wpa_supplicant时不带控制参数-B,此时wpa_supplicant程序运行在终端控制台中,通过查看wpa_supplicant运行信息,即可判断是否是因为身份认证失败导致无法连接到无线AP,如(见图2)。

当看到“WPA: Group rekeying completed with 00:1d:0f:43:30:54 [GTK=TKIP]”这条信息,表示身份认证已经成功。

3结语

以上就是在Linux平台下使用wpa_supplicant+wifi-radar方式实现连接到WPA身份认证无线AP的相关配置。Linux下连接到WPA身份认证无线AP的方法较Windows平台复杂,但是在做好相关配置文件后,Linux也可以如此简单地使用无线安全协议WPA来保护了无线网络的安全。同时通过查看wpa_supplicant程序的运行信息,可以直观的看到WPA的认证过程,有助于对WPA协议的认识。

猜你喜欢

无线网络
滤波器对无线网络中干扰问题的作用探讨
基于信令分析的TD-LTE无线网络应用研究
无线网络的中间人攻击研究
实验室中无线网络的组建与设计
数说无线网络:覆盖广 流量大 均衡差