您的位置:首页 > 其它

WIFI

2016-01-22 16:31 246 查看
WIFI知识摘要

2016-1-20 wpa_supplicant

加密方式:TKIP & AES 对应 TKIP & CCMP
这里主要涉及WEP、WPA、WPA2和RC4、TKIP、AES。

安全方式:NONE WEP WPA-PSK WPA2-PSK  
[WEP][ESS] []       []

安全选项:

例如[WPA-PSK-CCMP][ESS]

加密模式主要有:
WEP,
WPA-PSK(TKIP),
WPA2-PSK(AES)和
WPA-PSK(TKIP)+ WPA2-PSK(AES)。-最安全

WPA=IEEE802.11idraft3=IEEE802.1X/EAP+WEP(选择性项目)/TKIP

WPA2=IEEE802.11i=IEEE802.1X/EAP+WEP(选择性项目)/TKIP/CCMP

在802.11中的帧有三种类型:

管理帧(Management Frame,例如Beacon帧、Association帧)、

控制帧(Control Frame,例如RTS帧、CTS帧、ACK帧)、

数据帧(Data Frame,承载数据的载体,其中的DS字段用来标识方向很重要)。帧头部中的类型字段中会标识出该帧属于哪个字段。

group=CCMP TKIP表示自动匹配加密算法

CCMP采用的是AES算法,从安全性角度看比较好。

但目前现网中老一些的终端(如采用windows XP SP1系统)不支持WPA2的ccmp,所以TKIP的适用性更广泛一些。

答:802.11i是无线安全协议,是总的原则,相当于“宪法”,其内容包括WPA和WPA2两个部分内容,WPA相当于“治安处罚管理条例”,而WPA2相当于“刑罚”,所以WPA2是更高级的一种安全方式。PSK和802.1X是两种无线安全实现的方式,PSK是一种个人级别的,相对简单,而802.1X是一种企业级别的,较为复杂,但更安全。TKIP和CCMP是两种数据加密算法,在WPA和WPA2中都可以使用。而AES是CCMP算法中的核心算法,且目前来看,是最可靠的加密算法。

经过编译后的wpa_supplicant源程序可以看到

命令集  iwconfig  iwgetid   iwlist    iwpriv    iwspy   --help

引用

# iwconfig interface key 0123-4567-89

# iwconfig interface key [3] 0123-4567-89

# iwconfig interface key s:password [2]

# iwconfig interface key [2]

# iwconfig interface key open

# iwconfig interface key off

# iwconfig interface key restricted [3] 0123456789

# iwconfig interface key 01-23 key 45-67 [4] key [4]

两个主要的可执行工具:wpa_supplicant和wpa_cli。

wpa_supplicant是核心程序,它和wpa_cli的关系就

是服务和客户端的关系:后台运行wpa_supplicant,

使用wpa_cli来搜索、设置、和连接网络。

WPA2只是RSN的别名,而AES也是CCMP的一部分

network=开始是无线接入点的具体配置,一般的无线接入点可以用wpa_passphrase来自动生成

wpa_passphrase TPLINK 12345678  //获取network={}

wpa_passphrase TPLINK 12345678 |sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf 

wpa_supplicant是一个较好的选择,但缺点是它不支持所有的驱动。

wireless-tools支持几乎所有的无线网卡和驱动,但它不能连接到那些只支持WPA的AP。

D-Link_DIR-612

wpa_cli -iwlan0 -p/data/system/wpa_supplicant

eg.1、连接无加密的AP

eg.2、连接WEP加密AP

eg.3、连接WPA-PSK/WPA2-PSK加密的AP
>add_network   (assume return 2)
>set_network 2 ssid "666"
>set_network 2 psk "your pre-shared key"
>enable_network 2
get_network <network id> <key>

wpa_supplicant.conf
network

//

1. 此无线网络不设置安全机制

# iwlist scanning            # 搜索无线网络,我们假设搜索到了 oceanboo-wireless

# iwconfig interface essid oceanboo-wireless

# dhcpcd interface

够简单了吧,这样,你的机器就连接上 oceanboo-wireless 这个无线网络了,dhcp 获得了 ip 地址。不过不给无线路由器设置密码是很愚蠢的做法,假如你不是开咖啡厅、快餐店,还是设置一个密码吧。

2. 此无线网络设置了安全机制,使用 WEP 加密认证。

# iwlist scanning           # 还是一样的搜索,记住这个命令。

# iwconfig  interface essid oceanboo-wireless key XXXX-XXXX-XXXX-XXXX or XXXXXXXX.   # XXX多了点,不过如果你设置过无线路由,你一定知道这是啥玩意,我就不多说了。

# dhcpcd interface

//

WEP 全名为 Wired Equivalent Privacy 有线等效加密

WPA 全名为 Wi-Fi Protected Access 完备之前替代 WEP 的过渡方案

WPA2 实作了完整的标准,但不能用在某些古老的网卡上。

 wpa_supplicant -i interface -c /etc/wpa_supplicant/wpa_supplicant.conf  -D wext -B 

上面的命令 

各个选项及其含义:

  -b = optional bridge interface name

       增加网桥名称

  -B = run daemon in the background

       后台执行

  -c = Configuration file

       附加配置文件,即根据配置文件执行操作

  -C = ctrl_interface parameter (only used if -c is not)

       控制网口参数

  -i = interface name

       网口名称

  -d = increase debugging verbosity (-dd even more)

       增加调试信息输出

  -D = driver name (can be multiple drivers: nl80211,wext)

       驱动名称

  -g = global ctrl_interface

       全局网口配置

  -K = include keys (passwords, etc.) in debug output

       在debug输出中包含keys

  -t = include timestamp in debug messages

       将各个debug信息前输出时间标签

  -h = show this help text

       显示帮助信息

  -L = show license (GPL and BSD)

       显示license

  -o = override driver parameter for new interfaces

       覆盖driver参数

  -O = override ctrl_interface parameter for new interfaces

       覆盖ctrl_interface参数

  -p = driver parameters

       携带驱动参数

  -P = PID file

       进程文件

  -q = decrease debugging verbosity (-qq even less)

        在debug中不输出指定参数

  -v = show version

       显示版本信息

  -W = wait for a control interface monitor before starting

       启动前等待控制接口

  -N = start describing new interface

       启动对新接口的描述

 -t -d /data/misc/wifi/log.txt

# dhcpcd interface    

# emerge -av wpa_supplicant

emerge --ask wpa_supplicant

 wpa_supplicant 、 wpa_cli 、 wpa_passphrase 、 wpa_gui

 

驱动(一般常使用的就是wext):

  wext = Linux wireless extensions (generic)

  hostap = Host AP driver (Intersil Prism2/2.5/3)

  atmel = ATMEL AT76C5XXx (USB, PCMCIA)

  wired = Wired Ethernet driver 

 iwlist scanning           # 还是一样的搜索,记住这个命令。  

 

#/system/bin/wpa_supplicant -d -Dwext -iwlan0 -c/data/misc/wifi/wpa_supplicant.conf

 /system/bin/wpa_supplicant :wpa_supplicant可执行程序path

/data/misc/wifi/wpa_supplicant.conf :wpa_supplicant的配置文件path

#wpa_cli -iwlan0 -p/data/system/wpa_supplicant

wpa_passphrase TPLINK 12345678 

# Example MACsec configuration

#network={

# key_mgmt=IEEE8021X

# eap=TTLS

# phase2="auth=PAP"

# anonymous_identity="anonymous@example.com"

# identity="user@example.com"

# password="secretr"

# ca_cert="/etc/cert/ca.pem"

# eapol_flags=0

# macsec_policy=1

#}

/etc/wpa_supplicant/wpa_supplicant.conf:

ctrl_interface=/var/run/wpa_supplicant

ctrl_interface_group=wheel

update_config=0

fast_reauth=1

#WEP网络

network={

        ssid="SYSTEX-GROUP"

        psk="密码"

        pairwise=TKIP

        group=TKIP

        priority=5

}

#WPA网络

network={

        ssid="SYSTEX"

        key_mgmt=WPA-EAP IEEE8021X

        group=CCMP

        pairwise=CCMP

        identity="用户名"

        password="密码"

        priority=5

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  WIFI