/usr/share/doc/cyrus-doc/README.exim is in cyrus-doc 2.5.10-3ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | Setting up Cyrus IMAPd for Exim
===========================================================
This is very incomplete information, if you are an exim user, please send
in a more complete document.
General configuration hints (configuration examples assume you are using
the Debian Exim4 configuration scheme and paths are relative to
/etc/exim4):
1. Use Exim version 4. Exim version 3 just doesn't cut it in the lmtp
area, which is very important for performance when dealing with Cyrus
IMAPd.
2. Use the LMTP transport to deliver using a unix socket (fastest), or
the SMTP transport in LMTP mode to deliver over a TCP/IP socket.
For local delivery over a unix socket, add a file into conf.d/transports
with the following:
cyrus_delivery:
driver = lmtp
socket = /run/cyrus/socket/lmtp
batch_max = 20
user = mail
(set batch_max to whatever is best for your setup, and make sure you
allow enough Cyrus lmtp processes to serve that many lmtp connections)
If that doesn't work, I suggest you create a group for lmtp
delivery, add whichever user exim is running as to it, and change
the /usr/lib/tmpfiles.d/cyrus-imapd.conf to make /run/cyrus/socket/lmtp
writeable by that group.
To then deliver to Cyrus, you will need to comment out the check_local_user
stanza in conf.d/router/900_exim4-config_local_user (the entire file), and
change the dc_localdelivery variable in /etc/exim4/update-exim4.conf.conf to
'cyrus_delivery'.
If you still want to deliver some messages to a mail spool then create
conf.d/router/899_exim4-config_copy_to_mbox and put this in it, changing
the local_parts as necessary:
copy_to_mbox:
debug_print = "R: copy_to_mbox for $local_part@$domain"
driver = accept
unseen
local_parts = postmaster
transport = mail_spool
This will deliver postmaster mail to both cyrus and
/var/mail/postmaster. You can comment the unseen option to have it only
deliver once to the mail_spool. If you don't set check_local_user or
the user option the spool files will be owned by mail.
3. Kill any NULs (ASCII 0x00) inside the message, if you don't want Cyrus
to bounce such malformed crap. Calling "tr -d '\000'" as a filter might
do the trick.
4. Sieve often needs to set -f option on /usr/sbin/sendmail when doing
redirects. Exim allows only trusted_users to do this. It is recommended
that you make sure "cyrus" is in the list of trusted_users in
conf.d/main/02_exim4-config_options:
trusted_users = uucp:cyrus
|