我有一台处理多个虚拟域的机器。其中一些包括为这些特定域定义的别名(域名将从真实名称更改)。
例如我有:
$ cat /etc/exim4/virtual/alias.domain.com
hibak: "|/usr/local/bin/mail2redmine.sh blah"
并且,当然alias.domain.com
包含在dc_other_hostnames
中/etc/exim4/update-exim4.conf.conf
。
它在 debian jessie 上运行良好,但升级到 stretch 后,虚拟主机名停止工作。给他们发一封信会在拒绝日志中创建这样的条目:
2018-02-19 17:03:21 H=from.host [REDACTED] F=<REDACTED> rejected RCPT <[email protected]>: Unrouteable address
exim -bt [email protected]
返回
R: system_aliases for [email protected]
[email protected] is undeliverable: Unrouteable address
答案1
我发现了 exim 的出色调试模式(exim -d -bt foo@bar
),从而能够比较具有虚拟域的 debian jessie 和 debian stretch 系统中发生的情况。
主要区别似乎是vdom_aliases
缺少路由器/etc/exim4/exim4.conf.template
,它在升级过程中未经提示就更新了,因为我之前根本没有修改过它。我vdom_aliases
从中复制了路由器的部分exim4.conf.template.dpkg-old
,它开始工作了。