私は2つのpostfixメールサーバーを持っています
私の質問は、mailserver1からmailserver1をそれぞれamavisを使用して、mailserver2からメールをスキャンする最も賢い方法です。
メールをamavisに転送するようにmailserver1でpostfixを設定済みで、これは問題なく機能しますが、可能であれば、mailserver2からamavisに直接メールを転送したいと思います。外部ポートもリッスンするようにamavisを指定する方法を誰かが知っていますか。 amavisの私の構成はすでに次のようになっています:
#where can i specify the ip address and the networks for which amavis is listening??
$inet_socket_port = [10024,10028]; # default listening socket
#incoming mail from server1
$interface_policy{'10024'} = 'S1';
#incoming mail from server2 forewarded by server1
$interface_policy{'10028'} = 'S2';
$policy_bank{'S1'} = {
#send back to postfix on local server1
notify_method => 'smtp:[127.0.0.1]:10026',
forward_method => 'smtp:[127.0.0.1]:10026',
};
$policy_bank{'S2'} = {
#send to postfix on other server2
notify_method => 'smtp:[192.168.1.2]:10029',
forward_method => 'smtp:[192.168.1.2]:10029',
};
したがって、mailserver2からamavisを使用してダイレクトメールを受信し、それらを送り返すことができるように、この構成に何を追加する必要がありますか。
Amavisdは、パラメーター$inet_socket_bind
どのバインディングIPアドレスを指定するか を使用します。可能な値は、undefまたはanIPアドレスです。したがって、 一部のIPアドレスを指定することはできません がすべてではありません。 デフォルト値は127.0.0.1 、つまりamavisはローカルホストでのみリッスンします。
AmavisdをパブリックIPアドレスにバインドして公開する場合は、ACLを設定することを忘れないでください。これにより、amavisdSMTPポートへの無料アクセスが許可されなくなります。これを行うには、パラメータ@inet_acl
を使用します。例えば:
@inet_acl = qw(127.0.0.1 [::1] 192.168.1.2); # this will allow connection only from 127.0.0.1 or [::1] or 192.168.1.2)
古いスレッドですが、注意してください。メールを送信元のIPに戻すには、「*」を使用します。したがって、OPの2つのポリシーバンクを1つのディレクティブに置き換えることができます
$ forward_method = 'smtp:*:10026';
テスト済みで、動作します。