メールを送れない環境で、受信するはずのメールを確認する

はじめに

redashやwordpressなどシステムが送信するメール場合があるが、外へのメール送信が制限されている環境だとメールを確認することができない。

redashであればuser作成したあとのpassword設定であったり、
wordpressであればメールアドレスの変更など。

システムの投げるメールの本文を確認したい事は結構多い。

対応

メールキューの中身を確認する

システムが何らかの理由でメールが送信できない場合、メールキューというところに蓄積される。(その後指定しか期間を過ぎたらexpireされ、破棄される)

キューの確認

# mailq
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
BBC672189242     1762 Mon Oct 22 11:51:30  httpd@kusanagi-aaa.localdomain
            (connect to mail.xxx.co.jp[xxx.xxx.xxx.xxx]:25: No route to host)
                                         system@sumito.jp

-- 10 Kbytes in 1 Requests.

Queue IDを控え、postcat -qコマンドで中身を確認する

# postcat -q  BBC672189242
*** ENVELOPE RECORDS deferred/B/BC1DD21B7AD9 ***
message_size:            1207             183               1               0            1207
message_arrival_time: Thu Oct 25 14:28:08 2018
create_time: Thu Oct 25 14:28:08 2018
named_attribute: rewrite_context=local
sender_fullname: 
sender: httpd@kusanagi-uxd.localdomain
*** MESSAGE CONTENTS deferred/B/BC1DD21B7AD9 ***
Received: by kusanagi-uxd.localdomain (Postfix, from userid 1000)
    id BC1DD21B7AD9; Thu, 25 Oct 2018 14:28:08 +0900 (JST)
To: system@sumito.jp
Subject: =?UTF-8?B?W1ImRCBSbDmlrDopo/jg6H7zjg6vjgqLjg4njg6zjgrk=?=
X-PHP-Originating-Script: 1001:class-phpmailer.php
Date: Thu, 25 Oct 2018 05:28:08 +0000
From: WordPress <wordpress@sumito.com>
Message-ID: <1a0a2f7069595074466e7d9ef2744d49@r-and-d.rarejob.com>
X-Mailer: PHPMailer 5.2.22 (https://github.com/PHPMailer/PHPMailer)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

こんにちは wpadmin さん

お持ちのアカウントのメールアドレスの変更がリクエストされました

もしこれに間違いがなければ、以下のリンクをクリックして変更を行ってください。
https://sample.sumito.jp/wp-admin/profile.php?newuseremail=1edbc57873c6f3cbae541a8f3ebe

変更をしない場合は、このメールを無視し、削除してかまいません。

この場合はメールアドレス変更のメール。

キューの中に記載のあるURLをブラウザに入力すれば、wordpressのメールアドレスを変更することが可能になる。