转载自:[https://zhuanlan.zhihu.com/p/674052171] ,侵权请告知。
1、网络语句块--配置文件中以network为标签的控制块
---在配置文件中,每个网络(通常是AP 的共享SSID)被视为独立的模块来配置
1) disabled:
0=该网络可以被使用(默认)
1=该网络语句块是失效的(可以通过ctrl_iface激活 eg:使用wpa_cli或者wpa_gui)
2、id_str:外部脚本的网络标识字符。
通过wpa_cli外部执行脚本将WPA_ID_STR作为环境变量,使得配置特定网络变得更加容易。
3、ssid:SSID(必须的);一种如下格式的网络名称:
引用双精度的ASCII字符
一个十六进制的字符串(SSID每个字节的两个字符)
4、scan_ssid:
0=不扫描这个通过特定的探测请求帧得到的SSID(默认)
1=扫描通过特定探测请求帧得到的SSID(这个可以用于寻找不接受广播的APs或者使用多SSIDs ;这个将会增加扫描延时时间,所以在有必要时才激活此选项)
5、bssid:BSSID
(不必要的、可选择的);如果设置了的话,这个网络语句块将被用于使用BSSID配置文件和APs取得关联。
6、priority: 优先级组 (整数)
默认情况下,所有网络将会获得相同的优先级组(0),如果有一些更加可取的网络,这个字段可以被用于改变wpa_supplicant在BSS中选择网络时的顺序。
这个优先级组将会迭代减少优先级(i.e,优先级数值越大,就越早在扫描结果中得到匹配),对于相同的优先级组,将会根据安全规则、信号强度等来作为选择的依据。
请注意在 scan_ssid=1 和 ap_scan=2 模式下AP的扫描不能够使用这个优先级组去选择扫描顺序。相反的他们尝试使用配置文件中的网络顺序。
7、mode: IEEE 802.11操作模式
0 = 基础架构模式(管理模式),i.e,和AP取得关联(默认)
1 = IBSS(自组网、点对点)
2 = AP (接入点)
注意:IBSS只能在key_mgmt NONE(明码文本和静态WEP)和WPA-PSK(proto = RSN)下使用。另外,key_mgmt=WPA-NONE(固定的TKIP/CCMP密码组)也是向后兼容的, 但是这种用法是过时的。
8、proto=WPA, key_mgmt=WPA-NONE, pairwise=NONE, group=TKIP(or CCMP,两个不能同时存在),并且密码必须也得到设置。
9、frequency:IBSS的通道频率(MHZ)
例如:2412=IEEE 802.11b/g 是通道一的频率。这个值被用于配置IBSS(adhoc自组网)的初始化通道。在基础架构模式下它将会被忽略。另外,这个值只用于创建IBSS站点。如果一个配置了SSID的IBSS网络已经存在,其网络的频率值将 会被用于替代这里的配置数值。
10、scan_freq:扫描频率的列表
当扫描BSS时使用空间分离的频率表(MHZ)扫描。如果该网络的通道设置是已知的,该选项可以被用于优化扫描行为,避免扫描网络没有用到的通道 Example: scan_freq=2412 2437 2462
11、freq_list:获得许可频率的数组
允许选择BBS的空间分离的频率表。如果设置了的话,当选择一个BSS时,扫描结果将考虑匹配任何特定的频率的网络。 这个选项也可以被设置到网络语句块外面。在这种情形下,它将限制特定的频率被扫描。
12、bgscan:后台扫描
通过设置为bgscan模块,wpa_supplicant可以被配置后台扫描行为。为了漫游在ESS下,这些模块要求在后台运行扫描。
—简单型:根据信号强度周期性地进行后台扫描
bgscan=”simple:::”
bgscan=”simple:30:-45:300”
—学习型:通过网络学习使用的通道,避免bgscan扫描其他通道(实验型)。
bgscan=”learn:::[:]”
bgscan=”learn:30:-45:300:/etc/wpa_supplicant/network1.bgscan”
—另外可通过以下命令取消bgscan:
bgscan=”“
这个选项也可以全局设置,应用于没有指定特定的bgscan参数。
13、proto:公认的协议列表
WPA=WPA/IEEE 802.11i/D3.0
RSN = WPA2/IEEE 802.11i (可以使用WPA2作为RSN的别名)
如果没有设置将会默认使用WPA RSN
14、 key_mgmt:公认的认证密钥管理协议列表
WPA-PSK = WPA 预共享密匙 (这需要‘psk’字段)
WPA-EAP = WPA 使用 EAP 认证
EEE8021X =IEEE 802.1X 使用EAP 认证并动态生成密匙
NONE = 没有使用 WPA ;可以使用明码密匙或者静态WEP
WPA-PSK-SHA256 = 类似 WPA-PSK 但是使用增强型的SHA256-based加密算法
WPA-EAP-SHA256 = 类似 WPA-EAP 但是使用增强型的SHA256-based加密算法
如果没有设置,将会模式设置为 WPA-PSK WPA-EAP
15、 ieee80211w:是否激活包含管理机制
0 = 取消(默认设置,除非通过和全局pmf参数改变)
1 = 可选择的
2 = 必要的
更多通用的配置选项基于PMF(包含管理机制protected management frames)认证程序:
—PMF enabled: ieee80211w=1 and key_mgmt=WPA-EAP WPA-EAP-SHA256
—PMF required: ieee80211w=2 and key_mgmt=WPA-EAP-SHA256
(当使用WPA2-Personal时WPA-PSK and WPA-WPSK-SHA256也是类似配置)
16、 auth_alg:允许的IEEE 802.11 认证算法列表
OPEN = 开放性系统认证(WPA/WPA2的必要选项)
SHARED = 共享密匙认证(静态WEP密码的必要选项)
LEAP = LEAP/Network EAP(只在LEAP中使用)
如果没有设置,将使用自动选择(如果LEAP允许作为一种EAP方法,LEAP开放系统将会被激活)
17、 pairwise : WPA点对点(单播)支持的密码表格
CCMP = AES 的CBC-MAC计数模式 [RFC 3610, IEEE 802.11i/D7.0]
TKIP = 临时密钥完整性协议 [IEEE 802.11i/D7.0]
NONE = 只使用组密码 (不赞成使用,当APs 支持成对密匙是将不被包含)
如果没有设置,将默认设置为: CCMP TKIP
18、 group:组(广播/组播)支持的密码列表
CCMP = AES 的CBC-MAC计数模式 [RFC 3610, IEEE 802.11i/D7.0]
TKIP = 临时密钥完整性协议 [IEEE 802.11i/D7.0]
WEP104 =104位 WEP(Wired Equivalent Privacy有效对等密匙)
WEP40 = 40位 WEP(Wired Equivalent Privacy有效对等密匙)[IEEE 802.11]
如果没有设置,将会默认设置为: CCMP TKIP WEP104 WEP40
19、 psk: WPA预共享密码;256位预共享密码
在WPA-PSK模式下的密码可以使用64进制数字输入,即,32字节或者一个ASCII密码(在这种情况下,真正的PSK将会使用密码和SSID生成)。
ASCII密码必须在8到63个字节之间(包含8字节和63字节)。拓展:拓展字段格式可以被用于表示PSK/passphrase储存在外部存储器中。 如果使用WPA-EAP这个字段不是必须的。
注意:其他一些工具,wpa_supplicant可以被用于从ASCII 密码中生成256位密匙。
这些进程将会占用很多CPU资源,并且在密码和SSID确实被改变的情况下再生成密匙可以优化wpa_supplicant的启动和重构时间。
20、 mem_only_psk:是否只在内存中保持PSK/passphrase
0 = 允许psk/passphrase储存在配置文件中
1 = psk/passphrase不储存到配置文件中
mem_only_psk=0
21、 eapol_flags: IEEE 802.1X/EAPOL 选项(bit field位字段)*
在non-WPA模式下的动态WEP 密码
bit0 (1):要求动态生成单播的WEP密钥
bit1 (2):要求动态生成广播WEP密钥
(3=要求两种类型的WEP密钥;默认设置)
注意:当使用无线认证时(包括macsec_qca设备驱动),为了能够完整地认证,需要将eapol_flags设置为0
22、 macsec_policy:EEE 802.1X/MACsec options选项
这决定了MACsec使用何种回话担保。这个目前只用于使用macsec_qca 设备驱动接口时。
0 = 不使用MACsec(默认)
1 = 激活MACsec-必须是安全的,接受密码服务器的通知来决定是否使用一个安全会话与否
23、 mixed_cell : 这个选项可以被用于配置是否为所谓的混杂单元,即一个同样的SSID 网络使用明码和加密密匙
0 = 取消(默认)
1 = 激活
24、 proactive_key_caching:
激活/取消WPA2的PMKSA随机缓存
0 = 取消(默认设置,除非使用全局参数okc来改变)
1 = 激活
25、 wep_key0..3:静态WEP密码
(双精度ASCII引用,比如“abcd”;或者没有引用的十六进制数,比如“012345678”)
wep_tx_keyidx: Default WEP key index (TX) (0…3)
26、 peerkey:是否允许直接连接的peerkey协议
(IEEE 802.11e DLS),这个只用于 RSN/WPA2
0 = 取消(默认)
1 = 激活
peerkey=1
27、 wpa_ptk_rekey:PTK最大的存活时间(秒).
这个选项可以被用于配置执行PTK密匙更新来缓解因为TKIP缺陷而受到的攻击
以下字段值用于内部EAP实施。
-
eap:可接受的空间分离的EAP方法列表
-
MD5 = EAP-MD5(不安全和不生成原密码。不能用于WPA;在使用方法EAP-PEAP or EAP-TTLS中的第二阶段使用)
-
MSCHAPV2 = EAP-MSCHAPv2 (不能单独使用WPA;在使用方法EAP-PEAP or EAP-TTLS中的第二阶段中使用)
-
OTP = EAP-OTP () (不能单独使用WPA;在使用方法EAP-PEAP or EAP-TTLS中的第二阶段中使用)
-
GTC = EAP-GTC (不能单独使用WPA;在使用方法EAP-PEAP or EAP-TTLS中的第二阶段中使用)
-
TLS = EAP-TLS(客户端和服务端的认证)
-
PEAP = EAP-PEAP(EAP认证隧道)
-
TTLS = EAP-TTLS (EAP认证隧道或者PAP/CHAP/MSCHAP/MSCHAPV2认证)
-
如果没有设置,所有编译的方法都被允许
28、identity:EAP的字符标识符
这个字段同样被用于配置使用EAP-PSK/PAX/SAKE/GPSK的NAI
29、anonymous_identity : EAP的匿名标识符字符串
(被用于支持不同的标识符隧道的非加密EAP类型的标识符,比如,EAP-TTLS)。
这个字段也可以被用于EAP-SIM/AKA/AKA’保存匿名标识符。
30、password: EAP的密码字符串。
这个字段既可以包含纯文本密码字符串(使用ASCII或者十六进制字符串)也可以一个使用hash:<32 hex digits>格式的16字节MD4 哈希密码.
31、 ca_cert:CA 的认证文件(PEM/DER)的路径
这个字段有一个或者多个的受信任的CA认证。 如果ca_cert 和 ca_path都没有包含文件路径,认证服务将不会验证。这是不安全的, 并且当使用EAP-TLS/TTLS/PEAP时一个受信任的CA认证总是被配置。完整的路径应该为绝对路径(wpa_supplicant可能在后天运行时改变工作路径)。
32、 client_cert : 客户端认证文件的路径(PEM/DER)
完整的路径应该为文件的绝对路径(因为wpa_supplicant运行在后台时可能会改变工作路径)
另外,名为blob的配置也可以被用来设置blob://.
33、 private_key : 客户端私人密匙文件路径(PEM/DER/PFX)
当使用 PKCS#12/PFX 文件 (.p12/.pfx), client_cert应该被注释掉。这种情况下私人密匙和认证将会从PKCS#12文件中读出。完整的路径应该为文件的绝对路径.
(因为wpa_supplicant运行在后台时可能会改变工作路径)
34、 disable_ht : 是否取消HT (802.11n)
0 = 使能HT (802.11n)(如果AP支持的话)
1 = 取消
35、disable_ht40 : 是否取消HT-40 (802.11n)
0 = 使能HT-40 (802.11n)(如果AP支持的话)
1 = 取消HT-40 (802.11n)
36、 disable_sgi : 是否取消SGI (short guard interval短护栏间隔)
0 = 激活SGI(如果AP支持的话)
1 = 取消SGI
37、 disable_ldpc : 是否取消LDPC
0 = 激活LDPC(如果AP支持的话)
1 = 取消LDPC
38、 ht40_intolerant : 是否取消容忍40MHZ
0 = 容忍40MHZ
1 = 不容忍40MHZ
39、 ht_mcs : 配置为允许MCS率
解析为一个十六进制的字节数组
ht_mcs=”” // Use all available (default)默认使用所有可用的数值
ht_mcs=”0xff 00 00 00 00 00 00 00 00 00 ” // Use MCS 0-7 only只使用0-7MCS
ht_mcs=”0xff ff 00 00 00 00 00 00 00 00 ” // Use MCS 0-15 only只使用0-15MCS
40、 disable_max_amsdu : 是否取消MAX_AMSDU
-1 = 不做任何改变
0 = 如果硬件支持的话使能MAX_AMSDU
1 = 取消 AMSDU
41、ampdu_factor : 外部最大的A-MPDU长度
数值范围:0-3,see 7.3.2.56.3 in IEEE Std 802.11n-2009.
42、 ampdu_density : 允许重写AMPDU的密度配置
作为提示被内核处理
-1 = 不做任何改变。
0-3 = 设置AMPDU的密度(及称为因子)为指定的值
43、 disable_vht : 是否取消VHT
0 = 激活VHT(如果AP支持的话)
1 = 取消VHT
44、 vht_capa : 设置VHT为重写功能
vht_capa_mask : VHT功能的掩码
vht_rx_mcs_nss_1/2/3/4/5/6/7/8: override the MCS set for RX NSS 1-8重写MCS设置为RX NSS 1-8
vht_tx_mcs_nss_1/2/3/4/5/6/7/8: override the MCS set for TX NSS 1-8重写MCS设置为TX MSS 1-8
0 = MCS 0-7
1 = MCS 0-8
2 = MCS 0-9
3 = 不支持