postfix+dovecotの組み合わせでメールサーバーを構築することが度々あるのですが、
毎回どこかの設定でハマります(クラウドに移行したい・・・)
そんなときのエラー調査方法についてメモしておきます。
環境はRedhat系のディストリを想定しています。
dovecotのエラー出力を詳細に
以下の設定を追記します。
/etc/dovecot/dovecot.conf
auth_verbose = yes
auth_debug = yes
この設定を加えると、/var/log/maillogに出力されるdovecotのログが詳細になります。
メールアカウントの認証にMySQLをしているのですが、認証の際に発行されるSQLも出力されるので問題の特定が容易になります。
(今回の場合は、"webmaser"とタイポしてたのが原因でしたorz)
an 28 13:54:52 server dovecot: auth: sql(webmaser@myserver.jp,***.***.***.***): unknown user
Jan 28 13:54:54 server dovecot: auth: Debug: client out: FAIL#0112#011user=webmaser@myserver.jp
Jan 28 13:54:54 server dovecot: auth: Debug: client in: AUTH#0113#011PLAIN#011service=pop3#011lip=10.0.0.152#011rip=***.***.***.***#011lport=110#011rport=61052#011resp=<hidden>
Jan 28 13:54:58 server dovecot: auth: Debug: sql(webmaser@myserver.jp,***.***.***.***): query: SELECT password FROM mailbox WHERE username = 'webmaser@myserver.jp' AND active = '1'
Jan 28 13:54:58 server dovecot: auth: sql(webmaser@myserver.jp,***.***.***.***): unknown user
Jan 28 13:55:00 server dovecot: auth: Debug: client out: FAIL#0113#011user=webmaser@myserver.jp
Jan 28 13:55:00 server dovecot: pop3-login: Disconnected (auth failed, 3 attempts): user=<webmaser@myserver.jp>, method=PLAIN, rip=***.***.***.***, lip=10.0.0.152