web-dev-qa-db-ja.com

すべてのメールを外部MTAに転送するようにsendmailを設定するにはどうすればよいですか?

現在、SMTPを外部MTAと通信する複数のアプリケーションがあります。メールには任意の宛先ドメイン(ユーザーに送信されるメール)がありますが、すべて同じ内部ドメイン([email protected])から送信されます。

すべてのメールをキューに入れる内部MTA(sendmailで推測)をセットアップし、内部MTAがこれらの電子メールを外部MTAに転送するようにします。これは、外部MTAが時々ダウンし、これによりアプリケーションでさまざまな問題が発生するためです。 sendmailをキューミドルウェアとして設定できると思います。

上記の仮定が正しい場合、sendmail構成はどのようになりますか? 「mailertable」機能は有望に見え、「SMART_Host」も同様です。

これらの可能性を探る前の考えは?

  • ジェー
7

このような構成(すべてのメールを他の1つのMTAに転送する)は、「nullclient」構成と呼ばれます。いくつかのガイドが利用可能です:

Sendmailの場合、必要なものは次のとおりです。

FEATURE(`nullclient', `mailhub.domain.notused')dnl

一部のディストリビューション(openSuSE)は、この目的のために個別の 'nullclient.mc'構成ファイルを提供しています。

4
MikeyB

SMART_Hostは確かに正しいオプションですが、nullclientも正しいオプションです。例:

FEATURE(`nullclient',`mta.external.com') dnl
define(`SMART_Host',`mta.external.com') dnl

基本的な違いは、nullclientはSMART_Hostとは異なり、ローカルユーザーのメッセージもリモートホストに転送することです。 SMART_Hostは、ローカル以外のユーザーへのメッセージのみをリモートホストに転送します。また、質問で説明されているのと同様の状況で次のオプションが役立つ場合があります:LOCAL_RELAY、MAIL_HUB、LUSER_RELAY

私はこれらのオプションの素晴らしい説明をここで見つけました: http://docstore.mik.ua/orelly/other/Sendmail_3rd/1565928393_sendmail3-chp-4-sect-5.html

この投稿も参照 sendmail foward local mail to relay Host

質問が古いことは知っていますが、情報を投稿するのに適しているようです。すべてのビットをまとめるのに少し時間がかかりました。

4
GoodMirek

私はsendmailを避け、nullmailerと呼ばれる「最小限のリレーサーバー」を選びました。

私はここでそれについてブログを書いた そしてそれは私のシナリオにうまく機能します-あなたの走行距離は変わるかもしれません;-)

編集:ナッジがこのリンクを修正してくれた@taniusに感謝;-)

2
DilbertDave

SMART_Hostパラメータはまさにあなたが探しているものです。正確な構成の詳細は、sendmailのバージョンによって異なりますが、かなり簡単です。外部MTAの名前は、構成時にスマートホストとして指定します。 (構成するマシンがスマートホストの名前も解決できることを確認してください。)

2
Evan Anderson

この質問は、以前に尋ねられた質問とよく似ています。

代わりにSSMTPを使用するオプションを、私の ここで回答 と考えてください。

このような単純なタスクにSendmailを使用することの複雑さとセキュリティの問題を自分で保存してください。

1
Dan Carley

私のお気に入りのメールソフトウェアであるpostfixでは、設定オプションはrelayhostです。

0
Greeblesnort