On 11/22/2009 12:39 PM, Spyros Tsiolis wrote:
Due to reasons beyond me (mainly my clients demanding more for their buck / things like webmail etc.), I was forced to start searching for (always) open source alternatives.
We used Postfix only for a long time (SMTP/POP3), back in '07 I started researching, built a test rig in early '08 and we switched full over to Postfix/Dovecot in late spring of '08. You'll have a lot of reading ahead of you and I recommend registering a domain or two to use as a test bed on the new system before you start adding the real domains and repointing MX records at the new box.
- Do multiple domain handling.
This can be done with virtual domains and users. We found it easier to go with virtual users instead of system users for our multi-domain setup.
http://wiki.dovecot.org/VirtualUsers http://wiki.dovecot.org/SystemUsers
Personally, we use PostfixAdmin (a web-based tool) along with its databases (in PostgreSQL) to store our virtual domains and to manage domains/accounts. Our Postfix (which handles the SMTP side) and Dovecot (which handles the POP3/IMAP side) query this database for domain/user information.
We used to use a system users setup, which had the advantage (and disadvantage) that Fred could receive email as "fred@AnyOfOurDomains" without having to do anything special. With the virtual user setup, we had to put fred@ into one domain, and then setup aliases in the other domains that rewrote fred@otherdomain into fred@homedomain. In the long run, I'm happier, because most of our users really didn't need to be addressable as "user@anyofourdomains".
- Have a centralized user base
- Have a centralized mail repository for each user (like exchange, only without the admin/maintenance pain that comes with it)
We store user email in Dovecot's Maildir setup, usually under:
/var/vmail/domain/user/
There are lots of sub-folders below that point specific to the MailDir implementation. I personally have IMAP mailboxes with hundreds of thousands of messages spread across dozens of folders and a total size of over 2GB.
- be able to do IMAP/POP3 and not SMTP/POP3 (or do I need all three of them ?)
SMTP servers (postfix, sendmail) handle accepting mail from the outside world before handing it off to a LDA (local delivery agent) like Dovecot. The SMTP server also handles taking mail from a mail client (submitted via SMTP) and either handing it to the LDA for local delivery or contacting foreign SMTP servers to deliver to other domains.
(Postfix also has an LDA component, and a POP3 component, but you can plug other LDA servers in like Dovecot.)
POP3/IMAP access to the mailbox location is usually the job of Dovecot.
- Interface with things like web-based mail software (LAMP ?)
We use SquirrelMail here for our webmail. I'm pretty sure that it talks to the Dovecot IMAP server in order to access the user's mailbox. Once you have IMAP access to your mailboxes configured, you can use lots of different tools to talk to it.