[Dovecot] LMTP with virtual and system users
Adrian Zaugg
adi at ente.limmat.ch
Thu Dec 26 13:20:22 EET 2013
Hi Philipp
You can use exim to prepare the address as you wish: only the user name
for pam users and the full address for virtual users.
Configure a new router to strip the domain part for pam users:
local_pam_users:
debug_print = "R: strip domain for local pam users"
driver = redirect
check_local_user
domains = @ : localhost : ${primary_hostname}
data = ${local_part}
redirect_router = local_user
I'm not 100% sure of the domains condition; it should restrict the
router to your domain(s) where your pam users receive their email. The
redirect_router designates the router which routes your local deliveries
to your lmtp transport. Place the new router to run just before your
"local_user" router.
Since your config works for your virtual users, you don't need to do
anything in addition.
Regards, Adrian.
Am 25.12.13 08:16 schrieb Philipp Kolmann:
> Hi,
>
> I have a mailsystem where i have some local users with shell access and
> full home dirs which receive mail and also several SQL virtual users
> only for mail.
> With the virtual users, everything works fine. Mail is delivered via
> LMTP and also sieve works :)
> The SQL Lookup knows what to do with username at domain.com
>
> The problem is the system user. If exim delivers the mail to the lmtp
> socket, the LMTPd can't find username at local.host
> I would be able to specify the global auth_username_format=%n but then
> my SQL queries break and I like the possibility to have xx at domain1.com
> and xx at domain2.com routed to two different accounts.
>
> As I have seen in the source, I can't specify username_format=%n in the
> passdb { driver = pam } backend. Do you have any suggestion how to
> solve this issue?
>
> thanks
> Philipp
>
>
More information about the dovecot
mailing list