我在我的ubuntu vps中使用Postfix,我有2个IP可用。 我希望我的后缀可以访问我的其他ips,并随意使用它们。
我怎样才能做到这一点?
例如:主IP:66.66.66.66其他IP:66.66.66.67秒ip:66.66.66.68
通过configuration接口绑定: postconf -e "inet_interfaces = all
见man postconf
inet_interfaces(默认值:全部)此邮件系统接收邮件的networking接口地址。 指定“全部”在所有networking接口(默认)上接收邮件,并且仅在回送networking接口上接收邮件(仅限于回送)(Postfix版本2.2和更高版本)。 该参数还控制邮件传递给用户@ [ip.address]。
注1:当这个参数改变时,你需要停止并启动Postfix。
注2:地址信息可以用[]括起来,但这里不需要这种forms。
当inet_interfaces仅指定一个不是回送地址的IPv4和/或IPv6地址时,Postfix SMTP客户端将使用此地址作为出站邮件的IP源地址。 Postfix 2.2及更高版本支持IPv6。
在具有独立Postfix实例的多宿主防火墙上,侦听“内部”和“外部”接口,这可以防止每个实例能够到达防火墙“另一侧”的远程SMTP服务器。 将smtp_bind_address设置为0.0.0.0可避免IPv4的潜在问题,并将smtp_bind_address6设置为:解决了IPv6的问题。
多宿主防火墙的一个更好的解决scheme是将inet_interfaces保留为默认值,而在master.cf SMTP服务器定义中使用明确的IP地址。 这通过确保防火墙的每一侧知道其他IP地址仍然是相同的主机来保留Postfix SMTP客户端的环路检测。 当每个IP地址服务于不同的域(并且具有不同的$ myhostname设置)时,将$ inet_interfaces设置为单独的IPv4和/或IPV6地址主要用于辅助IP地址上的域的虚拟托pipe。
对于通过代理或地址转换器转发到Postfix的networking地址,另请参阅proxy_interfaces参数。
例子:
inet_interfaces = all (DEFAULT) inet_interfaces = loopback-only (Postfix version 2.2 and later) inet_interfaces = 127.0.0.1 inet_interfaces = 127.0.0.1, [::1] (Postfix version 2.2 and later) inet_interfaces = 192.168.1.2, 127.0.0.1
postconf -e是一个实用程序来维护后缀configuration。
-e编辑main.cfconfiguration文件,并使用postconf(1)命令行中的“name = value”对更新参数设置。 该文件被复制到一个临时文件,然后重新命名到位。 指定引号以保护postconf(1)命令行中的特殊字符和空格。
任何configuration更改都需要重新识别postfix。
这是来自/etc/postfix/main.cf的configuration博客,它应该适用于机器上的所有接口。
myhostname = my_machine_name alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases mydestination = my_machine_name, localhost.localdomain, localhost relayhost = mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all inet_protocols = ipv4
如果你在Ubuntu中,你可以运行以下命令来通过向导重新configurationPostfix:
sudo dpkg-reconfigure postfix
为什么这些解决scheme不适合你?
编辑:在你的机器上运行ifconfig ,并检查连接到该机器上的每个接口的inet addr 。 如果你没有看到66.66.66.66或66.66.66.67那么你的机器就看不到这两个地址,所以后缀configuration是没有意义的。