我使用 Postfix 和虚拟邮箱以及 Maildrop 作为传输代理。我所有的电子邮件都发送到文件夹/home/vmail/domain.tld/user/
。今天我注意到发送到不存在地址的电子邮件被发送到文件/home/vmail/domain.tld/user
。我宁愿让服务器拒绝它们并向发件人发送错误消息。
/etc/postfix/maildroprc
我认为它对包含规则的文件负责DEFAULT="/home/vmail/$1/$2"
文件/etc/postfix/main.cfg
virtual_mailbox_base = /home/vmail
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_alias_maps = hash:/etc/postfix/virtual
virtual_transport = maildrop
maildrop_destination_recipient_limit = 1
规则/etc/postfix/master.cfg
maildrop unix - n n - - pipe
flags=ODRhu user=vmail argv=/usr/bin/maildrop /etc/postfix/maildroprc ${domain} ${user} ${extension} ${recipient} ${user} ${nexthop}
知道如何指定有效电子邮件列表吗?所有电子邮件地址(除 中的重定向外virtual
)都列在vmailbox
数据库中,但似乎没有使用它。
答案1
http://www.postfix.org/LOCAL_RECIPIENT_README.html
您必须正确设置local_recipient_maps
。main.cf
这取决于您如何管理用户(系统用户、mysql 等)。
它可能类似于local_recipient_maps = mysql:/etc/postfix/sql-recipients.cf
mysql。