これは私のブログhttp://blog.malowa.de/2011/04/postfix-as-spam-trap-server.htmlからコピーされ、わずかに変更されています。
nullmailerとして機能するようにPostfixを設定する必要さえありません。Postfixにsmtp-sink
は、トリックを実行するという適切なツールが付属しています。smtp-sinkは主に、サーバーを操作する必要があるSMTPクライアントのテストツールとして機能することを目的としています。したがって、会話全体をログに記録したり、受信した各メールをファイルにダンプしたりするように構成できます。後者はnullmailerに必要です。
smtp-sinkを構成するための構成ファイルはありません。すべてはコマンドラインオプションを介して行われます。
smtp-sink -c -d "%Y%m%d%H/%M." -f . -u postfix -R /tmp/ -B "550 5.3.0 The recipient does not like your mail. Don't try again." -h spamtrap.example.com 25 1024
各パラメータを詳しく見てみましょう。
-u postfix
Runs the program under the user "postfix"
-R /tmp/
Sets the output directory to /tmp/. In this directory the mails will be stored. If you have a high spam volume (hundreds of Spam per minute) it is recommended to write the mails to a ramdisk
-d "%Y%m%d%H/%M."
Writes the mail to a directory of the format "YearMonthDayHour" and in this directory the files are name "Month.RandomID". Note that the dates are in UTC
-c
Write statistics about connection counts and message counts to stdout while running
-f .
Reject the mail after END-OF-DATA. But the mail will be saved. Cool, isn't it?!
-B "550 5.3.0 The recipient does not like your mail. Don't try again"
This is the rejection message after END-OF-DATA.
-h spamtrap.example.com
Announce the hostname spamtrap.example.com
25
The port to listen on. Can be prepended with an IP or host if you want to bind on a special interface.
1024
The backlog count of connections that can wait in the TCP/IP stack before they get a free slot for sending mail.
詳細については、smtp-sinkのmanページを参照してください。これらは、キャッチオールスパムトラップを実行するための重要な情報です。この構成では、プログラムは、IPv4およびIPv6を使用して、任意の送信者から任意の受信者への任意のサイズのメールを受け入れます。唯一の制限は、1024のキュー接続で可能な同時接続は256のみであり、プログラムには試験的なフラグが付けられていることです。したがって、実稼働環境ではsmtp-sinkを使用しないでください。
-BオプションはPostfixの新しいバージョンでのみ有効です。2.7.1では不足しています。2.8.2では存在します。その中間のどこかで導入されました。