MailServe Pro for Leopard—An Overview

Set up a fully buzzword-compliant mail server on Mac OS X Leopard that can:

  • Send outgoing mail (SMTP)
  • Receive incoming mail (SMTP)
  • Retrieve mail from an ISP mail server (Fetchmail)
  • Store all these mail on the server & and read them from any Mac Mail client (POP3 & IMAP, with a choice of UW/IMAP or Dovecot))
  • Organise mail into folders (UW/IMAP) & sub-folders (Dovecot IMAP)
  • Authenticate users before they are allowed to send mail through the server (SMTP-AUTH) or authenticate the server with an ISP server, using the latter as Smart Host to relay mail through it, in cases where the ISP has blocked all traffic through its network except through its designated server.

MailServe organises each of these tasks—from the simple to the complex—into discrete panels in its user interface. This allows the user to turn the mail services on one-by-one, and turn them off individually when they're not needed.

There's a reason for this organisation. It allows the user to fix problems—with their setup or their network—step-by-step and layer-by-layer, so even novice users can turn on a fully-powered mail server.

MailServe does a lot of complicated configuring of your server beneath its Mac-like user interface. It does this in a non-invasive manner, touching as little as possible of the original system files so as to leave your system in its pristine state. And you can remove all the files installed by the application, at one go, from the De-Install option in its Help menu.

But it does help if you try to run MailServe on a clean, newly-installed OS X Leopard machine, just so the application doesn't get derailed by any unexpected custom modifications already made to the system files. On a clean Leopard system, MailServe would just work, as we say, the Mac Way.

Installing a Mail Server on Leopard— A Step-by-Step Guide

Step 1—Send Mail to other Mail Servers

Mail servers talk to each other via SMTP. There's an SMTP server, Postfix, built into every Leopard machine. But it needs to be turned on.

So, start at this point—at MailServe's Outgoing panel—to turn on that SMTP server. Once it's on, you can use it to send mail to other mail servers, as well as from things like PHP scripts, running on your server.
[Details]

Step 2—Receive Mail from other Mail Servers

The Postfix SMTP server will also receive mail from other servers. But you need to first tell Postfix which domains to receive mail for.

You set this up using the Mail Server panel, which also allows you to set up Postfix so it will relay mail for other machines on your network, as well as for remote machines which authenticate.
[Details]

Step 3—Set up POP3 and/or IMAP Servers
Once Mail has been delivered to the Postfix server, you need to have a mechanism whereby mail clients like Mail, Entourage or Thunderbird can access the stored mail. This service is provided by POP3 and/or IMAP servers, not Postfix. IMAP servers have an additional functionality over POP3 servers—they allow the user to organise the messages into a folder structure. MailServe Pro offers the user a choice of installing either Dovecot or UW/IMAP for the POP3 and IMAP servers.
Dovecot

MailServe Pro users would probably choose Dovecot because this allows the user to create IMAP sub-folders, nested any level deep, unlike UW/IMAP which only allows a single level of folders.

Dovecot also supports the POP3 protocol, plus the SSL variants (whereby the message steam is encrypted), over custom user-defined ports. [Details]

UW/IMAP

Prior to MailServe Pro, UW/IMAP was the only mechanism available for MailServe users.

MailServe's UW/IMAP implementation also had the limitation that the default ports for POP3 and IMAP cannot be changed.

MailServe Pro allows UW/IMAP to operate simultaneously along with Dovecot, so long as these two services use two different sets of port numbers.
[Details]

Step 4—Set up Fetchmail (Optional)

Fetchmail is useful for people who have many other POP or IMAP servers that they read mail from.

Fetchmail can be set up to check these other POP or IMAP servers periodically and download all that mail, consolidating them into one single mailbox on the local server.
[Details]

Mail Log

The Mail Log Panel provides access to the Postfix Log, as well as to the Fetchmail Log.

They're useful for monitoring the health of the mail server.
[Details]

Mail Queue

Use this panel to monitor the mail queue.

The Get button retrieves information about messages in the mail queue.

You can flush the queue or choose a particular message to delete—useful for when there are messages stuck in the queue.
[Details]

Port Reference
Services Port
SMTP 25
POP3 110
POP3s (over SSL) 995
IMAP 143
IMAPs (over SSL) 993
For completeness, here is a
list of well-known ports
used by Apple.

Why is the MailServe Pro download so big at 7MB?

This is because it contains Universal binaries (i.e., both Intel and PPC versions) of the Dovecot and UW/IMAP libraries. And the MailServe application itself is a Universal binary. So it all adds up.

The Outgoing Panel
The Mail Server Panel
The Dovecot Panel
The UW/IMAP Panel
The Fetchmail Panel
The Mail Log Panel
The Mail Queue Panel

De-Installing MailServe Pro

You can de-install MailServe Pro by using the menu item, shown below, in the Help menu. It will shut down any mail-related service that is still running, and remove all files installed by MailServe Pro.

MailServe Pro for Leopard works from its own folder in /usr/local/cutedge/postfix, in which are stuffed the main.cf, master.cf and other files used by Postfix. The original Postfix files in /etc/postfix are left un-touched and so MailServe leaves your system in its original state after de-installation.

The Help menu also contains links to the MailServe Pro for Leopard web page and it can be used to check that web site for new versions.