如何让 Exim 接受子域名的邮件?

如何让 Exim 接受子域名的邮件?

我正在尝试将子域名与 Exim 结合使用,但如果我将测试邮件发送到除基本域名之外的任何 fqdn 地址,该邮件就会因中继错误而被退回。我可以使用以下地址发送并登录 Dovecot 和 Exim,例如,[电子邮件保护],但只能从该地址发送邮件。传入邮件仅在主域上有效。

不幸的是,一年前我设置电子邮件服务器时选择了 Debian 多文件配置选项,因此有很多配置文件。如果有相关的特定文件要发布,请告诉我。

我有一个解决方法,但它会从发送地址中完全删除子域名,并且只需要“本地”用户名,而不允许使用完整电子邮件地址的用户名。

我如何让 Exim 允许所有子域?它允许我使用完整电子邮件地址登录,但为什么不识别该地址的存在?

我正在使用 PAM 用户身份验证,为启用电子邮件的用户名提供完整的电子邮件地址。我想也许我在路由中的某个地方配置错误,将域附加在电子邮件地址之上,因为通常 PAM 使用纯用户名,而不是完整的电子邮件地址。但它不在身份验证中。它必须在路由中。另一方面,也许它与此无关。

任何想法都会受到欢迎,因为我的搜索已经找到了一切除了如何让 Exim 接受子域名的邮件。

答案1

如果您直接编辑配置,请MAIN_LOCAL_DOMAINS在配置或模板中的宏中添加通配符。

MAIN_LOCAL_DOMAINS=@:localhost:example.com : *.example.com 

这将设置local_domains用于接受电子邮件。

domainlist local_domains = MAIN_LOCAL_DOMAINS

如果您使用基于 Debian 的配置,请在“update-exim4.conf.conf”中将您的域指定为其他域,如下所示:

dc_other_hostnames='example.com : *.example.com'

如果您想要验证实际的本地子域,可以使用 DNS 查找,而不是通配符。请参阅Exim 规范。相关部分是“文件和数据库查找”和“域、主机、地址和本地部分列表”

对于包括域在内的完整用户名的查找,您不在正常的用户查找范围内。请查看虚拟域的文档以了解此类查找。请参阅“一些常见配置设置”中的规范部分。还有一个很棒的常问问题可用的。

相关内容