Il mio wpa_supplicant.conf
assomiglia a questo:
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"
}
Con questa combinazione specifica di WPA-EAP e MSCHAP-v2, c'è un modo per non includere la mia password in chiaro in questo file di configurazione?
Il ChangeLog sembra affermare che questo è fattibile (dal 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
Alcune note:
L'uso di una password diversa non è un'opzione, in quanto non ho alcun controllo su questa rete (questa è una rete aziendale e un singolo nome utente / password viene utilizzato per accedere a tutti i servizi, inclusa la connessione al Wifi).
Una parola sui duplicati:
- 40: use-wpa-supplicant-without-plain-text-password riguarda le chiavi pre-condivise
- 74500: wpa-supplicant-store-password-as-hash-wpa-eap-with-phase2-auth-pap utilizza PAP come autenticazione di fase 2 (non MSCHAP-v2).
- 85757: store-password-as-hash-in-wpa-supplicant-conf è molto simile a questa domanda, ma è stato (erroneamente) chiuso come duplicato di 74500 ; sfortunatamente, le risposte fornite al presunto duplicato sono specifiche di PAP e non si applicano al caso MSCHAP-v2. 85757 stesso ha una risposta sostenendo che è essenzialmente impossibile indipendentemente dal protocollo, ma la giustificazione non è valida 1
1 Quella risposta afferma che l'uso di una password con hash significa che l'hash diventa la password. Ciò è tecnicamente vero, ma almeno l'hash è una password solo wifi , che rappresenta un progresso significativo rispetto alla perdita di una password condivisa che consente l'accesso a più servizi.
-d
traccia di wpa_supplicant, ho diversiEAP-PEAP: Derived Session-Id
,EAP-PEAP: Decrypted Phase 2 EAP
,MSCHAPV2: auth_challenge - hexdump(len=16):
, eMSCHAPV2: password hash - hexdump(len=...)
le uscite, e infine due messaggi dicendoEAP-TLV: TLV Result - Failure
eEAPOL authentication completed - result=FAILURE