Networking
如何使用 amavis 從其他郵件伺服器掃描郵件
我有兩個 postfix 郵件伺服器
- mailserver1 正在執行 amavis 以掃描垃圾郵件和病毒郵件
- mailserver2 在沒有 amavis 的情況下執行。
我的問題是如何使用 mailserver1 和 mailserver1 中的 amavis 掃描來自 mailserver2 的郵件的最聰明的方法。
我已經在 mailserver1 上配置了 postfix 以將郵件轉發到 amavis,這工作正常,但如果可能的話,我想將郵件從 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 或IP 地址。因此,不能指定某些 IP 地址,但不能指定全部。預設值為 127.0.0.1,這意味著 amavis 僅在 localhost 上偵聽。如果您通過將 amavisd 綁定到公共 IP 地址來公開 amavisd,請不要忘記設置 ACL,這樣您就不允許自由訪問 amavisd SMTP 埠。為此,請使用參數
@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)