![配置 sendmail 仅发送到本地域](https://linux22.com/image/574418/%E9%85%8D%E7%BD%AE%20sendmail%20%E4%BB%85%E5%8F%91%E9%80%81%E5%88%B0%E6%9C%AC%E5%9C%B0%E5%9F%9F.png)
我想知道如何配置 sendmail 以仅向一个域发送电子邮件。
我有一台开发服务器,数据库中可能有客户电子邮件地址,因为数据会不时从生产服务器复制。我想确保开发机(Redhat 5.3)不会向外部发送任何邮件,但会发送给我的本地用户。为了便于讨论,我的域名是 example.com,sendmail 当前设置为将邮件转发到我们的 SBS2008 交换服务器。
到目前为止我还没能找到如何做到这一点。
答案1
尝试将其添加到您的发送邮件:
LOCAL_RULE_0
R$* < $=w . > $* $#OK
R$* < $*. > $* $: user < @ example.com. > $3
这将修改规则集 0(选择电子邮件路由方式的规则集),如下所示:如果这是本地邮件地址(域部分包含在 $=w 中),则照常进行。否则,将每个外部地址的电子邮件发送到[电子邮件保护]。
在 sendmail.mc 中添加上述代码片段时,请注意不要复制粘贴规则,而是键入规则。规则的两侧没有空格分隔。它们由制表符分隔(至少一个;两个或多个没有区别)。
编辑后发送邮件你必须生产发送邮件配置文件然后重启 sendmail。我不知道在你的发行版中如何完成这个操作。在 Debian 中我运行发送邮件配置。