[centos-users 1206] pam_unix(dovecot:auth): authentication failure

HOTTA Michihide hotta @ net-newbie.com
2009年 6月 23日 (火) 10:34:58 JST


堀田@長崎市です。

$ head -1 /etc/issue
CentOS release 5.3 (Final)

なマシンで OpenLDAP+Dovecot(+Postfix) による IMAP/POP サーバを運
用しています。マシンは2台あり、それぞれ2000前後のユーザを収容し
ています。一般ユーザの認証はすべて LDAP で、システム管理者の分の
みssh ログイン(公開鍵認証) 用のローカルアカウントも登録しています。

動き的には特に問題なさそうなのですが、ログインのたびに pam_unix 
のエラーログが吐かれるので、何とかならないものかと思っています。
2台(実際は、もう一台は CentOS 4.7)とも同様の状況です。

$ tail /var/log/maillog
Jun 23 09:45:40 presage dovecot: imap-login: Login: user=<user1>, 
  method=PLAIN, rip=10.17.71.79, lip=10.27.4.20
Jun 23 09:45:41 presage dovecot: imap-login: Login: user=<user2>, 
  method=PLAIN, rip=10.16.1.8, lip=10.27.4.20
Jun 23 09:45:41 presage dovecot: IMAP(user2): Disconnected: Logged out

$ tail /var/log/secure
Jun 23 09:45:40 presage dovecot-auth: pam_unix(dovecot:auth): 
  authentication failure; logname= uid=0 euid=0 tty=dovecot 
  ruser= rhost=10.17.71.79  user=user1
Jun 23 09:45:41 presage dovecot-auth: pam_unix(dovecot:auth): 
  authentication failure; logname= uid=0 euid=0 tty=dovecot 
  ruser= rhost=10.16.1.8  user=user2
Jun 23 09:45:58 presage last message repeated 2 times

/etc/dovecot.conf は多少チューニングしたくらいで、認証周りに関し
ては pam にお任せで、特になにも設定していません。

$ diff dovecot.conf.orig /etc/dovecot.conf
20c20
< #protocols = imap imaps pop3 pop3s
---
> protocols = imap pop3
85c85
< #ssl_disable = no
---
> ssl_disable = yes
166a185,187
< #login_max_connections = 256
---
> login_max_connections = 512
209c230
< #mail_location =
---
> mail_location = maildir:~/Maildir
290c322,325
< #dotlock_use_excl = no
---
> dotlock_use_excl = yes
295c330,333
< #fsync_disable = no
---
> fsync_disable = yes

authconfig-tui は、以下のようになっています。
 * キャッシュ情報
 * LDAPを使用
 * MD5 パスワードを使用
 * シャドウパスワードを使用
 * LDAP 認証を使用

/etc/pam.d/system-auth については、先頭のところに
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
などと書かれているので、手でいじったりはしていません。

auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        sufficient    pam_ldap.so use_first_pass
auth        required      pam_deny.so

要は、ローカル認証を試すのは仕方がないが、その際のアカウントなし
エラーを抑制できればいいのではないかと思います。もしくは、LDAP
認証を先にやってくれて、それで通れば pam_unix に制御が行かないよ
うにすればよいのだと思いますが、やり方がわかりません。単純に
pam_ldap.so の行を pam_unix.so の上に持っていくと、認証が通らな
くなるようです。

どなたかご教示いただければ幸いです。

-- 
HOTTA Michihide <hotta @ net-newbie.com>



centos-users メーリングリストの案内