回答:
トラップされたすべてのメールを受信するようにローカルユーザーを設定します。
adduser mailtrap
main.cfに追加する必要があります。
transport_maps = hash:/etc/postfix/transport
luser_relay = mailtrap
次に、これを使用して/ etc / postfix / transportを作成します。
localhost :
your.hostname.example.com:
* local:mailtrap
保存してから実行: postmap /etc/postfix/transport
最終的にpostfixを再起動しますinvoke-rc.d postfix restart
すべてのローカルメールは通常どおり配信され、外部メールはローカルmailtrap
アカウントに配信されます。
luser_relay = xxxxx
した後だけmain.cf
です。これがなければ、メールは跳ね返ります。
sudo service postfix restart
。上記のmain.cfファイルの場所は/etc/postfix/main.cf
です。Postfixを初めてインストールして設定するときに、Local only
インストールオプションを使用できます。
postmap hash:/etc/postfix/transport
とsudo postfix stop
、sudo postfix start
より良いのは、仮想エイリアスファイルを作成することです。
/etc/postfix/main.cf内:
virtual_alias_maps = pcre:/etc/postfix/virtual
/ etc / postfix / virtual内:
/.*@.*/ root
root
すべての送信メールを受信したいユーザーに置き換えることができます。ローカルメールを通常の方法で(リダイレクトなしで)配信する場合は、このパターンを調整できます。
/.*@(?!hostname\.localdomain$).*/ root
ここにある元のアイデア: Postfix開発サーバー-すべての送信メールを傍受する
sudo apt-get install postfix-pcre
驚きを避けるために、事前に必要になる場合があることに注意してください。
Postfixはsmtp-sinkと呼ばれるものを提供します。デフォルトでは、受信したすべての電子メールをブラックホール化します。それ以降のバージョンは、ファイル内の電子メールをキャプチャするように構成することもできます。
これは、技術的にはpostfixを使用しません(ただし、postfixが提供するユーティリティです)。また、各電子メールを単一の電子メールアドレスに技術的にリダイレクトしません。ただし、ポート25のすべてのトラフィックをキャプチャし、それを解析可能なファイルにダンプします。