我有一个运行postfix和dovecot的服务器,在本地接受四个域(使用virtual_mailbox_domains和virtual_mailbox_maps )的电子邮件,并将电子邮件转发到另外六个域的其他位置(使用virtual_alias_domains和virtual_alias_maps )。
我也有二十多个电子邮件地址被拒绝(使用check_recipient_access )。
其中两个域名使用catchall电子邮件地址,其余只接受所需的邮政局长,网站pipe理员和滥用。
在我的configuration中的某处,我有一个错误,因为一些本地地址的邮件被传送到错误的本地电子邮件帐户,一些应该被拒绝的邮件正在交付。
我无法find的是一个实用工具,根据我的configuration文件,在给定电子邮件地址的情况下,打印出电子邮件应发送到的地方或转发的地方。
有一个存在吗?
postmap -q是用来testing地图的正确工具,但有一些限制:
access(5)或virtual(5)指定的优先顺序尝试密钥。 要testing端到端重写,请使用sendmail -bv ,它会生成包含地址重写和路由详细信息的报告并发送电子邮件。 当然,这是sendmail命令行界面的一部分,因此不会模拟smtpd明确执行的重写操作,例如访问映射中的FILTER或REDIRECT操作。
postmap是你的朋友!
用法示例:
postmap -q [email protected] hash:/etc/postfix/virtual postmap -q [email protected] ldap:/etc/postfix/virtual.cf