25 ポートがブロックされている場合に sendmail キューを処理する方法

25 ポートがブロックされている場合に sendmail キューを処理する方法

私は、あるメールボックスから別のメールボックスに電子メールを転送する VPS を 1 つ持っています。残念ながら、先週 ISP が 25 ポートをブロックしたため、それ以来、そこから電子メールを受信できなくなりました。mailq によると、9000 通以上のメールが待機中です。何らかの方法でメール キューを処理する必要があります。VPS には CentOS がインストールされており、メールの配信には sendmail を使用しています。

問題を解決するための提案は何でしょうか?

答え1

送信ポート25がブロックされている場合、リモートMXに接続できないため、メールを送信できません。私が行うことは、別のホスティングプロバイダーにメールを送信できるマシンを設定し、別のポート(例:1025)でリッスンしているVPSからリレーするように設定し、すべてのメールをそのマシンに転送するようにsendmailを構成することです。これを行うには、以下を追加する必要があります。

define(`SMART_HOST',`relay:your.new.machine.com')dnl
define(`RELAY_MAILER',`esmtp')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 1025')dnl

その構成を適用し、次のコマンドでキューをフラッシュします。

# ensure you have the package sendmail-cf installed 
/etc/mail/make
service sendmail restart
sendmail -q -v

これらの 9,000 通の電子メールは他のマシンから送信されるため、送信先でスパムとみなされたり、破棄されたりする可能性があることに注意してください。ただし、これは別の問題です。

関連情報