On Tue, 26 Oct 2010, micha wrote:
> From: micha <micha@???>
> To: exim-users@???
> Date: Tue, 26 Oct 2010 13:11:14
> Subject: [exim] cannot get exim and cyrus to cooperarte
>
> I'm trying to set up an Exim MTA for use at our university and am
> obviously running into some issues. We have attempted to set this
> up before but given up after a while. No it becomes more urgent
> to establish a new mail server at the institute. I'm starting
> from what I suppose to be a more or less virgin exim/cyrus
> configuration since we have overwritten previous attempts on a
> recent system update.
...
> Here is my configuration:
>
>
> /etc/cyrus.conf:
> ...
> SERVICES {
> ...
> lmtp cmd="lmtpd" listen="localhost:2003" prefork=0
> maxchild=20
> ...
> }
...
> This is what I see in /var/log/exim4/mainlog then (I just blacked out my
> private sending addresse:
> 2010-10-26 14:01:10 1PAiDG-0004wb-TZ <= SENDERADDRESSE
> H=mx-rz-smart.rrze.uni-erlangen.de (mx-rz-1.rrze.uni-erlangen.de)
> [131.188.11.20] P=esmtp S=2349 id=4SENDERID
> 2010-10-26 14:01:10 1PAiDG-0004wb-TZ ==
> klimczak@??? R=cyrus_vdom T=cyrus_ltcp defer
> (-45): SMTP error from remote mail server after MAIL
> FROM:<SENDERADDRESSE> SIZE=3414: host localhost.physik.uni-erlangen.de
> [127.0.0.1]: 430 Authentication required
>
> I do not quite understand -- judging from the howto -- where
> authorization should be required and how to achieve it.
>
> Any help would be appreciated. Maybe someone can tell me what I'm
> doing wrong or how to get more detailed error information from the
> system.
You need to pre-authenticate the lmtpd connections from exim in your
/etc/cyrus.conf file. The manual page for lmtpd says:
-a Preauthorize connections initiated on an internet
socket, instead of requiring LMTP AUTH. This
should only be used for connections coming from
trusted hosts.
The box on which I used to do this is currently switched off. So
I don't have cyrus configuration files to hand. But I think you'd
change your cyrus.conf file file to say:
SERVICES {
...
lmtp cmd="lmtpd -a" listen="localhost:2003" prefork=0
maxchild=20
...
}
ie change "lmtpd" to "lmtpd -a". You're listening on the loopback
address, so you'd hope the host would be trusted!
You can also use variants of the delivery method given in:
http://wiki.exim.org/FAQ/Delivery/Q0630
However I think that delivering to the lmtpd listening on the
loopback address is a far better method. It gives you more
possibilities. For example I set up exim to use callouts on
this port to make sure it was delivering to addresses that were
acceptable to Cyrus.
--
Dennis Davis, BUCS, University of Bath, Bath, BA2 7AY, UK
D.H.Davis@??? Phone: +44 1225 386101