
雇用主からメールアドレスをもらいました[email protected]
。雇用主の送信メールサーバーは、そのネットワーク内からの接続のみを許可しています(ISP が SMTP サーバーを使用するために、ISP 経由で接続することを要求するのと似ています)。そのため、昼食のためにカフェに出て、上司からのメールが携帯電話に届いた場合、オフィスに戻るまで返信できません。また、旅行中や現場で働いているときは、仕事のメールに返信できません。
メインのメール サーバーを再設定することはできませんが、自分で制御できる小さな Postfix サーバーを別に持っています。そこにいくつかの仮想ドメインを設定して、myemployersdomain.com
追加の仮想ドメインとして、[email protected]
仮想ユーザーとして追加しました。これは機能し、このサーバーを介して、myemployersdomain.com の他のユーザー (これが私が本当に望んでいることです) を除く世界中のどこにでもメールを送信できます。
送信しようとすると[メールアドレス]私は
NOQUEUE: 拒否: RCPT from... 550 5.1.1 ... 受信者アドレスが拒否されました: 仮想メールボックス テーブル内のユーザーが不明です
Postfixサーバーはmyemployersdomain.com全体を制御していると考えており、このドメインの受信者に仮想ユーザーを設定しないと許可されません。仮想ファイルにキャッチオールエイリアスを設定することで、エラーを解消できます。
@myemployersdomain.com [email protected]
もちろん、私が送信したメールはすべて私に直接返ってきます。
次のように、myemployersdomain.com 宛のすべてのメールを Gmail 経由で中継するようにトランスポート ファイルを設定してみました。
example.com :
myemployersdomain.com smtp:[smtp.gmail.com]:587
しかし、違いはありません。(他の (外部) ドメインの受信者アドレスに対してはリレーは期待どおりに機能しますが、この仮想ドメインの場合、Postfix はここまで到達することを許可しません - 5.1.1 エラーが最初に発生します。)
ローカルに定義された仮想ドメイン宛てのメールを広大なインターネットに送信し、DNS に処理させるように Postfix を設定することは可能ですか?
答え1
セカンダリ マシンをバックアップ サーバーとして設定する場合は、いくつかの設定が必要になります。
relay_domains= myemployersdomain.com
次のようにも使用しますtransport_maps
:
myemployersdomain.com relay:[the.actual.server]
relay_recipient_maps
次に、(Falcon が言うように)ワイルドカード エントリ、または自分と上司のエントリのいずれかが必要になります。
次に、TLS 暗号化 SASL 認証を設定し、認証したユーザーのみが送信できるようにします。
smtpd_relay_restrictions = permit_sasl_authenticated, reject
`
答え2
電子メール アドレスのドメイン部分の重要な点は、ドメイン全体のメールの配信を担当する SMTP サーバーのセットを示すことです。言い換えると、そのようにドメインを細分化することはできません。
しかし、あなたが本当にやりたいことは(ポリシーを回避すること以外に、理論的には興味深い質問なので、とにかく答えます)リレー郵便。
その場合は、受信したメールをすべて中継するようにします。ユーザーが認証されている限りローカル ドメインをまったく持たないように設定できると思います。結局のところ、リレー MTA にメールの配信を受け入れさせたくないので、同じアドレスの受信トレイが 2 つある状態になるのは望ましくないと思います。そうなると混乱するだけです。
すべてをリレーするように指示すると、宛先ドメインの MX レコードにあるものすべてに送信されます。これが必要な動作だと思います。
これは、ローカル ドメインを設定しないことによって最もよく実現されます。この設定は、たとえば、ウイルスやスパムのフィルタリングに使用されるリレー MTA では一般的です。
と呼ばれる機能があったことは覚えていますrelay_recipient_maps
が、このユースケースではそれが適切なアプローチではないと思います。