![Postfix:通过 ldap 查询修改电子邮件地址](https://linux22.com/image/697258/Postfix%EF%BC%9A%E9%80%9A%E8%BF%87%20ldap%20%E6%9F%A5%E8%AF%A2%E4%BF%AE%E6%94%B9%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E5%9C%B0%E5%9D%80.png)
我们查询 LDAP 以识别 Postfix 服务器上的别名和用户。
由于公司原因,部分电子邮箱地址格式为“SMTP:[电子邮件保护]“。要将邮件转发给该用户,我们需要删除其前面的“SMTP:”。
一种解决方案可能是使用正则表达式,但是我们已经使用了 ldap 模块,并且我找不到如何同时使用两者,例如查询 ldap 并使用正则表达式修改结果。
如何才能做到这一点?
答案1
您只需在重写规则中使用正则表达式即可。例如:
virtual_alias_maps =
ldap:/etc/postfix/your-ldap-aliases.cf
regexp:/etc/postfix/myrewrites
并设置 /etc/postfix/myrewrites :
/^SMTP:(.*)$/ ${1}
或类似的东西。
Postfix 将像在 /etc/aliases 中一样重写您的重写地址(考虑 postmaster:root 然后是 root:[电子邮件保护])。