Openldap

在 Mikrotik 熱點中使用來自 openLDAP 的散列密碼進行身份驗證,中間步驟為 FreeRADIUS

  • June 14, 2017

假設我有鏈 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/defaultraddb/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-PAPEAP-Type(用於 WPA2-Enterprise)或只是簡單PAP的(用於 webportal 登錄)。

引用自:https://unix.stackexchange.com/questions/370570