外部からのメールが実際にメールボックスに着信しているのか、クライアントが受信したのか確認する方法 new!

SMTP受信ログ(inlog)やマシン接続ログ(acceptlog)では受信が確認できているメールが、グループウェアなどのメールクライアントに表示されない。切り分けのため、本当に受信できていたのかを確認したい、というご質問をいただいたことがあります。

E-Post内でのメールの流れを、"B"で始まるメッセージIDをキーにして、次の段階ごとにログで追っていくと確認できます。
SMTP送信ローカルログ(outlocallog)と各詳細ログは、デフォルトでは記録が有効になっていません。記録を始める前のメールはさかのぼって確認できないため、あらかじめ記録する設定にしておくことをお勧めします。

1. SMTP受信ログ(inlog)でメッセージIDを確かめる
受信日時や送信元アドレスを手がかりに、SMTP受信ログ(inlog)で、該当メールの"B"で始まるメッセージID(例:B0000000026)を確かめます。以降の段階では、このメッセージIDをキーにして記録を探します。
2. SMTP送信ローカルログ(outlocallog)でメールボックスへの格納を確かめる
内部ドメイン宛のメールがメールボックスへ格納されると、SMTP送信ローカルログ(outlocallog)に記録されます。メッセージIDで検索し、該当する記録があれば、メールボックスへの着信・格納は完了しています。
(書式)<メッセージID@マシン名> <sent on [記録日時]> <to 宛先メールサーバ> <from 送信元アドレス> <to 送信先アドレス>
記録を始めるには「ログ設定」のチェックボックスをオンに設定した後、SMTP配送サービス(epstdd)を再起動します(関連FAQ「SMTP送信ローカルログ(outlocallog)について」参照)。
3. クライアントが受け取ったかを確かめる(POP3の場合)
POP3ログ(pop3log)だけでは、どのメールを受信したかまでは判別できません。POP3詳細ログ(receivepop3)を記録する設定にしておけば、メッセージIDで探せるようになります。
(1) POP3詳細ログ(receivepop3)で、該当のメールデータ(例:B0000000026.MSG)を扱っている記録を探し、その時刻を確かめます。
(2) POP3ログ(pop3log)で同じ時刻の記録を探します。RETRコマンドでメールを取得している記録があれば、クライアントがPOP3で受信したと判断できます。
POP3詳細ログ(receivepop3)を記録するには「ログ設定」のチェックボックスをオンに設定した後、POP3サービス(epstpop3d)を再起動します(関連FAQ「POP3の詳細ログ(receivepop3)について」参照)。
4. クライアントが受け取ったかを確かめる(IMAP4の場合)
IMAP4で受け取る場合、メールはまず、ユーザーのメールボックスフォルダ(/var/spool/epms/inbox/example.jp/taro/)に"B"で始まる.MSGファイルとして着信します。その後、クライアントがIMAP4で接続した時点で、一段深いIMAP4用のINBOXフォルダへ移動(またはコピー)されます。
この移動(またはコピー)の記録を、メッセージIDをキーにしてIMAP4詳細ログ(receiveimap4)から探します。
LOGIN:MoveMSGFile()=CopyFile([/var/spool/epms/inbox/example.jp/taro/B0000000026.MSG],
[/var/spool/epms/inbox/example.jp/taro/inbox/0000000001-100000.MSG]) Success.
メッセージIDがわからない場合は、SMTPで受信した時刻の前後にある、INBOXフォルダへの移動の記録をたどって探します。
IMAP4詳細ログ(receiveimap4)を記録するには、「ログ設定」のチェックボックスをオンに設定した後、IMAP4サービス(epstimap4d)を再起動します(関連FAQ「IMAP4の詳細ログ(receiveimap4)について」参照)。
なお、移動になるかコピーになるかは、「ユーザー管理」での各アカウント設定の「POP3無効」チェックボックスの設定に依存します(関連FAQ「IMAP4用メールボックスフォルダへのメール格納タイミングについて」参照)。
確認結果の見方
ログの記録わかること
2まであり、3にも4にも記録がないE-Postのメールボックスには届いているが、クライアントはまだ受け取っていない
3または4まであるE-Postからクライアントへの受け渡しまで完了している。表示されない原因は、クライアント(グループウェア)側で確認する
(関連FAQ)
●SMTP送信ローカルログ(outlocallog)について
●POP3の詳細ログ(receivepop3)について
●送信されてきた当該メールがPOP3で正常に受信されているかの確認手段
●IMAP4の詳細ログ(receiveimap4)について
●IMAP4用メールボックスフォルダへのメール格納タイミングについて