[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Building an IMAP server



On Sat, 2003-02-01 at 05:08, Hans Wilmer wrote:
> Hi!
> 
> Currently I'm trying to figure out what software to use best to set up
> an IMAP server for the company I'm working at. I'll be using Debian
> Woody for the server, and the following requirements and suppositions
> are given:
> 
> 
> + about 60--100 users
> 
> + Mail must be saved on the server, not on the clients.
> 
> + Users should be able to create folders and subfolders to store their
>   mail.
> 
> + Mailboxes are mostly accessed via a webmail client. The webserver
>   may run either on the same server or on another maschine.
> 
> + Exim should be used as MTA; amavis and spamassassin should be used.
>   Mail filtering by .forward files and eventually maildrop should be
>   possible; probably assisted/done by the admin (vacancy,
>   redirections, maybe automatic sorting into folders).
> 
> + Users may be real users on the server. --- Are there good reasons
>   against this?
> 
> + The server needs to be backed up daily. In case some user manages
>   to accidentially delete his mail, I'll have to recover from the
>   backup. This leads to:
> 
> + Mail should be stored in maildir format (in users' home
>   directories). The server will use ext3fs.
> 
> + Each user should have about 1 GB to store his mails. This will
>   probably be enforced by setting filesystem quotas. Are there
>   better solutions to set maildir quotas? Users should be informed
>   automatically in case they reach their quota limitation; the admin
>   should get a note, too.
> 
> + Some/most users will store quite a lot of mail (in the sense of the
>   amount of data, not the number of mails). This should not
>   impact performance too much. (leads to using maildir, again)
> 
> + It would be nice to have POP3 working, too.
> 
> + To make things easy, I'd like to stay with software from standard
>   Debian packages, but that's not a must.
> 
> 
> As of yet, available software to build the server seems to be quite
> limited:
> 
> Cyrus seems to be good for performance, but it is using its own format
> to store the mail. That would make it impossible to recover particular
> mailboxes from backups, and if something goes wrong, you're more or
> less left stranded because of the propriatry format that is used.

This is incorrect. Cyrus storage method is basically maildir with an
index database for performance. If the index database gets corrupted, it
can be completely rebuilt from the messages in the mail directory, using
the cyrus admin commands. 

Cyrus covers all of your requirements other than .forward support.
However, cyrus with sieve handles vacation, redirect and folder filing,
so you don't really need .forward support for that. Quotas especially
are easier to manage with cyrus, and the use of maildir combined with
index files means that cyrus should have the best performance of any
imap server, especially for applications that require repeated
connections to the imap server.

-- 
Dave Carrigan
Seattle, WA, USA
dave@rudedog.org | http://www.rudedog.org/ | ICQ:161669680
UNIX-Apache-Perl-Linux-Firewalls-LDAP-C-C++-DNS-PalmOS-PostgreSQL-MySQL



Reply to: