Scientific Linux 6.1でのLDAPクライアント設定
Scientific Linux 6.1のLDAPクライアントでハマったこと。今回は6.1だが、それ以降でも、6でも、CentOS 6でも、基本一緒だと思う。こちらやこちら(CentOS6用)を参考にしつつ実施(何せまだ情報がほとんどないので助かりました)。
基本メモ
1. nss_ldapはなくなり、代わりにpam_ldap,nss_pam_ldapdを導入。
2. /etc/ldap.confは/etc/pam_ldap.confに変わった。
3. 新しいデーモン、nslcdが加わった。設定ファイルは/etc/nslcd.conf。自動起動をONにしておく。
4. /etc/pam.d/sshdがsystem-authではなく、代わりにpassword-authを参照するようになった。5系以前で/etc/pam.d/system-authに記載していた内容を、そのまま/etc/pam.d/password-authに置き換えればOK。(のハズ)
以上の他は、今までと同じにしておいてよい。nslcd.confの注意点としては、参考URL内にあったパラメータだけでなく、binddn, bindpwも適宜記述する必要がある。この値は/etc/pam_ldap.confに記述してあるのと同様にすればよい。
/etc/nslcd.conf(一部)
uid nslcd
gid ldap
# 以下、個別に通常使用する値を記述
uri ldap://LDAPサーバのIPまたはドメイン
base dc=example,dc=com
binddn cn=client,dc=example,dc=com
bindpw xxzzyy
で、一通りやってみたが認証ができない。LDAPサーバと通信はできているのだが、クライアント側でid usernameとかgetent passwdしてもユーザが見えない。認証問合せにいってくれないんである。こういう時はnss周りが怪しい、と目星をつけたものの、ツールや設定は問題ないはず。なぜぇぇぇぇーーーー!!
・・・で、原因は。「nslcdの反映にはOS再起動が必要」。
あぁぁぁぁぁぁーーー!!このために半日費やしたーーーー!!
この記事が、どこかの誰かに役に立つことを祈る。