Building A Reliable Open Source Mail Server
for Fedora Core 3 |
*UPDATED 11/12/04 for Fedora Core 3 This tutorial is one of many available on the Internet. The focus here is on ease of implementation, avoidance of heavy customization (compiling from source, long config files), and software manageability (all RPM based). This turtorial is the *QUICK* version of previous versions. All software downloading, compiling, and installing is automated via a series of very simple helper scripts. These scripts are specific to the package distributions below and must be edited to accomodate new software revisions. Benefits o no licenses o open source GNU software o secure online interface using SSL o minimal hardware requirements o server side Spam filtering Bundled Distribution Software Requirements o Fedora Core 3 with the following packages: o Apache o PHP o Postfix o wget Unbundled Software Requirements o Apt 0.5.15 (http://www.freshrpms.net) o Courier IMAP 3.0.8 (http://www.courier-mta.org) o Maildrop 1.7.0 (http://www.courier-mta.org) o SpamAssassin 3.0.8 (http://www.spamassassin.org) o perl-Mail-Spamassassin 3.0.8 (http://www.spamassassin.org o Anomy Mail Tools 1.69 (http://mailtools.anomy.net/) o Subjadd (http://www.firstpr.com.au/web-mail) o Squirrelmail 1.4.3a (http://www.squirrelmail.org) Remove if already installed o IMAP o SpamAssassin o perl-Mail-Spamassassin Software Not Used o LDAP o MySQL, PostgreSQL Account Management and Mailboxes o standard user accounts via the /etc/passwd and /etc/shadow files Examples used in this tutorial need to be replaced with the relevant values o example.com o 192.168.1.1 |
|
1. Download and Install the APT Package Manager for RPM from http://www.freshrpms.net. |
$ su - |
2) Create a user called "rpmbuild" for building packages. |
# useradd -d /home/rpmbuild -m rpmbuild |
3) Download the RPM install scripts to the rpmbuild user's home directory. |
# cd /home/rpmbuild |
4) Install the RPM development dependencies for all of the RPMS that will be created.
|
# ./install-deps.sh |
5) As the user "rpmbuild", create the binary RPM packages. |
# su - rpmbuild |
6) As root, install the packages and configuration templates. |
# ./install-rpms.sh |
7)
Configure Postfix and integrate maildrop. |
# vi /etc/postfix/main.cf |
8) Install and configure Squirrelmail for Courier IMAP
|
|
9. Configure Apache |
# vi /etc/httpd/conf/httpd.conf |
10.
Create a user with the /usr/bin/add_user script. |
#
add_user jdoe Setting up the user jdoe... Is 502 okay? [y or n]: y The UID 502 will be used for user jdoe. Use default group? [y or n]: y The group jdoe will be used with UID jdoe Would you like to use the default home directory of /home/jdoe? [y or n]: y The home directory of /home/jdoe will be used for UID jdoe. Available Email Domains ***************** 1) localhost 2) example.com Pick an email domain [example:mydomain.com]: example.com The domain example.com was selected. Would you like to setup an email alias [y or n]? y Enter alias: johnny.doe The alias johnny.doe@example.com will be added /to/etc/aliases. Here are your settings. *********************** Home dir: /home/jdoe Group: jdoe UID: 502 Domain: example.com Email: jdoe@example.com Email Alias: johnny.doe Are these choices okay? [y or n]: y User jdoe setup Changing password for user jdoe. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. Adding aliaes... Setting up Squirrelmail... USER jdoe is setup... |
11)
Logining into Squirrelmail Point your web browser to https://www.example.com/webmail. You should be at the Squirrelmail login page. Enter a valid Unix user account and pass. Each user needs to subscribe to both their Spam and Virus folders. This can be done by clicking on "Folders" at the top, selecting both the Spam and Virus folders at the bottom of the page, and clicking on "Subscribe". |
|
12) Debug Messages |
# tail -f /var/log/maillog |
Links and References: Thanks to Robin Whittle ( rw@firstpr.com.au) for great documentation on all of this! http://www.firstpr.com.au/web-mail/ http://da.andaka.org/Doku/imapspamfilter.html#maildrop http://spamassassin.org/sitewide.html http://ebullient.haaser.com/archives/000210.php http://buffy.riseup.net/introduction/ |