我在 Debian 上运行着 exim 4.84_2,几周以来我收到来自 anacron 的以下邮件:
/etc/cron.daily/exim4-base:
LOG: MAIN
Warning: purging the environment.
Suggested action: use keep_environment.
我已将以下行添加到/etc/exim4/exim4.conf.template
:
keep_environment =
但运行时update-exim4.conf
出现以下错误:
2016-05-17 00:20:00 Exim configuration error in line 900 of /var/lib/exim4/config.autogenerated.tmp:
option "keep_environment" unknown
有任何想法吗?
答案1
在 Debian 上你可以设置宏
MAIN_KEEP_ENVIRONMENT =
在 /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs 中或在您设置宏的任何地方。请参阅:/usr/share/doc/exim4/changelog.Debian.gz
答案2
请注意 exim4.conf.template 和 /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs 中的注释:
# /etc/exim4/exim4.conf.template is only used with the non-split
# configuration scheme.
# /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs is only used
# with the split configuration scheme.
换句话说,要编辑的文件可能会根据您是否使用拆分配置文件而有所不同。
我按照下面链接中的配置示例进行操作并且成功了:
答案3
如果你得到option "keep_environment" unknown
,那么很可能你exim
没有一定的安全修复。
已修复此问题4.86.2
。但也已移植到4.84.2
。两者均杰西和拉紧有它。它会根据keep_environment
、add_environment
选项清理环境。如果keep_environment
未设置,它会记录警告并建议添加它。由于exim
可能需要以保留某些环境变量的方式进行配置。在 Debian 上,使用默认配置的情况并非如此。因此在 Debian 上,通常可以将其设置为空值。
在一些观点选择是添加到配置(4.87--RC6-3
)。但它是在 Debian Stretch 中。这不太可能被反向指向 Jessie,因为它不是安全问题。
因此,更新exim
。然后,如果您正在运行 Jessie,请添加到/etc/exim4/exim4.conf.localmacros
:
keep_environment =
和:
update-exim4.conf
systemctl reload exim4