在 Mikrotik 熱點中使用來自 openLDAP 的散列密碼進行身份驗證,中間步驟為 FreeRADIUS
假設我有鏈 Mikrotik Hotspot-FreeRADIUS0-OpenLDAP 並且我想要對儲存在 Hotspot 的 LDAP 目錄中的使用者進行身份驗證。到目前為止,我的所有密碼都是純文字的,而且一切都可以正常工作,但現在我想以雜湊格式保存這些密碼(可能是 SSHA,預設 ldappasswd 選項)。我想我必須在這個鏈的所有步驟中啟用雜湊密碼選項,但我沒有找到任何地方如何在 FreeRADIUS 中啟用它。謝謝你的幫助
在
raddb/mods-available/ldap
ldap { ... update { control:Password-With-Header := '<your ldap password attribute>' } ... }
在
raddb/sites-available/default
或raddb/sites-available/inner-tunnel
authorize { ... eap ldap pap ... }
在您的 LDAP 密碼屬性中,在密碼值之前添加適當的標題。
完整的標頭列表在這裡:https ://github.com/FreeRADIUS/freeradius-server/blob/v3.0.x/src/modules/rlm_pap/rlm_pap.c#L76
當 LDAP 模組執行時,它會查找您的密碼屬性,並將其儲存在 FreeRADIUS 內部
Password-With-Header
屬性中。當 PAP 模組執行時,它將搜尋
Password-With-Header
屬性,查看預定義的標頭名稱列表以查看是否有任何匹配Password-With-Header
值的開頭。如果是這樣,PAP 模組將刪除標頭,根據需要從 base64/hex 轉換,使用相同的摘要算法和鹽對使用者提供的密碼進行雜湊處理,然後比較結果。
如果雜湊匹配,pap 模組返回 ok,認證繼續,否則 pap 模組將返回拒絕,認證將失敗。
為了使它工作,您需要使用
EAP-TTLS-PAP
EAP-Type(用於 WPA2-Enterprise)或只是簡單PAP
的(用於 webportal 登錄)。