我正在寻找一种方法来在 exim4(debian 8 设置)中向所有外发电子邮件添加标题。
我尝试过基于 headers_add 的不同方法,但我想我的主要问题是把这个规则放在哪里(配置被分成 conf.d 中的许多文件)。
对我来说,exim 的在线文档对这一点的说明并不太清楚。
问候
答案1
我最近也遇到了同样的问题,经过一番搜索,我什么也没找到。这是我的解决方案,似乎有效,但仅限于我的设置,因此,请检查您的 exim 实际上是如何传递邮件的。
我们使用的是 Smarthost(Mailgun),并且 Exim 是通过 GUI 配置的。这样可以生成您所看到的拆分配置文件。请注意可以要求 Exim 在这里合并文件,但是我们正在使用其他软件,它也会修改标准 Exim 配置,因此我们需要拆分方法。
然后我手动编辑了/etc/exim4/conf.d/transport/30_exim4-config_remote_smtp_smarthost
,我相信这是通过智能主机发送外发邮件时使用的实际传输方式。这是我的版本现在的样子:
remote_smtp_smarthost:
debug_print = "T: remote_smtp_smarthost for $local_part@$domain"
driver = smtp
headers_add = "X-Mailgun-Drop-Message: true"
hosts_try_auth = <; ${if exists{CONFDIR/passwd.client} \
{\
${lookup{$host}nwildlsearch{CONFDIR/passwd.client}{$host_address}}\
}\
{} \
}
.ifdef REMOTE_SMTP_SMARTHOST_HOSTS_AVOID_TLS
hosts_avoid_tls = REMOTE_SMTP_SMARTHOST_HOSTS_AVOID_TLS
.endif
.ifdef REMOTE_SMTP_HEADERS_REWRITE
headers_rewrite = REMOTE_SMTP_HEADERS_REWRITE
.endif
.ifdef REMOTE_SMTP_RETURN_PATH
return_path = REMOTE_SMTP_RETURN_PATH
.endif
.ifdef REMOTE_SMTP_HELO_DATA
helo_data=REMOTE_SMTP_HELO_DATA
.endif
.ifdef TLS_DH_MIN_BITS
tls_dh_min_bits = TLS_DH_MIN_BITS
.endif
我headers_add
在第 4 行添加了参数 - 这是一个测试服务器,所以我希望 Mailgun 删除所有出站邮件,这是通过 SMTP 执行此操作的方法。
我是谁不是100% 确定的是,这对于更新和重新配置来说是多么的强大。我即将发布一个与此相关的问题,并将链接到此问题。