wpa_supplicant 的配置說明文件 wpa_supplicant.conf

wpa_supplicant 配置文件的例子

  • 這個配置文件描述的格式和列表都是可用的選項

  • 請閱讀“examples”子目錄下簡單的配置例子

  • 空行和空字符以及以“#”開頭的字符都會被忽略

  • 注意:這個文件中可能包含密碼信息并且在多用戶系統(tǒng)中

  • 只有root用戶才生效

  • 注意:為確保當(dāng)wpa_supplicant運行在后臺時,允許修改工作目錄。

  • 在這個配置文件中的文件路徑應(yīng)該為絕對路徑

  • 是否允許wpa_supplicant更新(覆蓋)配置文件

  • 這個選項允許修改配置后wpa_supplicant可以覆蓋配置文件

  • (eg:通過wpa_cli加入新的網(wǎng)絡(luò)語句塊、wpa_gui寫入配置、密碼改變等情況)

  • 這對于wpa_cli和wpa_gui能夠永久地修改配置是必需的。

  • 請注意允許更新配置時應(yīng)將該處的注釋“#”移除

#updata_config=1
  • 全局配置(在所有網(wǎng)絡(luò)語句塊中共享)

  • 控制接口的參數(shù),如若參數(shù)是指定的,wpa_supplicant將會為外部程序打開控制接口從而管理wpa_supplicant。字符串的含義取決于使用何種接口機制,對于所有案例,存在與配置中的參數(shù)決定了控制接口是否使能

  • 對于 UNIX的域名套接字(在linux和BSD默認使用):這個目錄是為了監(jiān)聽從外部程序(CLI/GUI,etc.)對于查看狀態(tài)信息和配置內(nèi)容的請求。

  • 套接字文件的命令將會基于接口的名稱,因此如果有多個接口可用,多個wpa_supplicant程序可以運行在用一個時刻。

  • /var/run/wpa_supplicant是默認的也是推薦使用的存放套接字的目錄,wpa_cli將會在嘗試和wpa_supplicant連接時使用它。

  • 通過設(shè)置該目錄從而只允許一組成員使用套接字,控制接口的接入控制可以得到配置。這樣wpa_supplicant就有可能以root權(quán)限運行(當(dāng)需要改變網(wǎng)絡(luò)配置時和打開原始套接字時),同時仍然允許GUI/CLI 部分運行在非root權(quán)限的用戶下。然而,因為該控制接口可以改變網(wǎng)絡(luò)配置,在很多情況下這個接口需要被保護。默認情況下,wpa_supplicant配置為使用gid 0(組ID為0 即root用戶)。如果你想允許非root權(quán)限的用戶去使用該控制接口的話,加入新的組并且改變這個值匹配那個組。添加用戶到改組是需要擁有控制接口。如果該變量被注釋掉或則沒有包含在配置文件中。當(dāng)創(chuàng)建目錄或套接字創(chuàng)建時,該組將不會更改默認值的值。

  • 在配置目錄和組時,使用如下格式:

  • DIR=/var/run/wpa_supplicant GROUP=wheel

  • DIR=/var/run/wpa_supplicant GROUP=0

  • (groud 可以是組的名稱或者gid)

  • 對于UDP的連接(windown下默認為該協(xié)議連接)改值將會被忽略。

  • 該變量只是用于選擇控制接口被創(chuàng)建,該值可以設(shè)置為udp(ctr_interface=udp).

  • 對于windows的命名管道,該值可以被用于設(shè)置控制接口的安全描述符。可以使用安全描述符字符串格式設(shè)置(可看http://msdn.microsoft.com/library/default.asp?url=/library/en-us/secauthz/security/),該描述符需要加上 ”SDDL= “的前綴。例如,ctr_interface=SDDL=D 該語句將會設(shè)置一個空的DACL(拒絕所有連接)??稍谖臋n“README-Windows.txt”獲取更多關(guān)于SDDL字符格式的信息。

ctrl_interface=/var/run/wpa_spplicant
  • IEEE 802.1X/EAPOL 版本
  • wpa_supplicant 的執(zhí)行是基于 IEEE 802.1X-2004定義的EAPOL 第二版本 的標(biāo)準(zhǔn)。然而很多接入沒有正確地遵循這一新版本號(他們似乎完全放棄了這一架構(gòu))。為了能讓wpa_supplicant和和這些接入點進行交互操作,改版本號默認設(shè)置為1,以下的配置數(shù)字可以用于設(shè)置為新版本(2)。
  • 注意:當(dāng)使用MACsec,eapol_version 應(yīng)該設(shè)置為3,定義在IEEE std802.1X-2010中
eapol_version=1
  • 接入點的掃描和選擇
  • 默認情況下,wpa_supplicant請求驅(qū)動程序執(zhí)行接入點的掃描并使用掃描結(jié)果選擇合適的接入點。另外一種選擇是允許設(shè)備驅(qū)動兼顧接入點的掃描和選擇并且使用wpa_supplicant只是運行基于IEEE 802.11 的EAPOL(extensible Authentication protol over Lan 基于局域網(wǎng)的可擴展認證協(xié)議)聯(lián)系設(shè)備驅(qū)動的信息。
  • 參數(shù):0:wpa_supplicant啟動掃描和接入點選擇;如果和當(dāng)前可找到可用的網(wǎng)絡(luò)不匹配,一個新的網(wǎng)絡(luò)(IBSS 或者AP 模式操作)可能會被啟動(如果配置)(默認)
  • 1:設(shè)備驅(qū)動兼顧掃描、接入點選擇和IEEE 802.11 連接參數(shù)(eg:WPA IE 一代);這個模式也可以被用于使用IEEE 802.1X 模式的 non-WPA 設(shè)備驅(qū)動;不要試圖和接入點取得聯(lián)系(i.e.,外部程序需要控制連接)。這種模式同樣必須在使用有限以太網(wǎng)時使用。
  • 注意:macsec_qca 設(shè)備驅(qū)動是一個執(zhí)行macsec 特征的以太網(wǎng)設(shè)備類型
  • 2:和參數(shù)0類似,但是通過使用安全的規(guī)則和SSID(不能為BSSID)和接入點取得聯(lián)系;這個參數(shù)可以用于,例如,使用增強型和NDIS(network driver interface standard)的設(shè)備驅(qū)動來操作隱藏了的SSID和優(yōu)化漫游;在這種模式下,在配置文件中的網(wǎng)絡(luò)語句塊將會一個個嘗試連接直到設(shè)備驅(qū)動報告取得聯(lián)系成功;每一個網(wǎng)絡(luò)語句塊應(yīng)該有相對于密碼管理(key_mgmt)、配對法(pairwide)、用戶組(group)、協(xié)議變量(proto variables) 明確的安全規(guī)則(在列表中只能有一個安全規(guī)則選項)
  • 注意:當(dāng)ap_scan=2 不應(yīng)該被用于使用nl80211 設(shè)備驅(qū)動接口中(當(dāng)前l(fā)inux的接口)。ap_scan=1 是工作在nl80211的優(yōu)化工作。為了尋找隱藏了的網(wǎng)絡(luò),scan_ssid=1可以用于nl80211 的網(wǎng)絡(luò)語句塊中。
  • 當(dāng)使用IBSS 或者 AP 模式時,ap_scan=2模式可以在忽略掃描結(jié)果的情況下立刻建立一個新的網(wǎng)絡(luò)。ap_scan=1 模式第一步將會試圖掃描周圍存在的網(wǎng)絡(luò)。只有在無可匹配的網(wǎng)絡(luò)情況下才會創(chuàng)建一個新的IBSS或者AP模式的網(wǎng)絡(luò)。
ap_scan=1
  • 對等網(wǎng)絡(luò)管理器的位置
  • 默認情況下,wpa_supplicant為開放式的網(wǎng)絡(luò)運行對等網(wǎng)絡(luò)管理器(MPM)。然而,如此設(shè)備驅(qū)動可以執(zhí)行MPM,為了使用設(shè)備驅(qū)動版本號,你可能需要將它設(shè)置為0。當(dāng)AMPE( automated message processing exchange 自動信息交換程序)使能時,wpa_supplicant的MPM將會總是有用的。
  • 0:MPM在設(shè)備驅(qū)動中被執(zhí)行
  • 1:wpa_supplicant 提供一個處理對等(默認)的MPM
user_mpm=1
  • 最大的匹配鏈路數(shù)量(0-255;默認為99)
  • 當(dāng)前網(wǎng)絡(luò)維持的最大網(wǎng)絡(luò)匹配數(shù)量
max_peer_link=99
  • 檢測STA靜止的超時時間(秒)(默認為300秒)
  • 這個超時時間是用于STA網(wǎng)絡(luò)清理不活動的站點。
mesh_max_inactivity=300
  • cert_in_cb –時候在事件跳轉(zhuǎn)過程中包含匹配證書。
  • 這個選項控制是否在EAP匹配認證事件中包含服務(wù)器認證和認證鏈節(jié)的匹配認證。在默認情況下該選項是激活的。
cert_in_cb=1
  • EAP(extensible Authentication protocol)快速重認證
  • 默認情況下,快速重認證對于支持所有EAP模式的情況下是激活的。這個參數(shù)可以被用于取消快速重認證。一般情況下,沒有必要取消它。
fast_reauth=1
  • OpenSSL(安全套接字庫)工具支持
  • 這些選項可以被用于加載OpenSSL工具
  • 目前支持的兩個工具如下所示:
  • 它們都是來自opensc 工程(http://www.opensc.org/
  • 默認情況下沒有工具被加載.
//激活opensc工具
opensc_engine_path=/usr/lib/opensc/engine_opensc.so
//激活pkcs11工具
pkcs11_engine_path=/usr/lib/opensc/engine_pkcs11.so
//通過 pkcs11工具配置pkcs11模塊請求路徑
pkcs11_module_path=/usr/lib/pkcs11/opensc-pkcs11.so
  • OpenSSL 密碼字符串
  • 這是配置OpenSSL默認密碼的特定配置選項。如果沒有設(shè)置,將會使用默認的“DEFAULT:!EXP:!LOW”。查看https://www.openssl.org/docs/apps/ciphers.html OPenSSL關(guān)于密碼配置套件的文檔。只有在wpa_supplicant在建立是使用OpenSSL時才有效。
openssl_chipers=DEFAULT:!EXP:!LOW
  • 動態(tài)EAP方式
  • 如果EAP建立動態(tài)共享對象文件,它們需要在使用網(wǎng)絡(luò)語句塊之前 在這里被加載。默認情況下,EAP方式在建立時是靜態(tài)包含的,所以,這些選項是不必要的。
load_dynamic_eap=/usr/lib/wpa_supplicant/eap_tls.so
load_dynamic_eap=/usr/lib/wpa_supplicant/eap_md5.so
  • 設(shè)備驅(qū)動程序的接口參數(shù)
  • 這個區(qū)域可以被用于配置隨意的設(shè)備驅(qū)動接口參數(shù)。選擇設(shè)備驅(qū)動接口的格式是指定的。在很多案例中這個區(qū)域是不起作用的。
driver_param="field=value"
  • 國家語言代碼
  • 當(dāng)前設(shè)備驅(qū)動操作的國家語言代碼
country=US
//PMKSA最大的存活時間(秒);默認為43200
dot11RSNAConfigPMKLifetime=43200
//重認證的閾值(PMK存活時間的百分比);默認為70
dot11RSNAConfigPMKReauthThreshold=70
//安全關(guān)聯(lián)協(xié)議的超時時間(秒);默認為60
dot11RSNAConfigSATimeout=60
  • 建立Wi-Fi保護參數(shù)
  • 設(shè)備通用唯一的標(biāo)識符(UUID;參照RFC 4122)
  • 如果沒有配置,UUID將會被設(shè)置為本地MAC地址
uuid=12345678-91bc-def0-1234-56789abcdef0
//設(shè)備名稱
//對設(shè)備使用友好的描述;UTF-8編碼的32個字節(jié)
device_name=Wireless Client
//制造商
//設(shè)備的制造商(64個ASCII特征碼)
manufacturer=Company
//型號
//設(shè)備型號(32個ASCII特征碼)
model_name=cmodel
//型號編號
//額外的設(shè)備描述(32個ASCII特征碼)
model_number=123
//序列號
//設(shè)備的序列號(32個ASCII特征碼)
serial_number=12345
  • 設(shè)備的主要類型
  • 使用:--的格式
  • categ:整型類型的數(shù)值
  • OUI =組織唯一標(biāo)識符;四個八位字節(jié)的16進制編碼數(shù)值;WPS OUT默認為0050F204
  • subcateg =OUI-特定的整型類型數(shù)值子類
  • 例如:
  • 1-0050F204-1 (Computer / PC)

  • 1-0050F204-2 (Computer / Server)

  • 5-0050F204-1 (Storage / NAS)

  • 6-0050F204-1 (Network Infrastructure / AP)

device_type=1-0050F204-1
  • 操作系統(tǒng)版本
  • 操作系統(tǒng)版本數(shù)字的四個八位字節(jié)(16進制字符串)
os_version=01020300
  • 配置方法
  • 列表為所支持的配置方法
  • 可行的方法:usba 以太網(wǎng)顯示 ext_nfc_token int_nfc_token nfc_interface push_button keypad virtual_display physical_display virtual_push_button physical_push_button 標(biāo)簽
//對于 WSC 1.0
//配置方法=標(biāo)簽、顯示、按鈕、鍵盤
config_methods=label display push_button keypad
//對于 WSC 2.0
//配置方法=標(biāo)簽、虛擬顯示、虛擬按鈕、鍵盤
config_methods=label virtual_display virtual_push_button keypad
  • 認證進程
  • 0=進程內(nèi)部接受憑證(默認)
  • 1=進程不接受憑證;只是通過在ctrl_iface上到外部程序
  • 2=進程在內(nèi)部接受憑證;只是通過在ctrl_iface上到外部程序
wps_cred_processing=0
  • WPS M1 的屬性,比如window7垂直兼容
  • 屬性內(nèi)容被添加到M1中(16位進制字符串)
wps_vendor_ext_m1=000137100100020001
  • WPS的令牌-NFC密碼
  • 這些參數(shù)可以被用于配置一個固定的站點NFC密碼。這個可以通過某種方式產(chǎn)生,例如使用nfc_pw_token 。當(dāng)這些參數(shù)被使用時,該站點假設(shè)已經(jīng)包含匹配NFC密碼部署。(例如:編寫記錄在nfc_pw_token中的NDEF)
wps_nfc_dev_pw_id: Device Password ID (16..65535)
wps_nfc_dh_pubkey: Hexdump of DH Public Key
wps_nfc_dh_privkey: Hexdump of DH Private Key
wps_nfc_dev_pw: Hexdump of Device Password
  • 通過添加WPS優(yōu)先使用網(wǎng)絡(luò)
  • 這個優(yōu)先值將會將會被設(shè)置到每個網(wǎng)絡(luò)配置文件(執(zhí)行WPS 協(xié)議時添加的)
wps_priority=0
  • 保存在記憶體中最大的BSS 實體數(shù)量
  • 默認值為:200
  • 這個選項可以被設(shè)置限制BSS 實體(掃描結(jié)果緩存)的內(nèi)存使用。在使用ap_scan=1模式時在環(huán)境中可能需要一個比較大的值存儲大量的接入點
bss_max_count=200
  • 自動掃描

  • 這是一個設(shè)置自動掃描以下格式的接口的配置參數(shù)

  • autoscan=<自動掃描模塊名稱>:<模塊參數(shù)>

  • 自動掃描就像沒有連接或者不活動的bgscan

  • 例如指數(shù)模型上的參數(shù)將會為:

  • autoscan=exponential:3:300

  • 以上選項表示每次掃描的延時是基于3的指數(shù)的延時時間

  • 最大為300s(3,9,27,…..300).

  • 對于周期性的模型,參數(shù)將會是<固定的整數(shù)>

  • autoscan=periodic:30

  • 以上參數(shù)表示30S一個周期自動掃描一次

  • SSID過濾-基于SSID掃描結(jié)果過濾

  • 0 表示對掃描結(jié)果不過濾(默認)

  • 1 表示從掃描結(jié)果中或者掃描結(jié)果緩存表中過濾出配置文件中的SSID

filter_ssids=0
  • 外部存儲后端的密碼(密碼口令,等等)
  • 格式:<后端名稱>[:<后端參數(shù)選項>]
ext_password_backend=test:pw1=password|pw2=testing
  • 取消P2P功能
p2p_disabled=1
  • 移除不活動的STA的超時時間(默認為300S)
  • 該超時時間值用于在P2P GO 模式下清除不活動的站點
p2p_go_max_inactivity=300
  • P2P GO 密碼長度(8-63)
  • 這個參數(shù)控制在GO 生成的隨機密碼的長度。(默認為8)
p2p_passphrase_len=8
  • 并行進行P2P迭代搜索的額外延時時間
  • 這個值增加額外的延時(ms)讓p2p_find友好地并行操作,從而避免無線點占用100%的資源。該值默認為500ms
p2p_search_delay=500
  • 機會性密匙緩存(已稱為主動型密匙緩存)(默認設(shè)置)
  • 這個參數(shù)可以用于設(shè)置默認的proactive_key_caching參數(shù)行為。默認情況下,OKC是無效的除非使能全局變量okc=1 或者每個網(wǎng)絡(luò)中proactive_key_cachng=1。如若okc=1,OKC默認是有效的,不允許每個網(wǎng)絡(luò)中的proactive_key_caching=0
okc=0
  • 默認的保護管理架構(gòu)
  • 這個參數(shù)可以用于設(shè)置ieee80211w 參數(shù)的默認行為。默認情況下,PMF無效除非全局變量pmf=1/2,或者每個網(wǎng)絡(luò)中都配置ieee80211w=1/2 這個參數(shù)。當(dāng)pmf=1/2 時PMF 默認是有效的和可被請求的。在每個網(wǎng)絡(luò)中也可以使用ieee80211w 參數(shù)設(shè)置為失效。
pmf=0
  • 啟用SAE有限循環(huán)群優(yōu)先順序
  • 默認情況下(該參數(shù)沒有設(shè)置)組19(組 ECC定義在超過256位的基本指令領(lǐng)域)是首選的選項,其他組也是激活的。如果該參數(shù)被設(shè)置,改組將會嘗試控制命令。改組的值在IANA注冊表中列出
sae_groups=21 20 19 26 25
//DTIM周期的默認值(如果沒有在網(wǎng)絡(luò)語句塊中被重寫)
dtim_period=2
//信標(biāo)間隔的默認值(如果沒有在網(wǎng)絡(luò)語句塊中被重寫)
beacon_int=100
  • 信標(biāo)和探測響應(yīng)幀的基本屬性
  • 該參數(shù)可以被用于增加另外的基本屬性到信標(biāo)和探測響應(yīng)幀的末尾。這些屬性的格式是一個十六位進制轉(zhuǎn)儲的原始信息元素(一個或多個元素的 id+len+payload),這用于AP 和 P2P GO 模式下。
ap_vendor_elements=dd0411223301
  • 忽略請求掃描結(jié)果命令
  • 當(dāng)我們觸發(fā)掃描命令時,設(shè)備驅(qū)動可能有掃描結(jié)果的返回信息,這個參數(shù)可以用于配置類似于被忽略舊的信息而不是更新內(nèi)部BSS 表格。
ignore_old_scan_res=0
  • scan_cur_freq :是否只在當(dāng)前頻率下掃描

  • 0:在所有可用的頻率下掃描(默認)

  • 1:如果另一個同一個無線 VIF已經(jīng)取得關(guān)聯(lián)下,在當(dāng)前操作頻率下掃描

  • 默認的MAC 地址規(guī)則

  • 0:使用永久的MAC地址

  • 1:給每個連接的ESS使用隨機的MAC地址

  • 2:類似于1,但是保持 OUI(本地管理位集)

  • 默認情況下,使用永久的MAC地址除非通過每一個網(wǎng)絡(luò)mac_addr參數(shù)改變規(guī)則。全局設(shè)置mac_addr=1 可以用于改變這個默認的配置行為。

mac_addr=0
  • 隨機MAC地址的存活時間(秒)(默認為60s)
rand_addr_lifetime=60
  • 每個關(guān)聯(lián)操作的MAC地址規(guī)則(scanning(掃描)、ANQP(接入網(wǎng)絡(luò)查詢協(xié)議))
  • 0=使用永久MAC地址
  • 1=使用隨機的MAC地址
  • 2=類似于1,但是使用保持的MAC 地址(當(dāng)?shù)毓芾砦患?/li>
preassoc_mac_addr=0
  • Interworking (IEEE 802.11u)
  • 激活I(lǐng)nterworking
interworking=1
  • 純質(zhì)的ESS標(biāo)志符
  • 如果這個被設(shè)置,掃描將會用于回應(yīng)只屬于特定的Homogeneous ESS的請求,這個只用于interworking激活的情形。
hessid=00:11:22:33:44:55
  • 自動選擇網(wǎng)絡(luò)的行為
  • 0=不自動通過互聯(lián)網(wǎng)選擇
  • 1=執(zhí)行互聯(lián)網(wǎng)網(wǎng)絡(luò)選擇當(dāng)一個或者多個認證已經(jīng)配置和沒有掃描到匹配的網(wǎng)絡(luò)語句塊
auto_interworking=0
  • 認證塊
  • 用于自動網(wǎng)絡(luò)選擇的每個認證將會構(gòu)造為一組參數(shù),當(dāng)使用interworking_select and interworking_connect命令時,將會和APs發(fā)布的信息比較
  • 憑證字段:
  • 暫時的(temporary):認證是否是暫時的并且不被保存
  • 優(yōu)先級(priority):優(yōu)先級組
  • 默認情況下,所有的網(wǎng)絡(luò)和認證都將獲取同等的優(yōu)先級組(0)這個字段可以被用于認證的更高優(yōu)先級(和網(wǎng)絡(luò)語句塊中的結(jié)構(gòu)體wpa_ssid很類似),這樣可以改變自動選擇網(wǎng)絡(luò)的行為。擁有更高優(yōu)先級的匹配的網(wǎng)絡(luò)(要么基于激活的網(wǎng)絡(luò)語句塊要么是認證憑證)將會被選擇。
  • pcsc:使用PC / SC和SIM/ USIM卡
  • realm(領(lǐng)域):家庭領(lǐng)域的互聯(lián)網(wǎng)
  • username(用戶名):互聯(lián)網(wǎng)網(wǎng)絡(luò)選擇的用戶名
  • password(密碼):互聯(lián)網(wǎng)網(wǎng)絡(luò)選擇的密碼
  • ca_cert:互聯(lián)網(wǎng)選擇的CA認證
  • client_cert:客戶端認證文件的路徑(PEM/DER)
  • 以上字段適用于在客戶端用認證/密匙來認證(EAP-TLS)的網(wǎng)絡(luò)自動選擇。文件的路徑應(yīng)該為絕對路徑(wpa_supplicant運行于后臺時可能會改變工作路徑)。另外一個blob的配置可以將此設(shè)置為blob://blob_name
  • 私人密匙:私人密匙(PEM/DER/PFX)的文件路徑
    當(dāng)使用PKCS#12/PFX文件時(.p12/.pfx),client_cert 應(yīng)該被注釋掉。這種情況下私人密匙和認證憑證將會從PKCS#12文件中讀出。完整的路徑需要為絕對工作路徑(wpa_supplicant運行于后臺時可能會改變工作路徑)

通過從客戶端認證中退出,windows下的認證儲存可以被使用,并且私人密匙可以通過以下格式配置:
cert://substring_to_match
hash://certificate_thumbprint_in_hex

舉個例子:private_key=”hash://63093aa9c47f56ae88334c7b65a4
注意當(dāng)將wpa_supplicant作為應(yīng)用運行時,用戶認證儲存區(qū)(自己的用戶賬戶)將被使用。而當(dāng)運行wpasvc作為服務(wù)端時計算機儲存區(qū)(計算機賬戶)將被使用。
另外,一個blob的配置可以將此設(shè)置為blob://blob_name

  • private_key_passwd: 私人密匙的密碼文件

  • imsi: IMSI in | | ‘-’ | format

  • milenage: Milenage parameters for SIM/USIM simulator in :: format

  • domain: Home service provider國內(nèi)服務(wù)提供商 FQDN(s)
    以上選項將被用于比較域服務(wù)商名稱列表從而計算出是否該AP是在家用SP下操作。多域接入點可以被用于配置被認為家庭網(wǎng)絡(luò)的非傳統(tǒng)FQDNS

  • roaming_consortium:(漫游聯(lián)合體)Roaming Consortium OI
    如果roaming_consortium_len非空,這個字段包含可以決定哪個接入點支持憑證認證的漫游聯(lián)合體。這是非傳統(tǒng)的領(lǐng)域參數(shù)的用法。當(dāng)使用漫游聯(lián)合體匹配網(wǎng)絡(luò)時,因為NAI域的信息可能不可用或者牽強,EAP參數(shù)需要使用憑證預(yù)配置。

  • eap:EAP預(yù)編譯的方法
    這個字段可以用來指定哪個EAP方法使用這個憑證。如若沒有設(shè)置,EAP方法設(shè)置為自動基于ANQP信息(eg:NAI Realm).

  • phase1:預(yù)編譯階段1(外部認證)參數(shù),這個字段設(shè)置和‘eap’參數(shù)類似

  • phase2:預(yù)編譯階段2(內(nèi)部認證)參數(shù),這個字段設(shè)置和‘eap’參數(shù)類似

  • excluded_ssid: 過濾SSID
    這個選線字段可以用于從配置網(wǎng)絡(luò)中過濾指定的SSID(S),多選項可以增加更多SSID

  • roaming_partner:漫游合作伙伴的信息
    這個字段選項可以用于配置和漫游伙伴的首選項。該配置字段使用以下格式:
    ,<0/1 exact match>,,<* or country code>
    non-exact 表示任何子域都可以匹配該接入口;priority是設(shè)置更高優(yōu)先級,范圍在0-255

  • update_identifier:更新標(biāo)識符(PPS MO ID)(Hotspot 2.0 PerProviderSubscription/UpdateIdentifier)

  • provisioning_sp:服務(wù)提供商FQDN提供的憑證
    這個字段選項可以用于跟蹤服務(wù)提供商SP提供的憑證并且尋找PPS MO(./Wi-Fi/).

  • 最大的回程鏈路的閾值(PPS/

min_dl_bandwidth_home
min_ul_bandwidth_home
min_dl_bandwidth_roaming
min_ul_bandwidth_roaming
  • max_bss_load:BBS(掃描結(jié)果緩存表)的最大通道負荷(1-255)
    (PPS/
req_conn_capab=6,22,80,443
For example, IPSec/IKE:
req_conn_capab=17:500
req_conn_capab=50
  • oscp:是否使用/請求OSCP檢查服務(wù)憑證
    0=沒有使用OCSP(擴展的認證狀態(tài) TLS)
    1=試圖使用OCSP,但不請求應(yīng)答
    2=請求接受有效的OCSP應(yīng)答

  • sim_num:使用多SIM 卡設(shè)備時SIM卡的標(biāo)識符

下面對語句塊舉例子:

cred={
    realm="example.com"
    username="user@example.com"
    password="password"
    ca_cert="/etc/wpa_supplicant/ca.pem"
    domain="example.com"
}
cred={
    imsi="310026-000000000"
    milenage="90dca4eda45b53cf0f12d7c9c3bc6a89:cb9cccc4b9258e6dca4760379fb82"
}
cred={
    realm="example.com"
    username="user"
    password="password"
    ca_cert="/etc/wpa_supplicant/ca.pem"
    domain="example.com"
    roaming_consortium=223344
    eap=TTLS
    phase2="auth=MSCHAPV2"
}
  • Hotspot 2.0(熱點2.0)
    hs20=1

網(wǎng)絡(luò)語句塊

  • 在配置文件中,每個網(wǎng)絡(luò)(通常是AP 的共享SSID)被視為獨立的模塊來配置
  • 該網(wǎng)絡(luò)語句塊是有優(yōu)先配置順序的(第一次匹配)。

-網(wǎng)絡(luò)語句塊字段:

  • disabled:
    0=該網(wǎng)絡(luò)可以被使用(默認)
    1=該網(wǎng)絡(luò)語句塊是失效的(可以通過ctrl_iface激活 eg:使用wpa_cli或者wpa_gui)

  • id_str:外部腳本的網(wǎng)絡(luò)標(biāo)識字符。通過wpa_cli外部執(zhí)行腳本將WPA_ID_STR作為環(huán)境變量,使得配置特定網(wǎng)絡(luò)變得更加容易。

  • ssid:SSID(必須的);一種如下格式的網(wǎng)絡(luò)名稱:
    引用雙精度的ASCII字符
    一個十六進制的字符串(SSID每個字節(jié)的兩個字符)
    打印的字符:字符串

  • scan_ssid:
    0=不掃描這個通過特定的探測請求幀得到的SSID(默認)
    1=掃描通過特定探測請求幀得到的SSID(這個可以用于尋找不接受廣播的APs或者使用多SSIDs ;這個將會增加掃描延時時間,所以在有必要時才激活此選項)

  • bssid:BSSID(不必要的、可選擇的);如果設(shè)置了的話,這個網(wǎng)絡(luò)語句塊將被用于使用BSSID配置文件和APs取得關(guān)聯(lián)。

  • priority: 優(yōu)先級組 (整數(shù))

  • 默認情況下,所有網(wǎng)絡(luò)將會獲得相同的優(yōu)先級組(0),如果有一些更加可取的網(wǎng)絡(luò),這個字段可以被用于改變wpa_supplicant在BSS中選擇網(wǎng)絡(luò)時的順序。這個優(yōu)先級組將會迭代減少優(yōu)先級(i.e,優(yōu)先級數(shù)值越大,就越早在掃描結(jié)果中得到匹配),對于相同的優(yōu)先級組,將會根據(jù)安全規(guī)則、信號強度等來作為選擇的依據(jù)。

  • 請注意在scan_ssid=1 和 ap_scan=2 模式下AP的掃描不能夠使用這個優(yōu)先級組去選擇掃描順序。相反的他們嘗試使用配置文件中的網(wǎng)絡(luò)順序。

  • mode: IEEE 802.11操作模式

  • 0 = 基礎(chǔ)架構(gòu)模式(管理模式),i.e,和AP取得關(guān)聯(lián)(默認)

  • 1 = IBSS(自組網(wǎng)、點對點)

  • 2 = AP (接入點)

  • 注意:IBSS只能在key_mgmt NONE(明碼文本和靜態(tài)WEP)和WPA-PSK(proto = RSN)下使用。另外,key_mgmt=WPA-NONE(固定的TKIP/CCMP密碼組)也是向后兼容的,但是這種用法是過時的。WPA-None 需要以下的網(wǎng)絡(luò)語句塊選項:

  • proto=WPA, key_mgmt=WPA-NONE, pairwise=NONE, group=TKIP(or CCMP,兩個不能同時存在),并且密碼必須也得到設(shè)置。

  • frequency:IBSS的通道頻率(MHZ),例如:2412=IEEE 802.11b/g 是通道一的頻率。這個值被用于配置IBSS(adhoc自組網(wǎng))的初始化通道。在基礎(chǔ)架構(gòu)模式下它將會被忽略。另外,這個值只用于創(chuàng)建IBSS站點。如果一個配置了SSID的IBSS網(wǎng)絡(luò)已經(jīng)存在,其網(wǎng)絡(luò)的頻率值將會被用于替代這里的配置數(shù)值。

  • scan_freq:掃描頻率的列表

  • 當(dāng)掃描BSS時使用空間分離的頻率表(MHZ)掃描。如果該網(wǎng)絡(luò)的通道設(shè)置是已知的,該選項可以被用于優(yōu)化掃描行為,避免掃描網(wǎng)絡(luò)沒有用到的通道

  • Example: scan_freq=2412 2437 2462

  • freq_list:獲得許可頻率的數(shù)組

  • 允許選擇BBS的空間分離的頻率表。如果設(shè)置了的話,當(dāng)選擇一個BSS時,掃描結(jié)果將考慮匹配任何特定的頻率的網(wǎng)絡(luò)。

  • 這個選項也可以被設(shè)置到網(wǎng)絡(luò)語句塊外面。在這種情形下,它將限制特定的頻率被掃描。

  • bgscan:后臺掃描

  • 通過設(shè)置為bgscan模塊,wpa_supplicant可以被配置后臺掃描行為。為了漫游在ESS下,這些模塊要求在后臺運行掃描(i.e,即在所有AP的單一個網(wǎng)絡(luò)語句塊中使用相同的SSID)。這個bgscan參數(shù)可以使用以下格式:”:”

  • 以下bgscan模塊是可用的:

  • 簡單型:根據(jù)信號強度周期性地進行后臺掃描

  • bgscan=”simple:::”

  • bgscan=”simple:30:-45:300”

  • 學(xué)習(xí)型:通過網(wǎng)絡(luò)學(xué)習(xí)使用的通道,避免bgscan掃描其他通道(實驗型)。

  • bgscan=”learn:::[:]”

  • bgscan=”learn:30:-45:300:/etc/wpa_supplicant/network1.bgscan”

  • 另外可通過以下命令取消bgscan:

  • bgscan=”“

  • 這個選項也可以全局設(shè)置,應(yīng)用于沒有指定特定的bgscan參數(shù)。

    proto:公認的協(xié)議列表

  • WPA=WPA/IEEE 802.11i/D3.0

  • RSN = WPA2/IEEE 802.11i (可以使用WPA2作為RSN的別名)

  • 如果沒有設(shè)置將會默認使用WPA RSN

    key_mgmt:公認的認證密鑰管理協(xié)議列表

  • WPA-PSK = WPA 預(yù)共享密匙 (這需要‘psk’字段)

  • WPA-EAP = WPA 使用 EAP 認證

  • EEE8021X =IEEE 802.1X 使用EAP 認證并動態(tài)生成密匙

  • NONE = 沒有使用 WPA ;可以使用明碼密匙或者靜態(tài)WEP

  • WPA-PSK-SHA256 = 類似 WPA-PSK 但是使用增強型的SHA256-based加密算法

  • WPA-EAP-SHA256 = 類似 WPA-EAP 但是使用增強型的SHA256-based加密算法

  • 如果沒有設(shè)置,將會模式設(shè)置為 WPA-PSK WPA-EAP

ieee80211w:是否激活包含管理機制

  • 0 = 取消(默認設(shè)置,除非通過和全局pmf參數(shù)改變)
  • 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
  • (當(dāng)使用WPA2-Personal時WPA-PSK and WPA-WPSK-SHA256也是類似配置)

auth_alg:允許的IEEE 802.11 認證算法列表

  • OPEN = 開放性系統(tǒng)認證(WPA/WPA2的必要選項)
  • SHARED = 共享密匙認證(靜態(tài)WEP密碼的必要選項)
  • LEAP = LEAP/Network EAP(只在LEAP中使用)
  • 如果沒有設(shè)置,將使用自動選擇(如果LEAP允許作為一種EAP方法,LEAP開放系統(tǒng)將會被激活)

pairwise : WPA點對點(單播)支持的密碼表格

  • CCMP = AES 的CBC-MAC計數(shù)模式 [RFC 3610, IEEE 802.11i/D7.0]
  • TKIP = 臨時密鑰完整性協(xié)議 [IEEE 802.11i/D7.0]
  • NONE = 只使用組密碼 (不贊成使用,當(dāng)APs 支持成對密匙是將不被包含)
  • 如果沒有設(shè)置,將默認設(shè)置為: CCMP TKIP

group:組(廣播/組播)支持的密碼列表

  • CCMP = AES 的CBC-MAC計數(shù)模式 [RFC 3610, IEEE 802.11i/D7.0]
  • TKIP = 臨時密鑰完整性協(xié)議 [IEEE 802.11i/D7.0]
  • WEP104 =104位 WEP(Wired Equivalent Privacy有效對等密匙)
  • WEP40 = 40位 WEP(Wired Equivalent Privacy有效對等密匙)[IEEE 802.11]
  • 如果沒有設(shè)置,將會默認設(shè)置為: CCMP TKIP WEP104 WEP40

psk: WPA預(yù)共享密碼;256位預(yù)共享密碼

  • 在WPA-PSK模式下的密碼可以使用64進制數(shù)字輸入,即,32字節(jié)或者一個ASCII密碼(在這種情況下,真正的PSK將會使用密碼和SSID生成)。ASCII密碼必須在8到63個字節(jié)之間(包含8字節(jié)和63字節(jié))。拓展:拓展字段格式可以被用于表示PSK/passphrase儲存在外部存儲器中。

  • 如果使用WPA-EAP這個字段不是必須的。

  • 注意:其他一些工具,wpa_supplicant可以被用于從ASCII 密碼中生成256位密匙。這些進程將會占用很多CPU資源,并且在密碼和SSID確實被改變的情況下再生成密匙可以優(yōu)化wpa_supplicant的啟動和重構(gòu)時間。
    mem_only_psk:是否只在內(nèi)存中保持PSK/passphrase

  • 0 = 允許psk/passphrase儲存在配置文件中

  • 1 = psk/passphrase不儲存到配置文件中

  • mem_only_psk=0

** eapol_flags: IEEE 802.1X/EAPOL 選項(bit field位字段)**

  • 在non-WPA模式下的動態(tài)WEP 密碼
  • bit0 (1):要求動態(tài)生成單播的WEP密鑰
  • bit1 (2):要求動態(tài)生成廣播WEP密鑰
  • (3=要求兩種類型的WEP密鑰;默認設(shè)置)
  • 注意:當(dāng)使用無線認證時(包括macsec_qca設(shè)備驅(qū)動),為了能夠完整地認證,需要將eapol_flags設(shè)置為0

macsec_policy:EEE 802.1X/MACsec options選項

  • 這決定了MACsec使用何種回話擔(dān)保。這個目前只用于使用macsec_qca 設(shè)備驅(qū)動接口時。
  • 0 = 不使用MACsec(默認)
  • 1 = 激活MACsec-必須是安全的,接受密碼服務(wù)器的通知來決定是否使用一個安全會話與否

mixed_cell : 這個選項可以被用于配置是否為所謂的混雜單元,即一個同樣的SSID 網(wǎng)絡(luò)使用明碼和加密密匙

  • 0 = 取消(默認)
  • 1 = 激活

proactive_key_caching:

  • 激活/取消WPA2的PMKSA隨機緩存
  • 0 = 取消(默認設(shè)置,除非使用全局參數(shù)okc來改變)
  • 1 = 激活

wep_key0..3:靜態(tài)WEP密碼(雙精度ASCII引用,比如“abcd”;或者沒有引用的十六進制數(shù),比如“012345678”)

  • wep_tx_keyidx: Default WEP key index (TX) (0..3)

peerkey:是否允許直接連接的peerkey協(xié)議(IEEE 802.11e DLS),這個只用于 RSN/WPA2

  • 0 = 取消(默認)
  • 1 = 激活
  • peerkey=1

wpa_ptk_rekey:PTK最大的存活時間(秒),這個選項可以被用于配置執(zhí)行PTK密匙更新來緩解因為TKIP缺陷而受到的攻擊

以下字段值用于內(nèi)部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(客戶端和服務(wù)端的認證)
  • PEAP = EAP-PEAP(EAP認證隧道)
  • TTLS = EAP-TTLS (EAP認證隧道或者PAP/CHAP/MSCHAP/MSCHAPV2認證)
  • 如果沒有設(shè)置,所有編譯的方法都被允許

identity:EAP的字符標(biāo)識符

  • 這個字段同樣被用于配置使用EAP-PSK/PAX/SAKE/GPSK的NAI

anonymous_identity : EAP的匿名標(biāo)識符字符串(被用于支持不同的標(biāo)識符隧道的非加密EAP類型的標(biāo)識符,比如,EAP-TTLS)。這個字段也可以被用于EAP-SIM/AKA/AKA’保存匿名標(biāo)識符
password: EAP的密碼字符串。這個字段既可以包含純文本密碼字符串(使用ASCII或者十六進制字符串)也可以一個使用hash:<32 hex digits>格式的NtPasswordHash(16字節(jié)MD4 哈希密碼)

  • NtPasswordHash只能用于MSCHAPv2 或者 MSCHAP(EAP-MSCHAPv2, EAP-TTLS/MSCHAPv2, EAP-TTLS/MSCHAP, LEAP);EAP-PSK (128-bit PSK), EAP-PAX (128-bit PSK), 和EAP-SAKE (256-bit PSK) 也可以使用該字段得到配置。

  • 對于EAP-GPSK這是一個正確的psk長度。拓展:格式可以被用于表示密碼儲存在外部存儲器中。
    ca_cert:CA 的認證文件(PEM/DER)的路徑

  • 這個字段有一個或者多個的受信任的CA認證。 如果ca_cert 和 ca_path都沒有包含文件路徑,認證服務(wù)將不會驗證。這是不安全的,并且當(dāng)使用EAP-TLS/TTLS/PEAP時一個受信任的CA認證總是被配置。完整的路徑應(yīng)該為絕對路徑(wpa_supplicant可能在后天運行時改變工作路徑)。

  • 另外,這個字段可以被用于只執(zhí)行服務(wù)器認證的匹配任務(wù)(SHA-256 hash of the DER encoded X.509 certificate),在這種情況下,服務(wù)器認證中CA認證可能被忽略,并且只驗證服務(wù)器認證。這個可以通過以下格式來配置:hash:://server/sha256/cert_hash_in_hex

  • 例如:”hash://server/sha256/5a1bc1296205e6fdbe3979728efe3920798885c1c4590b5f90f43222d239ca6a

  • 在window操作系統(tǒng)下,受信任的CA認證可以通過設(shè)置cert_store://從系統(tǒng)認證儲存器中加載,例如:ca_cert=”cert_store://CA” or ca_cert=”cert_store://ROOT”. 注意當(dāng)將wpa_supplicant作為應(yīng)用程序運行時,用戶(當(dāng)前賬戶)認證儲存器將是可用的,當(dāng)運行wpasvc作為服務(wù)器時,計算器(計算機賬戶)儲存器將是可用的。
    ** ca_path : CA認證文件(PEM)的目錄路徑。**

  • 這個路徑可能包含OpenSSL格式的多CA認證。這種常見的使用方法是指系統(tǒng)那些安裝在/etc/ssl/certs路徑下的可信任的CA認證列表,如果配置了的話,這些認證將會被添加到可信任CAs列表中, ca_cert可能也包含在這種案例中,但它不是必須的。

client_cert : 客戶端認證文件的路徑(PEM/DER)

  • 完整的路徑應(yīng)該為文件的絕對路徑(因為wpa_supplicant運行在后臺時可能會改變工作路徑)

  • 另外,名為blob的配置也可以被用來設(shè)置blob://.
    private_key : 客戶端私人密匙文件路徑(PEM/DER/PFX)

  • 當(dāng)使用 PKCS#12/PFX 文件 (.p12/.pfx), client_cert應(yīng)該被注釋掉。這種情況下私人密匙和認證將會從PKCS#12文件中讀出。完整的路徑應(yīng)該為文件的絕對路徑(因為wpa_supplicant運行在后臺時可能會改變工作路徑)

  • 當(dāng)client_cert退出時并且配置私人密匙如以下格式時,windows 認證儲存器可以被使用

  • cert://substring_to_match

  • hash://certificate_thumbprint_in_hex

  • 例如 private_key=”hash://63093aa9c47f56ae88334c7b65a4

  • 注意:當(dāng)wpa_supplicant作為應(yīng)用程序運行時,用戶(當(dāng)前賬戶)認證儲存器將是可用的,當(dāng)運行wpasvc作為服務(wù)器時,計算器(計算機賬戶)儲存器將是可用的。

  • 另外,名為blob的配置也可以被用來設(shè)置blob://.
    ** private_key_passwd : 私人密匙文件的密碼(如果遺漏,將會在控制界面中詢問)**
    ** dh_file: DH/DSA參數(shù)文件的路徑(PEM 格式)**

  • 這個選項配置設(shè)置一個短暫的DH密碼交換參數(shù)的文件。在大多數(shù)情況下,默認的RSA認證將不會在這種情況下使用。然而,使用短暫的DH密碼交換可能會建立RSA認證。另外,DSA 密碼算法總是使用短暫性DH密匙,這個選線可以用于實現(xiàn)保密。如果這個文件使用了DAS參數(shù)格式,它將會自動轉(zhuǎn)化為DH參數(shù)
    subject_match: 子類字符串是針對認證服務(wù)器證書來匹配

  • 如果這個字符串設(shè)置了的話,服務(wù)器證書只有在這個實體上包含了這個字符串才的情況下才能被接受。

  • 該實體字符串使用以下格式配置:

  • /C=US/ST=CA/L=San Francisco/CN=Test AS/emailAddress=as@example.com

  • 注意:因為這是一個子類字符串匹配,對于可能的一種中文實體域名情況下將不能安全地進行后綴匹配。對于這種應(yīng)用案例,應(yīng)該使用domain_suffix_match 或者 domain_match來替代。
    altsubject_match : 分號分隔符將會和選擇服務(wù)器認證證書實體名稱相匹配

  • 如果該字符被設(shè)置了的話,如果服務(wù)器認證包含了一個擴展的選擇項目名稱實體,該認證才能被接受。

  • altSubjectName字符串的格式:TYPE:VALUE

  • Example: EMAIL:server@example.com

  • Example: DNS:server.example.com;DNS:server2.example.com

  • 支持的格式為:EMAIL, DNS, URI

domain_suffix_match:域名服務(wù)器名稱的規(guī)則

  • 如果設(shè)置了的話,在SubjectAltName dNSName的AAAserver認證請求FQDN后綴匹配。如果匹配了一個找到DNS名稱,約束條件將會被滿足。如果沒有DNS名稱的值存在,這個約束條件是使用相同的后綴匹配比較來匹配中文實體名。
  • 這里的后綴匹配表示逐一從頂級域名開始并且domain_suffix_match的所有標(biāo)簽應(yīng)該包含在認證證書中和一個標(biāo)簽比較主機/域名。除了必要的標(biāo)簽外,認證證書可能包含額外的字級標(biāo)簽。
  • 例如,domain_suffix_match=example.com 將會匹配test.example.com,但它將不會匹配test-example.com。
    domain_match:域名服務(wù)器的約束條件
  • 如果設(shè)置了的話,F(xiàn)QDN將會被用做一個要求完全匹配服務(wù)器認證證書中SubjectAltName 域名元素。如果一個匹配的域名被找到,這個約束條件將被滿足。如果不存在域名名稱值,這個約束就是在SubjectName CN中文 同樣的完全匹配來比較 得匹配。這種行為就和domain_suffix_match類似,但是有一個完全匹配是必須的,即不允許子域名和通配符匹配。使用不區(qū)分大小的比較,因此”Example.com” 可以匹配 “example.com”,但是將不會匹配 “test.Example.com”.

phase1 : 階段一(外部認證:即TLS隧道)參數(shù)(成對的字段字符,比如:”peapver=0” 或者”peapver=1 peaplabel=1”)

  • ‘peapver’可以被用于強制使用哪個版本的PEAP(0或者1)。
  • ‘peaplabel=1’可以被用于在使用PEAPv1或者更新版本時導(dǎo)出密碼的期間強制使用新的標(biāo)簽 “client PEAP encryption”,一些擴展的PEAPv1的實施還使用舊的標(biāo)簽”client EAP encryption”,現(xiàn)在wpa_supplicant已經(jīng)使用”client EAP encryption”作為默認的值。一些服務(wù)器,比如輻射器可能需要強制配置peaplabel=1 來和PEAPv1進行交互操作;查看文件eap_testing.txt 得到更多相關(guān)信息。
  • ‘peap_outer_success=0’ 可以被用于終止EAP-Success 隧道的PEAP認證。這在一些執(zhí)行 draft-josefsson-pppext-eap-tls-eap-05.txt(比如Lucent NavisRadius v4.4.0 with PEAP in “IETF Draft 5” mode模式)RADIUS服務(wù)器上。
  • include_tls_length=1可以被用于強制使wpa_supplicant 在所有沒有碎片化的TLS管理事件中包含TLS 管理長度字段。
  • sim_min_num_chal=3 可以被用于配置EAP-SIM請求三個口令(默認情況下,它只接受到2個或者3個)
  • result_ind=1可以被用于使能EAP-SIM和EAP-AKA來指示保護結(jié)果。
  • ‘crypto_binding’ 該選項可以被用于控制PEAPv0加密綁定行為:
    • 0 =不適用加密綁定(默認)
    • 1 =當(dāng)服務(wù)器支持時使用加密綁定
    • 2 = 請求加密綁定
  • EAP-WSC (WPS)使用以下選項的格式:pin= or pbc=1.
  • 對于無線IEEE 802.1X加密認證,”allow_canned_success=1”可以被用于配置允許EAP-Success (and EAP-Failure)不經(jīng)歷認證步驟的模式。一些交換機當(dāng)強制端口被授權(quán)/不被授權(quán)或者認證服務(wù)器遙不可及是的一種備用選項才使用這種配置序列。
  • 默認情況下,wap_supplicant丟棄這種免收流氓設(shè)備的潛在攻擊的保護機制,但這個選項可以被用于取消在服務(wù)器/認證器不需要被認證的保護案例。

phase2 : 階段二(TLS隧道的內(nèi)部認證)參數(shù)(string with field-value pairs, e.g., “auth=MSCHAPV2” for EAP-PEAP or”autheap=MSCHAPV2 autheap=MD5” for EAP-TTLS)

  • “mschapv2_retry=0” 可以被用于取消 MSCHAPv2 在認證失敗后重試密碼。

TLS-based 方法可以用以下參數(shù)來控制TLS行為(這個通常是下第一階段的參數(shù),但是也可以當(dāng)EAP-TLS在內(nèi)部隧道使用時 被用在第二階段)

  • tls_allow_md5=1 允許MD5-based 證書簽名(取決于TLS庫,為了足夠安全這個選項默認取消)
  • tls_disable_time_checks=1 忽略證書有效期(這個選項要求TLS庫接受認證,即使在當(dāng)前它們是不能用的,即已過期或尚未生效;這個應(yīng)該只作為測試目的使用)
  • tls_disable_session_ticket=1 取消TLS外部探測會話
  • tls_disable_session_ticket=0 允許使用TLS外部探測會話(注意:如果沒有設(shè)置,對于EAP-TLS/PEAP/TTLS將會自動設(shè)置為1,作為一個來破壞服務(wù)器執(zhí)行認證的工作區(qū),除非EAP工作區(qū)使用參數(shù)eap_workaround=0來取消。)。對于EAP-FAST,這個參數(shù)必須設(shè)置為0(或者不設(shè)置,使用自動配置默認值)
  • tls_disable_tlsv1_0=1 取消使用TLSv1.0
  • tls_disable_tlsv1_1=1 取消使用TLSv1.1(已經(jīng)發(fā)布更新的TLS版本的AAA服務(wù)器的工作區(qū))
  • tls_disable_tlsv1_2=1 取消使用TLSv1.2(已經(jīng)發(fā)布更新的TLS版本的AAA服務(wù)器的工作區(qū))

以下認證/私人密匙字段將在使用EAP-TTLS 或者 EAP-PEAP 時內(nèi)部第二階段認證使用

  • ca_cert2:CA認證證書的文件路徑。這個文件可以有一個或者多個受信任的CA認證證書。如果不包含ca_cert2 和 ca_path2 服務(wù)器認證將不會生效。這是不安全的,受信任的CA認證證書必須總是被配置。

  • ca_path2:CA認證證書的目錄路徑(PEM)

  • client_cert2: 客戶端認證證書的文件路徑

  • private_key2:客戶端私人密匙文件路徑

  • private_key2_passwd : 私人密碼文件

  • dh_file2: DH/DSA參數(shù)文件路徑(PEM格式)

  • subject_match2 : 通過子類字符串匹配認證服務(wù)器的憑證證書。查看subject_match獲取相關(guān)細節(jié)信息。

  • altsubject_match2 : 以分號分隔字符匹配認證服務(wù)器的備用實體名。查看altsubject_match獲取相關(guān)細節(jié)。

  • domain_suffix_match2 : 域名服務(wù)器的約束,查看domain_suffix_match獲取更多細節(jié)。

  • fragment_size : EAP片段最大的字節(jié)長度(默認為1398)。
    這個值限制使用支持片段的EAP方法的片段長度(例如:EAP-TLS and EAP-PEAP)。這個值應(yīng)該被設(shè)置為足夠小的值來使EAP消息能夠適用于使用EAPOL的MTU網(wǎng)絡(luò)接口。在大多數(shù)情況下默認是已經(jīng)是合適的值了。

  • ocsp : 是否使用/請求OCSP來檢測服務(wù)器認證證書

  • 0 = 不使用OCSP(外部TLS 認證狀態(tài))

  • 1 = 嘗試使用OCSP 但不是必要的請求

  • 2 = 請求可用的OCSP

  • openssl_ciphers:OpenSSL指定的密碼配置(這個選項可以被用于重寫全局參數(shù)openssl_ciphers 往回看)

EAP-FAST 變量

  • pac_file: PAC實體的文件路徑。wpa_supplicant將需要能夠在PAC被滿足或者拒絕時創(chuàng)建這個文件并且寫入更新到這個文件中。完整的文件路徑必須是絕對文件路徑(因為wpa_supplicant作為后臺運行程序時可能會改變工作路徑)。另外,blob名字配置可以被用于設(shè)置這個參數(shù)到blob:

  • phase1: fast_provisioning可以用來激活對EAP-FAST認證證書(PAC)的在線配置:

    • 0 = 取消
    • 1 = 允許未經(jīng)身份認證的配置
    • 2 = 允許經(jīng)身份認證的配置
    • 3 = 允許未經(jīng)身份認證和身份認證的配置
      fast_max_pac_list_len=選項可以被用于設(shè)置PAC實體儲存到PAC列表的最大數(shù)量(默認為10)
      fast_pac_format=binary 可以被用于選擇為了保存一些空間(默認使用約為2.5倍的最小的二進制長度的文本格式)而儲存PAC實體的二進制格式

wpa_supplicant允許的最大的一些圍繞解決認證服務(wù)器的錯誤交互操作的問題工作的“EAP workaround”數(shù)量,因為目前認證服務(wù)器存在大量的某些問題,所以這些選項默認激活的。嚴格的一致性EAP模式可以通過使用選項eap_workaround=0 取消工作區(qū)來配置

活動站點的限制

  • 如果一個 在ap_max_inactivity 時間內(nèi)(秒)沒有發(fā)送任何東西,一個空的數(shù)據(jù)幀將會發(fā)送給它來驗證它是夠還在搜索范圍內(nèi)。如果該數(shù)據(jù)幀沒有收到應(yīng)答ASK,這個站點將會被分離然后失去認證。這個特性當(dāng)STAs移動出某個范圍后,用于清理舊的實體。
  • 在AP仍然還在范圍內(nèi)的情況下可以與站點取得關(guān)聯(lián);調(diào)查活性是一種驗證是否存活的不錯的方法;即客戶端將不會在連接失敗時報告,因為失去連接的信息數(shù)據(jù)幀不會在STA發(fā)送第一次調(diào)查幀后馬上發(fā)送。
  • 默認數(shù)值為:300s(即5分鐘)
  • ap_max_inactivity=300
    AP模式下信標(biāo)間隔的DTIM周期
  • dtim_period=2
  • 信標(biāo)間隔(默認為100TU)
  • beacon_int=100
  • MAC地址規(guī)則
  • 0 = 使用永久MAC地址
  • 1 = 使用為每個ESS連接分配隨機的MAC地址
  • 2 = 類似于參數(shù)1 但是使用唯一的標(biāo)志序列OUI(有當(dāng)?shù)毓芾韱T設(shè)置)
  • mac_addr=0

disable_ht : 是否取消HT (802.11n)

  • 0 = 使能HT (802.11n)(如果AP支持的話)

  • 1 = 取消
    disable_ht40 : 是否取消HT-40 (802.11n)

  • 0 = 使能HT-40 (802.11n)(如果AP支持的話)

  • 1 = 取消HT-40 (802.11n)
    disable_sgi : 是否取消SGI (short guard interval短護欄間隔)

  • 0 = 激活SGI(如果AP支持的話)

  • 1 = 取消SGI
    disable_ldpc : 是否取消LDPC

  • 0 = 激活LDPC(如果AP支持的話)

  • 1 = 取消LDPC
    ht40_intolerant : 是否取消容忍40MHZ

  • 0 = 容忍40MHZ

  • 1 = 不容忍40MHZ
    ** ht_mcs : 配置為允許MCS率**

  • 解析為一個十六進制的字節(jié)數(shù)組

  • ht_mcs=”” // Use all available (default)默認使用所有可用的數(shù)值

  • 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
    disable_max_amsdu : 是否取消MAX_AMSDU

  • -1 = 不做任何改變

  • 0 = 如果硬件支持的話使能MAX_AMSDU

  • 1 = 取消 AMSDU
    ampdu_factor : 外部最大的A-MPDU長度

  • 數(shù)值范圍:0-3,see 7.3.2.56.3 in IEEE Std 802.11n-2009.
    ** ampdu_density : 允許重寫AMPDU的密度配置**

  • 作為提示被內(nèi)核處理

  • -1 = 不做任何改變。

  • 0-3 = 設(shè)置AMPDU的密度(及稱為因子)為指定的值
    disable_vht : 是否取消VHT

  • 0 = 激活VHT(如果AP支持的話)

  • 1 = 取消VHT
    vht_capa : 設(shè)置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設(shè)置為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設(shè)置為TX MSS 1-8

  • 0 = MCS 0-7

  • 1 = MCS 0-8

  • 2 = MCS 0-9

  • 3 = 不支持


支持快速會話轉(zhuǎn)移

  • 本節(jié)的選項只在當(dāng)編譯hostapd時設(shè)置建立配置選項CONFIG_FST。這些選項允許這個接口成為FST步驟的一部分。
  • FST是從相同的或者不同的一個通道到另外一個通道的會話轉(zhuǎn)移。
  • 更多細節(jié)可以查看 IEEE Std 802.11ad-2012.

接口所屬的FST標(biāo)志組

  • fst_group_id=bond0

FST組的接口優(yōu)先級

  • 定義一個接口的更高的優(yōu)先級意味著FST轉(zhuǎn)換器擁有更高的優(yōu)先級
  • fst_priority的取值范圍為:1-255,當(dāng)值為一時擁有最低優(yōu)先級
  • fst_priority=100
    這個接口的默認LLT值(ms)這個值被用于會話建立后沒有提供數(shù)值的情況,默認為50ms
  • fst_llt 值的范圍是1- 4294967(以為spec的限制,查看10.32.2.2 狀態(tài)之間的轉(zhuǎn)換)
  • fst_llt=100

以下為網(wǎng)絡(luò)語句塊的例程:

簡單的案例: WPA-PSK, PSK ASCII密文,允許所有有效密碼

network={
    ssid="simple"
    psk="very secret passphrase"
    priority=5
}

和以上類似,增加了請求SSID的特定掃描(用于拒絕廣播SSID 的APs)

network={
    ssid="second ssid"
    scan_ssid=1
    psk="very secret passphrase"
    priority=2
}

只在WPA-PSK時使用,接受任何可用的密碼組合

network={
    ssid="example"
    proto=WPA
    key_mgmt=WPA-PSK
    pairwise=CCMP TKIP
    group=CCMP TKIP WEP104 WEP40
    psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
    priority=2
}

使用TKIP加密算法的WPA-Personal(PSK),并且強制頻繁地重置PTK密碼

network={
    ssid="example"
    proto=WPA
    key_mgmt=WPA-PSK
    pairwise=TKIP
    group=TKIP
    psk="not so secure passphrase"
    wpa_ptk_rekey=600
}

當(dāng)使用WPA-EAP時。允許CCMP和TKIP加密算法。使用WEP104或者WEP40作為組密碼將不會被接受

network={
    ssid="example"
    proto=RSN
    key_mgmt=WPA-EAP
    pairwise=CCMP TKIP
    group=CCMP TKIP
    eap=TLS
    identity="user@example.com"
    ca_cert="/etc/cert/ca.pem"
    client_cert="/etc/cert/user.pem"
    private_key="/etc/cert/user.prv"
    private_key_passwd="password"
    priority=1
}

使用新的peaplabel標(biāo)簽來進行RADIUS 服務(wù)器的EAP-PEAP/MSCHAPv2 配置(例如,輻射器)

network={
    ssid="example"
    key_mgmt=WPA-EAP
    eap=PEAP
    identity="user@example.com"
    password="foobar"
    ca_cert="/etc/cert/ca.pem"
    phase1="peaplabel=1"
    phase2="auth=MSCHAPV2"
    priority=10
}

使用非加密的匿名標(biāo)志的EAP-TTLS/EAP-MD5-Challenge配置,真實的標(biāo)識符只在加密的TLS隧道上發(fā)送

network={
    ssid="example"
    key_mgmt=WPA-EAP
    eap=TTLS
    identity="user@example.com"
    anonymous_identity="anonymous@example.com"
    password="foobar"
    ca_cert="/etc/cert/ca.pem"
    priority=2
}

使用非加密的匿名標(biāo)志的EAP-TTLS/MSCHAPv2配置,真實的標(biāo)識符只在加密的TLS隧道上發(fā)送

network={
    ssid="example"
    key_mgmt=WPA-EAP
    eap=TTLS
    identity="user@example.com"
    anonymous_identity="anonymous@example.com"
    password="foobar"
    ca_cert="/etc/cert/ca.pem"
    phase2="auth=MSCHAPV2"
}

用不同的CA認證證書搭建WPA-EAP, EAP-TTLS 外部和內(nèi)部認證

network={
    ssid="example"
    key_mgmt=WPA-EAP
    eap=TTLS
    # Phase1 / outer authentication
    anonymous_identity="anonymous@example.com"
    ca_cert="/etc/cert/ca.pem"
    # Phase 2 / inner authentication
    phase2="autheap=TLS"
    ca_cert2="/etc/cert/ca2.pem"
    client_cert2="/etc/cer/user.pem"
    private_key2="/etc/cer/user.prv"
    private_key2_passwd="password"
    priority=2
}

支持WPA-PSK 和 WPA-EAP。只有接受CCMP作為成對分組密碼

network={
    ssid="example"
    bssid=00:11:22:33:44:55
    proto=WPA RSN
    key_mgmt=WPA-PSK WPA-EAP
    pairwise=CCMP
    group=CCMP
    psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
}

SSID 中的特殊字符,使用十六進制。默認為WPA-PSK,WPA-EAP和所有可用的密文

network={
    ssid=00010203
    psk=000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
}

GSM SIM 或者 USIM 的EAP-SIM

network={
    ssid="eap-sim-test"
    key_mgmt=WPA-EAP
    eap=SIM
    pin="1234"
    pcsc=""
}

EAP-PSK

network={
    ssid="eap-psk-test"
    key_mgmt=WPA-EAP
    eap=PSK
    anonymous_identity="eap_psk_user"
    password=06b4be19da289f475aa46a33cb793029
    identity="eap_psk_user@example.com"
}

IEEE 802.1x/eapol動態(tài)生成WEP密鑰(即沒有WPA)使用EAP-TLS認證和密鑰生成;需要單播和廣播WEP密鑰。

network={
    ssid="1x-test"
    key_mgmt=IEEE8021X
    eap=TLS
    identity="user@example.com"
    ca_cert="/etc/cert/ca.pem"
    client_cert="/etc/cert/user.pem"
    private_key="/etc/cert/user.prv"
    private_key_passwd="password"
    eapol_flags=3
}

LEAP動態(tài)WEP密匙

network={
    ssid="leap-example"
    key_mgmt=IEEE8021X
    eap=LEAP
    identity="user"
    password="foobar"
}

EAP-IKEv2 使用為服務(wù)器和對等認證共享密碼

network={
    ssid="ikev2-example"
    key_mgmt=WPA-EAP
    eap=IKEV2
    identity="user"
    password="foobar"
}

EAP-FAST with WPA (WPA or WPA2)

network={
    ssid="eap-fast-test"
    key_mgmt=WPA-EAP
    eap=FAST
    anonymous_identity="FAST-000102030405"
    identity="username"
    password="password"
    phase1="fast_provisioning=1"
    pac_file="/etc/wpa_supplicant.eap-fast-pac"
}
network={
    ssid="eap-fast-test"
    key_mgmt=WPA-EAP
    eap=FAST
    anonymous_identity="FAST-000102030405"
    identity="username"
    password="password"
    phase1="fast_provisioning=1"
    pac_file="blob://eap-fast-pac"
}

純文本連接(no WPA, no IEEE 802.1X)

network={
    ssid="plaintext-test"
    key_mgmt=NONE
}

** Shared WEP key connection共享WEP密匙連接(no WPA, no IEEE 802.1X)**

network={
    ssid="static-wep-test"
    key_mgmt=NONE
    wep_key0="abcde"
    wep_key1=0102030405
    wep_key2="1234567890123"
    wep_tx_keyidx=0
    priority=5
}

Shared WEP key connection共享WEP密匙連接(no WPA, no IEEE 802.1X) 使用IEEE 802.11 認證共享密匙

network={
    ssid="static-wep-test2"
    key_mgmt=NONE
    wep_key0="abcde"
    wep_key1=0102030405
    wep_key2="1234567890123"
    wep_tx_keyidx=0
    priority=5
    auth_alg=SHARED
}

IBSS/ad-hoc network with RSN

network={
    ssid="ibss-rsn"
    key_mgmt=WPA-PSK
    proto=RSN
    psk="12345678"
    mode=1
    frequency=2412
    pairwise=CCMP
    group=CCMP
}

IBSS/ad-hoc network with WPA-None/TKIP (deprecated已經(jīng)過時了的)

network={
    ssid="test adhoc"
    mode=1
    frequency=2412
    proto=WPA
    key_mgmt=WPA-NONE
    pairwise=NONE
    group=TKIP
    psk="secret passphrase"
}

開放匹配的網(wǎng)絡(luò)

network={
    ssid="test mesh"
    mode=5
    frequency=2437
    key_mgmt=NONE
}

secure (SAE + AMPE) network

network={
    ssid="secure mesh"
    mode=5
    frequency=2437
    key_mgmt=SAE
    psk="very secret passphrase"
}

涵蓋所有允許更多或者更少的配置模式的案例

network={
    ssid="example"
    scan_ssid=1
    key_mgmt=WPA-EAP WPA-PSK IEEE8021X NONE
    pairwise=CCMP TKIP
    group=CCMP TKIP WEP104 WEP40
    psk="very secret passphrase"
    eap=TTLS PEAP TLS
    identity="user@example.com"
    password="foobar"
    ca_cert="/etc/cert/ca.pem"
    client_cert="/etc/cert/user.pem"
    private_key="/etc/cert/user.prv"
    private_key_passwd="password"
    phase1="peaplabel=0"
}

EAP-TLS智能卡的案例(openssl的工具)

network={
    ssid="example"
    key_mgmt=WPA-EAP
    eap=TLS
    proto=RSN
    pairwise=CCMP TKIP
    group=CCMP TKIP
    identity="user@example.com"
    ca_cert="/etc/cert/ca.pem"
    client_cert="/etc/cert/user.pem"

    engine=1
    //這里配置的工具必須是可用的。在全局選項中查看openssl支持的工具。
    //通過該引擎的密鑰必須和配置上述的客戶端證書的私鑰匹配

    //使用opensc工具
    //engine_id="opensc"
    //key_id="45"

    //使用pkcs11 工具
    engine_id="pkcs11"
    key_id="id_45"

    //PIN可選的配置,這個選項可以被遺漏并且PIN將會被控制接口請求
    pin="1234"

如何使用內(nèi)聯(lián)blob作為CA認證證書的數(shù)據(jù)取代使用外部文件來配置的案例

network={
    ssid="example"
    key_mgmt=WPA-EAP
    eap=TTLS
    identity="user@example.com"
    anonymous_identity="anonymous@example.com"
    password="foobar"
    ca_cert="blob://exampleblob"
    priority=20
}
blob-base64-exampleblob={
SGVsbG8gV29ybGQhCg==
}

對于SSID通配符的匹配(只支持純文本APs)在本例中無論SSID為和都選擇任何開放的AP

network={
    key_mgmt=NONE
}

配置兩個在這個網(wǎng)絡(luò)中會被忽略的APs 黑名單

network={
    ssid="example"
    psk="very secret passphrase"
    bssid_blacklist=02:11:22:33:44:55 02:22:aa:44:55:66
}

該案例配置了AP選擇時指定特定APs的限制;任何其他不匹配掩碼地址的AP將會被忽略

network={
    ssid="example"
    psk="very secret passphrase"
    bssid_whitelist=02:55:ae:bc:00:00/ff:ff:ff:ff:00:00 00:00:77:66:55:44/00:00:ff:ff:ff:ff
}

只掃描通道36 的配置案例

freq_list=5180
network={
    key_mgmt=NONE
}

MACsec配置案例

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
}

原文:https://w1.fi/cgit/hostap/plain/wpa_supplicant/wpa_supplicant.conf

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容