Search

radiusdとopenldap(slave)の連携について

少しはまったので、メモ。

構成

oepldap(master) <-> openldap(slave) <-> radiusd

openldap: 2.4.40-13.el7
freeradius: 3.0.4-7.el7_3

※構成の経緯
oepldap(master)のconfigパスワードがわからず、openldap(slave)を作成し、無理やり連携させた。
oepldap(master)とradiusdを連携させればよかったが、ネットワーク的な距離が遠いため、このような構成とした。

問題

上記構成の時に、radiusd とopenldap(slave)の連携ができない。
openldapのレプリケーションを解けば正常に連携できる。

解決方法

openldap(slave)は書き込みができない。
radiusdがopenldapと連携する際に、descriptionに認証をしたタイムスタンプを書いていることが分かった。
そのため、下記ファイルの description := の記述をすべてコメントアウトし、radiusを再起動した。
/etc/raddb/mods-available/ldap
/etc/raddb/mods-enabled/ldap

なお、デバッグ時には下記のようなログがでていた。

(0) ERROR: ldap : Failed modifying object: Server was unwilling to perform
(0) ERROR: ldap : (null)