Good morning,
I am setting up a client's mailserver on XServe hardware running
MacOSX Server 10.3.8.
The default configuration uses postfix+cyrus and gives a "nice"
administration interface to user accounts that I plan to keep as much
as I can, for the benefit of others, but that I might scrap
altogether (and cyrus too..) if it means too much suffering for me.
My plan for the moment is to use exim in place of postfix (done) and
leave the maildir delivery to cyrus.
Now to the question. There has been some discussion in the past on
ways of enabling local user verification for exim/cyrus setups. I
have found in the archives two main solutions:
a) uses the mbpath command to verify the validity of a mailbox (Tor Slettnes):
cyrus_lmtp_router:
debug_print = "R: cyrus_lmtp for $local_part@$domain"
driver = accept
domains = +local_domains
local_parts = ! root
require_files = /usr/sbin/mbpath
condition = ${run {/usr/sbin/mbpath -q -s
user.${lc:$local_part}}{1}{0}}
transport = cyrus_lmtp_transport
....
cyrus_lmtp_transport:
driver = lmtp
socket = /var/run/cyrus/socket/lmtp
transport_filter = /usr/bin/tr -d \\000
batch_max = 20
user = cyrus
and the other:
b) uses lmtp over tcp (
http://anfi.homeunix.net/exim/rtvcyrus.html):
cyrus_vdom:
driver = accept
domains = +cyrus_domains
transport = cyrus_ltcp
no_more
....
cyrus_ltcp:
driver = smtp
protocol = lmtp
hosts = localhost
allow_localhost
[note: in this page the recipient verification is done using a
verify = recipient/callout=random,5s
I do not see the reason of the random modifier here, if the author is
reading please explain...!]
option (a) with corrected paths for mbpath and the lmtp socket (for
macosx) is what I've used for half a day until the latest security
update broke mbpath... I prefer it to option (b), at least until
callouts will not be possible over unix sockets. I am not totally
satisfied by either, as mail delivery with cyrus adds a point of
failure. What are your experiences with similar setups? Is it
reliable compared to exim maildir delivery + courier?
Thanks
Giuliano