如何集中管理我的邮件?

如何集中管理我的邮件?

我在大约 20 个不同的服务器上收到大量邮件,我想将它们发送到其中一个。这些服务器运行的是 Linux,现在我的解决方案是创建 TCP 中继。

我希望任何从端口 25 进入的流量都能被转发到不在同一 LAN 上的其他地方。我有一个 Perl 脚本可以大致完成这个任务,但它效率低下,而且可能会崩溃。我宁愿找到一种方法来使用iptables/防火墙是否有这样的方法。我认为有,但我没有足够的技术能力去理解它。

答案1

也许没有必要为邮件设置 20 台服务器?您只需在中央服务器上设置 MTA(邮件传输代理)以接受您感兴趣的域的邮件,并为每个域设置 DNS,以便 MX 记录指向中央服务器。

如果这不可能,请让您的服务器充当邮件网关并将邮件转发到中央服务器。这将解决效率和可靠性问题。如何做到这一点取决于您选择的 MTA。当然,您仍然需要配置中央服务器以接受所有域的邮件。

如果你真的想尝试使用 iptables(不推荐),那么你可以这样做:

iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 25 -j DNAT --to 192.168.1.50:25
iptables -A INPUT -p tcp -m state --state NEW --dport 25 -i eth1 -j ACCEPT

答案2

我建议在网络堆栈的更高层上解决这个问题。与其转发端口,不如在每个主机上运行一个简单的 SMTP 服务器,将所有信息集中到中央服务器。

根据您的需要,您可以使用:

  • 后缀
  • 韋斯特
  • 邮件系统
  • ...

答案3

也许您可以解决 DNS 中的问题。

只需将这 20 台服务器的 MX 记录指向您要使用的一台服务器即可。

答案4

如果您的机器已经在运行 SMTP 服务器,为什么不在每台机器上设置一个别名来指向您的中央邮件服务器呢?

相关内容