web-dev-qa-db-ja.com

特定のIPアドレスのpostfix仮想ドメイン

現在、単一ドメイン(example.com)でpostfixを実行しており、そのための適切なPTRレコードがあります。

ここで、もう1つのドメインを追加したいのですが、そのドメインを完全に分離したいのですが、PTRレコードも分離したいのです。そのため、同じサーバーに新しいpublic IPアドレスを追加し、abc.comPTRエントリを追加しました。

  1. example.com-1.1.1.1
  2. abc.com-2.2.2.2

Postfix run example.com on 1.1.1.1 ip address and abc.com on 2.2.2.2をどのように伝えるか

したがって、外部から誰かが25ポートでtelnetを実行しようとすると、関連するIPに適切な異なるドメインを取得します。

$ telnet mail.example.com 25
Trying ::1...
Connected to mail.example.com.
Escape character is '^]'.
220 mail.example.com ESMTP Postfix

そしてabc.comの場合

$telnet mail.abc.com 25
Trying ::1...
Connected to mail.abc.com.
Escape character is '^]'.
220 mail.abc.com ESMTP Postfix
3
Satish

以下は、2.7以上の接尾辞で機能するはずです。

/etc/postfix/master.cfを変更し、行smtp inet n - n - - smtpdを次のように変更する必要があります。

domain1 unix -       -       n       -       -       smtp
      -o syslog_name=postfix-mail.example.com
      -o smtp_helo_name=mail.example.com
      -o smtp_bind_address=1.1.1.1

domain2 unix -       -       n       -       -       smtp
      -o syslog_name=postfix-mail.abc.com     
      -o smtp_helo_name=mail.abc.com
      -o smtp_bind_address=2.2.2.2
#...

次に、/etc/posfix/main.cfで、古いトランスポートマップ(存在する場合)を削除する必要があります。その後、例としてsender_dependent_default_transport_mapsを追加します。

sender_dependent_default_transport_maps = hash:/etc/postfix/sender_transport

/etc/postfix/sender_transportに以下を追加する必要があります。

@example.com    domain1:
@abc.com    domain2:
#...

次に、次のコマンドを使用して、sender_transportファイルからハッシュデータベースを作成する必要があります。

postmap hash:/etc/postfix/sender_transport

Postfixを再起動して、変更を取得します。

トランスポートマップをデータベースに移動して、ドメインなどのテーブルを作成することもできます。これは基本的な設定ですが、いくつかのアイデアが得られるはずです。

4
b13n1u