トップページunix
298コメント101KB

OpenLDAP

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2007/08/02(木) 01:24:49
なぜないのだ、この話題?
0289名無しさん@お腹いっぱい。2011/04/28(木) 18:32:09.61
http://web.archive.org/*/http://www.ldap-jp.org/
で見ると、
2007/03/31 前の状態
2007/12/23-2008/04/24 アクセス不可
2009/03/05 今の状態
0290名無しさん@お腹いっぱい。2011/04/28(木) 18:34:26.00
つーかこっちじゃん。
http://www.ldap.jp/
0291名無しさん@お腹いっぱい。2011/06/23(木) 15:33:39.62
Debian(squeeze)でldap+kerberosを利用した認証を
出来るようになりましたが、ldapのposixAccountを継
承したエントリのhost属性をチェックして、マシンへの
ログインを制限することが出来ません。

/etc/libnss-ldap.confで
pam_check_host_attr yes
pam_fileter host=<ホストのFQDN>
を記述してやれば良いのかと思ったのですが間違っ
ているのでしょうか?

LDAPサーバで、ユーザアカウントのエントリのhost
属性を、わざと間違ったものにして試してみるのです
が、ログイン出来てしまうのです。

objectClass: extensibleObject
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: person
objectClass: posixAccount
objectClass: top
cn: ***
gidNumber: ***
homeDirectory: ***
sn: ***
uid: ***
uidNumber: ***
loginShell: ***
host: <間違ったホストのFQDN>
0292名無しさん@お腹いっぱい。2011/06/23(木) 16:43:01.12
>>291
> pam_check_host_attr yes
> pam_fileter host=<ホストのFQDN>

この2つは別の機能です。

前者は、
host: !拒絶するホスト名
host: 許可するホスト名
host: *
でホスト指定できます。大文字小文字は区別しません。
比較する文字列はgethostname(2)で得られたものです。
最初の一つにマッチするか、後の2つにマッチしないと認証失敗して、
"Access denied for this host"のログを吐きます。
だから、pam_check_host_attrがyesのホストでは、
host属性がないアカウントは一切ログインできなくなります。

後者は、アカウントを検索する時のfilter指定です。
検索失敗すると"pam_ldap: ldap_search_s 〜"のログを吐きます。

これ以外にデバッグログを得る方法はありません。
(Debianのパッケージ版についてはよく知らないが、オリジナルのソースでは)
0293名無しさん@お腹いっぱい。2011/06/23(木) 16:48:36.15
>>291
> /etc/libnss-ldap.confで

上にも書いたようにDebian系はよく知らないのですが、
書く場所を間違えているということはないですか。
つまりpam_check_host_attrがyesになってないのでは?
02942912011/06/23(木) 20:26:52.44
/etc/libnss-ldap.conf
/etc/pam_ldap.conf
の両方とも

pam_filterをコメント
pam_check_host_attrをyes

にしてLDAPの当該エントリのhost属性を消去してみましたが
やはりログイン出来てしまいます。
/var/log/auth.logを見ているのですが、

ログにはpam_krb5とpam_unixのものしかでてこないのはおか
しいのでしょうか?通常pam_ldapもログに現れますか?
0295名無しさん@お腹いっぱい。2011/06/24(金) 11:35:29.63
そりゃおかしいね。
02962912011/06/24(金) 17:05:38.07
LDAP+gssapi(Kerberos)による認証の場合、pam_krb5で
ユーザ認証をし、pam_unixでユーザのuidやgidなどの
取得を試み、失敗したらログインさせないように動くよう
です。
KerberosにはあってLDAPに無いユーザでログインしよう
とするとgetpwnam(<ユーザ名>)で識別できなかったとい
うエラーがログに記録されます。

この時にpam_filterのチェックは行われるのかと思ったの
ですが、やってくれない。
0297名無しさん@お腹いっぱい。2011/06/24(金) 17:50:41.49
>>296
> KerberosにはあってLDAPに無いユーザで

エントリがなかったら、そもそもhost属性も付けられないよね。
02982912011/06/24(金) 21:11:06.78
>>297
認証時の動きを見たくて試したときの話しです。

Kerberos使わずにLDAPに認証もやらせれば出来るのですかね。
LDAPとKerberosを合わせた場合の資料が少ないのですよね。
■ このスレッドは過去ログ倉庫に格納されています