web-dev-qa-db-ja.com

メールをリレーするためのメールサーバーの構成

これは私がメールを送らなければならないプロジェクトの一部です...

ドメインabc.comのメールサーバーがあります。そのメールサーバーが別のドメインcde.comからメールを受信できるようにするにはどうすればよいですか?

また、すべてのメールをrootユーザーに転送するにはどうすればよいですか?

最初の質問については、オープンリレーで構成されたメールサーバーが必要だと思います。
postfixを使用した場合、デフォルトの設定はオープンリレー用です...

3
Vinod K

いいえ。デフォルトのpostfixはオープンリレーとして設定されていないため、ローカルメールのみを受け入れます。

そして、あなたはそれを Open Relay として設定したくありません。数日中に、一部のスパマーがそれを見つけて使用を開始します。結果として:

  • お使いのコンピューターは、数千のメールを送信して動きが取れなくなります。
  • サーバーは、数日中に世界中の他のほとんどのメールサーバーによってブロックされます。すべての主要なもの(gmail、yahoo、hotmail、mines)を含む)。

したがって、メールを送信することはできず、インターネットは私たちの残りの部分にとって少し悪くなります。

認証なしで一部のIPからメールを送信できるようにするには、/etc/postfix/main.cfでこのオプションを設定(または追加)する必要があります

mynetworks = 127.0.0.0/8, 192.168.1.0/24
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination

もちろん、mynetworkを定義するIPは、自分に合ったものに変更する必要があります。

6
Javier Rivera

メインは決してルートアカウントに配信しないでください。通常、電子メールを別のアカウントに配信するために、/etc/aliasesにルートのエイリアスがあります。統合する必要があるアカウントの数が限られている場合、最も簡単な方法は、/etc/aliasesにエントリを追加することです。必要に応じて、別のサーバーのアドレスに電子メールを送信するように構成できます。

電子メールを送信するには、スマートホストを使用するようにメールサーバーを設定します。通常、ISPのリレーサーバーを使用することをお勧めします。すべてのメールが1つのドメインに送信される場合、そのドメインのMX(メール交換)をスマートホストとして使用できる場合があります。 /var/log/mail.log(またはpostfixがメッセージをログする場所)を見ると配信を確認できます。

インターネットに直接確実にメールを送信したい場合は、静的アドレスを取得します。 メール配信管理の苦情 を参照してください。

信頼性の高い受信メール配信には、静的IPアドレスが必要です。 fetchmailなど、別のサーバーからメールを取得するプログラムは、メールが別のサーバーに配信されるときに機能します。

メールサーバーがabc.comのMXである場合、オープンリレーにならずにドメインのメールを受け入れることができます。オープンリレーを構成することはお勧めできません。

メールサーバーには、mail.abc.comではなく、www.abc.comまたはabc.comなどの名前を使用することをお勧めします。 abc.com宛のメールを送信できます。 abc.comの場合は、MXとして構成することをお勧めします。正当なメールサーバーがセカンドレベルドメインを使用することはほとんどありません。

1
BillThor

fetchmail は他のドメインからメールを取得するために必要なものだと思いますし、あなたが望むどんなローカルユーザーにもそれを渡します。

0
Skizz