这是我必须发送邮件的项目的一部分......
我有一台带域名的邮件服务器abc.com
。如何允许该邮件服务器接收来自其他域名的邮件cde.com
?
我如何将所有邮件转发给用户root
?
对于第一个问题,我认为我需要在开放中继中配置邮件服务器。
使用 postfix,默认配置是开放中继...对吗?
答案1
不可以。由于默认 Postfix 未配置为开放中继,因此它只接受本地邮件。
而且你不想将其配置为开放中继几天后,一些垃圾邮件发送者就会发现它并开始使用它。结果:
- 您的计算机将会因发送数千封电子邮件而变得十分困难。
- 您的服务器将在几天内被世界上大多数其他邮件服务器封锁。包括所有主要的邮件服务器(gmail、yahoo、hotmail、mines ;))。
因此,您将无法发送邮件,并且对我们其他人来说,互联网状况也会变得更糟。
如果你希望能够从某些 IP 发送邮件而无需身份验证,则需要设置(或添加)此选项/etc/postfix/main.cf
mynetworks = 127.0.0.0/8, 192.168.1.0/24
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
当然,定义 mynetwork 的 IP 应该更改为适合您的 IP。
答案2
主邮件绝不应该发送到 root 帐户。通常,root 会有一个别名,用于/etc/aliases
将电子邮件发送到另一个帐户。如果您需要合并的帐户数量有限,最简单的方法是将条目添加到/etc/aliases
。如果需要,可以将其配置为将电子邮件发送到另一台服务器上的地址。
要发送电子邮件,请将您的邮件服务器配置为使用智能主机。我通常建议使用您的 ISP 中继服务器。如果您的所有邮件都将发送到一个域,您可能能够使用该域的 MX(邮件交换)作为您的智能主机。您可以通过查看/var/log/mail.log
(或 postfix 记录其消息的任何地方)来验证交付情况。
如果您想可靠地将电子邮件直接发送到互联网,请获取静态地址。请参阅电子邮件传递管理投诉寻求一些指导。
可靠的邮件传递需要静态 IP 地址。有些程序可以从另一台服务器获取邮件,例如 fetchmail,当邮件传递到另一台服务器时,这些程序可以很好地工作。
如果您的邮件服务器是 abc.com 的 MX,它将能够接受其域的邮件,而无需开放中继。配置开放中继并不是一个好主意。
我建议您使用像mail.abc.com
或 这样的名称www.abc.com
作为邮件服务器,而不是abc.com
。它将能够为 发送邮件。如果要这样做,abc.com
最好将其配置为。合法邮件服务器很少使用二级域名。MX
abc.com
答案3
我觉得提取邮件是您从其他域获取邮件所需要的,并且它会将这些邮件传递给您想要的任何本地用户。