我有服务器A只有一个IP地址和一个虚拟的FQDN(在所有的机器应该有一个FQDN的基础上):pants.net.invalid。 所有邮件都通过其他服务器转发,这工作正常。
在服务器A上,Postfix用smtp_generic_maps = hash:/etc/postfix/generic重写发件人地址。 根据http://www.postfix.org/ADDRESS_REWRITING_README.html#remote上的重写手册,这应该重写所有外发邮件的发件人地址:
$ cat /etc/postfix/generic @pants.net.invalid [email protected]
但事实并非如此。 postmap -q [email protected]返回任何内容。
这工作:
[email protected] [email protected]
看起来好像它正在做正则expression式匹配,即使我指定types的hash: 。 显然我误解了手册。
我不想使用正则expression式或pcreexpression式,因为只有几个用户(root和另外两个),我不想要这些开销。
我可以确切地指定用户,它的工作原理。 但是,我想知道我对未来的误解。
谢谢。
有用。 根据手册http://www.postfix.org/generic.5.html
但是你的postmap命令有问题。 它应该是:
postmap -q [email protected] hash:/etc/postfix/generic