sendmail コマンドでメール送信無しに相手メールサーバで受信可能かのテストをする

ALL
スポンサーリンク

sendmail コマンドで、-bvオプションを付けると、相手にメールを送ることなく、相手メールサーバで受信可能かの検証が出来るとのことです。

CentOS 7 の Postfix で独自ドメインの設定 – Qiita

次のように実行します。

echo "test mail" | sendmail -bv user_valid@ok.example.com

コマンドを実行したユーザ宛に、結果メールが届くので、メーラーで受信するか、~/Maildir/new/ 下の新着メールを直接見ます。
(コマンドで指定した宛先ではないことに注意)

届いた結果のメール中、

The mail system

の行に続く表示を確認します。

結果は、次のように確認します。
なお、送信先メール(のメールサーバ)により、出力内容が若干異なるようです。

OKの場合は、OK の出力があります。

<user_valid@ok.example.com>: delivery via
    example.com[10.8.44.3]:25: 250 2.1.5
    <user_valid@ok.example.com>... Recipient ok

<user_valid@ok.example.com>: delivery via
    example.com[10.8.44.3]:25: 250 2.1.5 Ok

メールドメインが不正な場合は、Host not found と出力されます。

<user_valid@ng.example.com>: Host or domain name not found. Name
    service error for name=ng.example.com type=A: Host not found

存在しないユーザーの場合は、User unknown と出力されます。

<user_invalid@ok.example.com>: delivery via
    example.com[10.8.44.3]:25: host
    example.com[10.8.44.3] said: 553 5.3.0
    <user_invalid@ok.example.com>... User unknown, not local address
    (in reply to RCPT TO command)

相手のメールサーバが Greylisting方式による迷惑メール対策を行っている場合は、一旦受信が拒否されることがあります。
Greylisted for 300 seconds のような表記があります。
XXX seconds で表記された秒数経過後に、再度メールを送ると受信できるはずです。

<user_valid@ok.example.com>: delivery via
    example.com[10.8.44.3]:25: host
    example.com[10.8.44.3] said: 450 4.2.0
    <user_valid@ok.example.com>: Recipient address rejected: Greylisted for
    300 seconds (in reply to RCPT TO command)

参考

CentOS 7 の Postfix で独自ドメインの設定 – Qiita

コメント