FreeRADIUSと同じ中間段階で、openLDAPのハッシュパスワードを使用してMikrotikホットスポットで認証します。

FreeRADIUSと同じ中間段階で、openLDAPのハッシュパスワードを使用してMikrotikホットスポットで認証します。

Mikrotik Hotspot-FreeRADIUS0-OpenLDAPチェーンがあり、HotspotのLDAPディレクトリに保存されているユーザーを認証したいとします。これまでは、すべてのパスワードがプレーンテキストであり、すべてがうまく機能しますが、今ではこれらのパスワードをハッシュ形式(おそらくSSHA、デフォルトのldappasswdオプション)として保存しようとしています。チェーンのすべての段階でハッシュされたパスワードオプションを有効にする必要があると思いますが、FreeRADIUSのどこでも有効にする方法が見つかりません。ご協力ありがとうございます

答え1

存在する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-PAPEAPタイプ(WPA2 Enterpriseの場合)または一般タイプPAP(ポータルログインの場合)を使用する必要があります。

関連情報