[Dovecot] migrating from specialized qpopper
I'm hoping to migrate to dovecot from qpopper, with the eventual goal of enabling IMAP. However, my qpopper installation is fairly specialized, so I thought I'd ask here to see if anyone could get me headed down the best path.
Here's the situation.
I'm running FreeBSD and have a virtual domains setup with an extremely
hacked LDA to do delivery to mailboxes within hashed directories under
each virtual domain. Each domain also has a separate password file.
This is NOT any virtual domain setup that you'd be familiar with, as it
is an in-house creation that is about 9 years old now.
I have 8000 users utilizing mailboxes on these domains, so having them reconfigure to use realms/domains in their login isn't really an option.
With qpopper, we run it from inetd and use hosts.allow to call each instance with special information about the password file location, etc, like this:
popper: ALL : twist (/pathto/bin/popper -d -s -T 300 -h %H -p /pathto/www.%H/passwd -x /pathto/www.%H/spool)
This allows us to insert the domain (%H) based on what hostname the user is connecting to and change parameters based on that.
Would their be any easy way to do this with dovecot?
Thanks in advance for your help.
Mark
A bit late reply, but:
On Wed, 2008-08-13 at 16:13 -0700, Cruzio Research wrote:
With qpopper, we run it from inetd and use hosts.allow to call each instance with special information about the password file location, etc, like this:
popper: ALL : twist (/pathto/bin/popper -d -s -T 300 -h %H -p /pathto/www.%H/passwd -x /pathto/www.%H/spool)
This allows us to insert the domain (%H) based on what hostname the user is connecting to and change parameters based on that.
Would their be any easy way to do this with dovecot?
I'd suggest a checkpassword script. Or I guess the only problem is that Dovecot doesn't do a reverse lookup to the local IP address. You could already use:
passdb passwd-file { args = /pathto/www.%L/passwd }
But %L expands to IP address, not the host name. Wouldn't be too difficult to create a new variable for that though.
participants (2)
-
Cruzio Research
-
Timo Sirainen