On 1/12/11 4:34 PM, Markus Treinen wrote:
Hi,
your point is well taken. The reason for my setup is this:
I wanted to have virtual addresses for all my domains, which are mapped separately to virtual users (meaning Maildirs delivered via dovecot (mainly to use sieve)). Those virtual users would generally be independant from UNIX users on the machine, so no UNIX users would have to be created for virtual delivery.

That's what virtual(8) is for.

However, I wanted mail delivery on the host for UNIX users to still work and be compatible to the existing UNIX mechanisms (/etc/aliases, .forward),

This works by default.

so I also deliver mail for those UNIX users via local(8). Most UNIX users have an alias to a virtual user,

No, that is still assbackwards.

You alias VIRTUAL addresses to REAL users, not the other way around.
The real user already has a real mailbox - why does he need to go through at least 2 extra translation steps ?

but not all. Those not having it (including all UNIX users in use for system daemons) would be delivered to spool files. To avoid that, all those users have to be aliased to virtual users.

You're way overcomplicating things.
As I already indicated, the usual solution is:

    mydestination = mylocalhostname.mydomain

ALL your "real", external domains go in virtual_*_domains.


That said, I don't really need the delivery via local(8) and hence the compatibility with /etc/aliases and .forward, so I could deliver all mail via virtual(8) and disable local(8) altogether. What would be the best approach for that? Setting local_transport = virtual?

Hell no.

As I said above, set mydestination to something that cannot be reached from the outside.


Please, don't top-post in the future.


--
J.

Reply via email to