Re: [Exim] Exim 4.x + Cyrus 2.1.x == Mess :)

Top Page
Delete this message
Reply to this message
Author: Matt Bernstein
Date:  
To: Matt Sealey
CC: exim-users
Subject: Re: [Exim] Exim 4.x + Cyrus 2.1.x == Mess :)
I am still hoping to write a mini-howto for this kind of setup, but time
doesn't permit at present :-/

At 22:22 +0100 Matt Sealey wrote:

>Does anyone know of any foolproof guides on how to configure Exim 4 and
>Cyrus 2.1.x so that they work in harmony?


Foolproof? I don't know, but I have a working set-up :)

>* Get Exim to deliver to Cyrus (any old how)


You need to use LMTP over (in I guess increasing order of efficiency):

1. a pipe:

local_delivery:
driver = pipe
command = "/usr/cyrus/bin/deliver -l"
user = cyrus

2. TCP:

local_delivery:
driver = smtp
protocol = lmtp
allow_localhost
hosts = localhost

3. a socket (I have a patch for Exim to do this--please test it--at
http://www.dcs.qmul.ac.uk/~mb/exim-patches/lmtp-socket.diff):

local_delivery:
driver = lmtp
socket = /var/lib/cyrus/lmtp

NB use "lmtp -a" for the first two, otherwise lmtpd will require you to
authenticate.

>* Get Cyrus to work (any old how :)


not a question for this list!

>* Get both to use /etc/passwd or so to authenticate both SMTP AUTH and IMAP


use saslauthd with "-a pam"

>I used Cyrus 1.4.x previously and finally hacked pwcheck to work fine,
>and it seems to be working in principle for Cyrus 2.x which means Exim
>can just use pam_sasl_pwcheck (or whatever it's called) too - but of
>course how?


err.. Exim can use PAM directly (though it's more difficult with shadow
passwords.. check the archives for this list again..) were you hoping to
use sasldb for authentication?

Note that pwcheck is deprecated.. if I had more time (or if I nedd it
myself ;) I'd look at patching Exim to talk straight to saslauthd, but
it'd probably better just to link against SASL (as in theory the work's
already been done), but I don't see how that might work in conjunction
with Exim's existing authenticators, which let you do more than I'd
thought possible.

Maybe perl modules exist for what you want to do, and you can always embed
perl into Exim..

HTH,

Matt