![删除 Debian wheezy 中发送邮件的本地邮件头](https://linux22.com/image/624138/%E5%88%A0%E9%99%A4%20Debian%20wheezy%20%E4%B8%AD%E5%8F%91%E9%80%81%E9%82%AE%E4%BB%B6%E7%9A%84%E6%9C%AC%E5%9C%B0%E9%82%AE%E4%BB%B6%E5%A4%B4.png)
我已经全新安装了 debian wheezy。我需要删除以下标头:
Received: from www-data by %SERVERNAME% with local (Exim 4.80)
相关的答案没有帮助,因为我只是找不到在哪里配置它:
我尝试执行 /usr/sbin/exim4 -bP received_header_text,它显示了当前 received_header_text 变量值。但我在哪里可以设置它?
我尝试查看 /etc/exim4,但grep -r "received_header_text"
没有结果。我应该在哪里更改 received_header_text 变量值?
答案1
对该选项进行递归 grep 是个好主意。/etc/exim4 中的配置文件是您应该进行所需更改的地方。至于为什么您的 grep 没有找到它,许多 exim 选项都有硬编码的默认值。Debian 配置文件中未设置该选项,因为 Debian 作者不需要更改其默认值。
最终的解决方案就在您链接的答案中,但是这些链接显示了更改的语法:
- http://www.exim.org/exim-html-current/doc/html/spec_html/ch-the_exim_run_time_configuration_file.html#SECTcos
- http://www.exim.org/exim-html-current/doc/html/spec_html/ch-main_configuration.html
至少在 Squeeze 上,这会进入 /etc/exim4/conf.d/main/02_exim4-config_options:received_header_text = blah blah ...
或者hide received_header_text = blah blah ...
如果您不希望非 root 本地用户看到您所做的事情。
但是 Debian 化的文件分解对 exim 来说并不重要;它们只是为了方便管理员。每次启动或重新启动 exim 或手动运行 时,Debian 都会从所有这些单个文件中构建一个大型配置文件update-exim4.conf
。因此,在您进行更改后,请不要忘记重新启动 exim(以重新生成配置文件)。
答案2
我知道这个问题已经有一段时间没有被问到了,但如果我理解正确的话,还有另一种方法可以删除外发邮件中的“已接收”标头。使用该received_header_text
选项是编辑“已接收”标头的好方法,但如果您希望将其从所有外发邮件中删除,那么在“smtp 传输”选项中,您可以使用headers_remove
以下条目:
remote_smtp:
driver = smtp
headers_remove = received
更多内容可阅读Exim 文档 47.17