This is an old revision of the document!
We chose Cyrus IMAP as our mail access agent (MAA). It supports the IMAP4, POP3, and KPOP protocols, allowing mail user agents (MUAs) to get their email from the mail server. As the name suggests, IMAP is the primary protocol. IMAP has many advantages over POP; chief among them is support for folders, and keeping the emails on the server.
(See this article for a description of all the pieces involved in email delivery.)
We are using Cyrus IMAP version 2.1.17, thus you need to install the following packages:
To manage user accounts, install the mailadmin package (you can get the Debianized version from the Sudora private repository, or download the tarball and manually install from the mailadmin site). This program requires PostgreSQL, PHP (php4-imap with register_global on in /etc/php4/apache/php.ini) and apache-ssl (highly recommended for security purposes).
Certificates were made using the ssl-cert packages make-ssl-cert script. We had to edit the /usr/sbin/make-ssl-cert script and add the -days 3650 to the openssl command that actually creates the certificate, otherwise it defaults to 30 days (have not yet figured this one out yet).
LMTP should be used to make the final e-mail delivery from Postfix into the Cyrus mail system.
Sieve is a server side mail filtering capability (similiar to procmail) that Cyrus implements. The smartsieve package will need to be installed to allow the user to manage their sieve rules via a web interface. Sieve is only usable when you retrieve your e-mail via IMAP, since POP3 does not support sub-folders.
Have we gotten email delivered from Postfix to Cyrus IMAP working yet?
Configuration details.
Why did we choose Cyrus over Courier IMAP and UW-IMAP?