tha*_*smo 5 email postfix smtp-headers
我正在设置一个本地开发虚拟机,并且能够使用条目将所有发送的电子邮件重定向到本地邮箱。virtual_alias_maps/.*/ username
我想添加的是一个选项,如果电子邮件包含特定标题,则不将电子邮件重定向到本地邮箱。
或者换句话说;如果在外发电子邮件中找到某个标题,则发送它,但如果标题丢失,则应将其重定向到本地邮箱。
我如何才能使用 Postfix 实现这一目标?
非常感谢你的帮助!
首先,我们在 中定义两个 smtpd 进程master.cf,一个启用重写,另一个禁用重写。master.cf 中默认存在启用重写的 SMTPD。现在我们将这些行
127.0.0.1:2525 inet n - n - 2000 smtpd
-o receive_override_options=no_header_body_checks,no_address_mappings
Run Code Online (Sandbox Code Playgroud)
这将启用另一个 smtpd 进程
这是您的请求的伪代码
if header exist (postfix will checks via header_cheks)
no rewrite
else
rewrite with virtual_alias_maps
Run Code Online (Sandbox Code Playgroud)
我们将使用header_checks来实现该逻辑。
添加这一行main.cf
header_checks = regexp:/etc/postfix/mycustomheader
Run Code Online (Sandbox Code Playgroud)
内容/etc/postfix/mycustomheader
/^X-Your-Header/ FILTER smtp:[127.0.0.1]:2525
Run Code Online (Sandbox Code Playgroud)
每当 postfix 检测到邮件中的X-Your-Header时,它就会将电子邮件重定向到我们之前定义的第二个 smtpd 进程。如果标头不存在,您的电子邮件将通过默认的 smtpd 进程并启用重写。
| 归档时间: |
|
| 查看次数: |
1853 次 |
| 最近记录: |