How, exactly, do postfix and dovecot communicate when postfix attempts to
determine whether to deliver a message to the dovecot LDA, or to bounce it? In
other words, how does postfix decide to bounce foo, and deliver bar, in these
log messages:
This would be better answered on the postfix mailing list.
Postfix does not communicate with dovecot to know if an address is valid. You
have to configure both Postfix and Dovecot separately to check the same source.
http://www.postfix.org/DATABASE_README.html
where vdomains contains:
[email protected] example.com/test/
[email protected] example.com/test/
@sub.example.com example.com/test/
@example.com example.com/test/
postfix will deliver to [email protected], but not [email protected]. I can't
deliver anything to the subdomain. The interesting thing is that 'bar' already
has a dovecot mailbox (the 'test' mailbox), but 'foo' doesn't.
Because you have to configure both Postfix and Dovecot to look at the same
source and they don't communicate, it is possible you told Postfix that
@example.com is a valid catch-all while neglecting to inform dovecot of the
same. Postfix will accept the mail from the internet, attempt to hand it off to
dovecot which gets rejected by dovecot (not postfix) because dovecot thinks
it's not valid.