This document aims to provide the reader with the knowledge required to setup the Exim MTA and Courier IMAP and POP servers to provide mail services for multiple domains. Along the way, you'll discover how to setup SMTP Auth so that no matter where your users are, they can use your mail server to send outgoing mail. This is an essential step in some of the anti-spam solutions out there today such as the Sender Policy Framework.Document Index
Warning and disclaimer
This document is provided in the hopes that it will help you quickly achieve something that took me a fair amount of time and lots of trial and error. It's worked for me on 4 FreeBSD boxes and a number of Linux servers so far.
Please backup all of your configuration files before trying anything in here. I make no warranty as to the usefulness of the information contained herein, and basically if it breaks, you get to keep all the pieces.Document Index
The Courier configuration's are pretty much fixed in stone, but at some point I am hoping to update the Exim configuration to use the Courier userdb for exim e-mail lookups. At the moment, Courier is used for IMAP, POP and SMTP Auth lookups, but the Exim e-mail address lookups are still done against a flat file..
Webmail isn't documented yet because I wanted to get this up before I went on vacation, but I do have a working configuration against the rest of this setup. The webmail configuration will change drastically as I document the migration from Squirrelmail to Imp (part of the Horde set of projects). Having seen the arrogance and abusiveness of developers on the Squirrelmail project, I just can't in good conscience continue to use it or recommend it to other people.Document Index
I'm currently migrating to CentOS, because I'm tired of using a ToyOS that forces me to upgrade every year but doesn't provide an online upgrade solution. This means that the bulk of the configuration file locations and installation instructions will be specific to CentOS. If you want to do this on FreeBSD, most of these applications are available from ports and the configuration files will be somewhere under /usr/local/etc for the most part. Portinstall is your friend! Document Index
How to use this document
When I started this document, it was all about Exim, so it all fit on one page. Now that it covers Spamassassin, Exim, Courier and a webmail client, putting it all on one page makes things a bit cluttered.
I've now broken the document into sections that cover Exim, Courier, then tying it all together. You'll find navigation to all of this in the left hand menu, under the 'Virtualhosting E-mail' link. I would advise that you follow these in order, completing all steps in one document, then move onto the next.
There will be some unavoidable parts where the system is not fully functional at the end of a document because you need to complete steps in the next document to provide infrastructure for a certain task. While these documents are standalone to an extent, rather think of them as chapters in a book - you need to read all of them before you know who dunnit.Document Index