サーバーからすべてのメールを転送する最も簡単な方法は何ですか? [コピー]

サーバーからすべてのメールを転送する最も簡単な方法は何ですか? [コピー]

重複の可能性:
軽量発信SMTPサーバー

私は、ローカルユーザーのための電子メールやクローン操作などの完全修飾アドレスを生成するヘッドレスサーバーを含む最小のメールソリューション(MTA)を探しています。理想的には、ローカルユーザーに送信されるすべてのメールは<1024fooにマッピングされfoo@mydomain変更され、含まれずにuid外部smtpサーバーに送信する必要があります/var/mail

数年前に私が使っていたsSMTP同様の作業では、これがまだ進行中であるかどうか疑問に思います。また、デフォルトのDebianメールシステムをどのくらい削除する必要がありますか?


修正する最終的な Google 検索後に明確な候補者は次のとおりです。

しかし、電子SMTPこれ以上開発されなくなり、最高のドキュメントがあるようです。しかし、それは私の要件に合わない。foosmtpを介してメールをプッシュするのではなく、Mail Delivery Agent(MDA)を介してローカルユーザーにメールを配信するように要求するようです。設定に[email protected]追加することもできます。qualify_domainマッピングしてください。一度試してみる必要があるかもしれません...
空の郵便物キューが実行されているようです/var。これは私が望むものではありません。

誰でもこれの経験がありますか?

答え1

空の郵便物資格がある可能性があります:

Nullmailerは、固定の「アップストリーム」ホストセットを介してのみすべてのメッセージを中継するように設計されたメール転送エージェントです。

Debianパッケージをインストールすると、古いMTAが置き換えられます。

答え2

私の提案もnullmailerです。私たちは以前も同様の状況にありました(システム生成メールを処理するためにZimbraボックスに2番目のMTAが必要です)。

ただし、/ varを使用してはいけないという要件が邪魔になります。理由を詳しく説明してください。問題が完全にディスク使用量にある場合は、nullmailerのキューをtmpfsにマウントできます。これは非常に安全ではありませんが、少なくともディスクにはまったく影響しません。

答え3

IMHO、最も簡単な方法はpostfixをインストールし(debconfで質問する場合は「インターネットサイト」を選択して)、次のコマンドを実行することです:

postconf -e relayhost=other.mailserver.com
postconf -e mailname=my.domainname.com

relayhostで指定されたSMTPサーバーが認証を要求しない場合、中継を許可する、または受信者アドレスの有効な宛先である場合にのみ使用できます。

このmailnameパラメータはデフォルトのドメイン名になります。したがって、fooにメールを送信すると、次のように送信されます。[Eメール保護]。ユーザーバーから送信された電子メールは次から送信されます。[Eメール保護]

実際に認証が必要でTLSをサポートする場合は、次のコマンドを実行することもできます。

postconf -e smtp_tls_security_level=may
postconf -e smtp_sasl_auth_enable=yes
postconf -e smtp_sasl_password_maps=pcre:/etc/postfix/sasl_password_maps

それでは、/etc/postfix/sasl_password_maps次のようなものがあります。

/./ username:password

すべてのメールは、指定されたユーザー名とパスワードを使用して中継ホストに送信されます。

関連情報