我的wpa_supplicant.conf
样子是这样的:
network={
ssid="Some name"
scan_ssid=1
key_mgmt=WPA-EAP
eap=PEAP
identity="my-user-id"
password="(clear text password here)"
ca_cert="/usr/share/ca-certificates/mozilla/GeoTrust_Global_CA.crt"
phase2="auth=MSCHAPV2"
}
通过WPA-EAP和MSCHAP-v2的这种特定组合,是否有办法不在此配置文件中明确包含我的密码?
ChangeLog似乎声称这是可行的(自2005年以来!):
* added support for storing EAP user password as NtPasswordHash instead
of plaintext password when using MSCHAP or MSCHAPv2 for
authentication (hash:<16-octet hex value>); added nt_password_hash
tool for hashing password to generate NtPasswordHash
一些注意事项:
不能使用其他密码,因为我无法控制此网络(这是公司网络,并且使用单个用户名/密码访问所有服务,包括连接到Wifi)。
关于重复的一句话:
- 40:不使用纯文本密码的wpa请求者是关于预共享密钥的
- 74500:wpa申请人存储密码为哈希,wpa-eap-phase2-auth-pap使用PAP作为第二阶段认证(不是MSCHAP-v2)。
- 85757:将密码存储为wpa-supplicant-conf中的哈希非常类似于此问题,但是(错误地)作为74500的副本被关闭;不幸的是,对声称的副本的回答仅针对PAP,不适用于MSCHAP-v2。85757本身有一个答案,声称无论采用哪种协议,这实际上都是不可能的,但理由无效1
1分析器声称使用哈希密码意味着哈希成为密码。从技术上讲,这是正确的,但至少散列是仅用于wifi的密码,与泄漏授予多个服务访问权限的共享密码相比,这是一个重大进步。
-d
的wpa_supplicant的痕迹,我得到不同的EAP-PEAP: Derived Session-Id
,EAP-PEAP: Decrypted Phase 2 EAP
,MSCHAPV2: auth_challenge - hexdump(len=16):
,和MSCHAPV2: password hash - hexdump(len=...)
输出,最后两个消息说EAP-TLV: TLV Result - Failure
和EAPOL authentication completed - result=FAILURE