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

OpenLDAP

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2007/08/02(木) 01:24:49
なぜないのだ、この話題?
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を合わせた場合の資料が少ないのですよね。
■ このスレッドは過去ログ倉庫に格納されています