[ubuntu-jp:738] nsswitch で ldap を指定すると起動処理が行われない

FUJITA Tomoki posmoda at yahoo.co.jp
Thu Mar 27 13:32:55 GMT 2008


はじめまして。藤田と申します。

ubuntu server 7.10 + OpenLDAP + Samba で 
NTドメインコントローラを構築しようと考えています。

はじめに OpenLDAP, Samba, smbldap-tools を apt-get でインストール、設定し
smbldap-populate でデータベースを初期化、smbldap-useradd -a で
ローカルと同名のユーザ tomoki と、LDAP データベース上のみに存在する test というユーザを作成しました。

続いて libpam-ldap, libnss-ldap を apt-get でインストールし、

https://help.ubuntu.com/community/LDAPClientAuthentication

の通りに

/etc/nsswitch.conf
/etc/pam.d/common-*

を設定しました。

また、

https://wiki.ubuntu.com/LDAPAuthentication

によると、/etc/libnss-ldap.conf と /etc/pam_ldap.conf は /etc/ldap.conf
に統合されたようなので、こちらを手動で編集しました。
libpam-ldap と libnss-ldap のインストール時に auth-client-config に
なにやら尋ねられていたのですが、当時は訳が分からないまま答えてしまっていたためです。

この段階で、

$ getent passwd

とすると、前述の test を含む smbldap-tools によって作成されたユーザも表示されます。
また ssh によるログインも、
ローカルのユーザ(tomoki)、LDAP認証によるユーザ(test)ともに問題なく行えます。

ところが、リブートして tomoki でログインしようとすると、

password:

と表示されるところまではいけるのですが、
パスワードを入力し enter するとしばらく固まってタイムアウトになります。
test でログインしようとすると、ユーザ名を入力して
enter した時点でしばらく固まってしまい、タイムアウトになります。

しかたがないので single モードで起動し、/etc/nsswitch.conf を

passwd: files ldap
group:	files ldap
shadow:	files ldap

から

passwd: compat
group:	compat
shadow:	compat

に書き直してリブートしました。
この場合、tomoki によるログインは成功しますが、当然 ldap による認証は行われません。

/etc/nsswitch.conf で ldap を指定せずに起動した場合、

login:

と表示された後に rc2.d で指定されたデーモンが起動しますが、
ldap を指定すると login: の時点で起動プロセスが終わってしまいます。
BIND や Samba, ssh も起動されません。

なので、おそらくそもそも slapd が起動していないので認証が行えないのではと考えています。
slapd は loglevel = 256 で /var/log/slapd にログを出力しているのですが、
そちらを参照してもリブート時のログは残っていませんでした。

このままではリブートのたびに設定を書き直さなくてはなりませんが、
私ではこれ以上の解決の糸口が判らず、ご教授いただきたくポストさせていただきました。

よろしくお願いいたします。

なお、/etc/ldap.conf の内容は以下の通りになっています。

---- /etc/ldap.conf ----

host 127.0.0.1
base dc=hogehoge,dc=local
uri ldap://127.0.0.1/
ldap_version 3
rootbinddn cn=admin,dc=hogehoge,dc=local
scope sub
pam_password md5

-------------------------

-- 
藤田知己 (FUJITA Tomoki)
Itabashi Tokyo, JAPAN
mailto:posmoda at yahoo.co.jp



More information about the ubuntu-jp mailing list