On Thu, Apr 22, 2010 at 11:18:09AM +0200, Rainer Frey wrote:
What I don't see here at all (and neither in your Wiki Howto) is how Postfix determines the valid recipients for the domains in virtual_mailbox_domains.
Postfix will expand possible aliases first and determine the final recipient handing over to Dovecot:
virtual_alias_maps = hash:/etc/postfix/virtual
It will query the recipients by connecting to the socket in its chroot provided by Dovecot:
service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } user = doveauth }
Once it has the homedir it will send it off via LMTP or deliver, whichever you configured via:
virtual_transport = lmtp:unix:private/dovecot-lmtp or
virtual_transport = dovecot
The correct parameter would be virtual_mailbox_maps, but AFAIK there is no lookup table that read the passwd format from an arbitrary file. So a script that generates a hash/whatever postfix lookup file from the passwd-files would still be necessary.
There is no such thing as a correct parameter from my perspective. I did not say that alias creation was to be unified/automated. Instead I said I did not even think this is good practice to me. Anyone with at least a bit of sed/awk knowledge can kludge it from the flat-files anyway.
Or do you use recipient validation via LMTP? (I didn't notice a reject_unverified_recipient though) This at least won't work with deliver, I'm not even sure about LMTP.
This is not required in the example and optional at least:
http://www.postfix.org/ADDRESS_VERIFICATION_README.html
Consider that verification is done differently in the example based on the fact whether the mail is received on Port 25 or injected via the submission port, completely handled in 'master.cf'. So it has a diverse set of restrictions.
Regards Thomas