私はさまざまな会社のメールを扱っています。各企業は、Fromアドレスに基づいて特定のSMTPリレーを介してすべての送信メールをルーティングする必要があります。
どのソフトウェア構成またはテクノロジーでこれを実行できますか?
私たちはExchange2010を使用するWindowsショップですが、sendmailのような他のオプションを利用できます。また、カスタムを作成する人を購入または検索することもできます Transport Agent
Exchangeマシンがすべての電子メールをsendmailを実行する別のマシンに転送すると仮定すると、ルールセット0の$&fマクロを使用して、送信者ドメインに基づいてルーティングすることを決定できます。
LOCAL_RULE_0
# first make sure that local mail gets delivered properly
R$- $@OK
R$* < @ $=w . > $* $@OK
# now deal with senders
R$* $: $>canonify $&f $| $1
# stuff [email protected] sends goes through server1.relay
Ruser1 < @ domain1.com. > $* $| $* < @ $* . > $* $#esmtp $@ [server1.relay] $: $2 < @ $3 . > $4
# stuff [email protected] sends goes through server2.relay
Ruser2 < @ domain2.com. > $* $| $* < @ $* . > $* $#esmtp $@ [server2.relay] $: $2 < @ $3 . > $4
# stuff users from domain3.com send goes through server3.relay
R$* < @ domain3.com. > $* $| $* < @ $* . > $* $#esmtp $@ [server3.relay] $: $3 < @ $4 . > $5
上記のルールを/ etc/mail/sendmail.mcに追加する必要があります。次に、sendmail.cfをビルドして、sendmailを再起動する必要があります。 DebianまたはUbuntuシステムを使用しているとすると、これはsendmailconfig
を発行することによって行われます。上記の例では、ルールの左側と右側がスペースではなくタブで区切られているため、ルールセットをコピーして貼り付けるのではなく、入力する必要があることに注意してください。
ええと、私は最前線のMTA作業のためにPostfixを備えたLinuxに偏っています(そしてそれに精通しています)ので、これによる解決策は次のとおりです。
domain transport:nexthop
Deliver mail for domain through transport to next-hop.
これを見てください: https://groups.gogle.com/forum/#!topic/comp.mail.sendmail/UQ5_TeaGd_c "smarttable.m4のLOCAL_NET_CONFIGの代わりにLOCAL_RULE_0を使用して、スマーブルルートメッセージを均等にしますローカル受信者向け。」その後、すべてが機能します
Linux/sendmailでこれを実行したい場合は、スマートテーブルを設定する必要があると思います。詳細はこちら こちら 。