MailServe for Mountain Lion

MailServe helps you set up a fully functional mail server on Mac OS X that can:

• send outgoing mail
• receive incoming mail
• fetch mail from an ISP mail server
• filter out spam
• store all these mail on the server & and allow them to be read them from any mail client
• allow mail to be organised into folders and sub-folders
• authenticate users before they are allowed to send mail through the server
• encrypt mail coming in and out of the server using SSL (including inserting Intermediate CA certs)

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.

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 MailServe, at one go, using the De-Install option in MailServe's Help menu.

Mountain Lion Upgrade Notes :

If you didn't do a clean install of Mountain Lion, do a De-Install from Help menu and then quit and come back to the app. You'll then get the config files, libraries and the other stuff that will work with Mountain Lion.

Note: Due to a bug with the Mountain Lion keychain system, MailServe would not (yet) be able to retrieve the stored password in the keychain, until that bug is fixed.

Installing a Mail Server on OS X - A Step by Step Guide

Step 1—Sending Mail to other Mail Servers, using the Outgoing Panel

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—Receiving 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—Setting up POP3 and/or IMAP Servers using Dovecot

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 IMAP server called Dovecot, not Postfix. IMAP servers have an additional functionality over POP3 servers—they allow the user to organise the messages into a folder/subfolder structure. [Details]

Step 4—Setting up Fetchmail

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]

Step 5—Spam Filtering & Mail User Accounts Management

The Spam Panel includes controls for managing spam and setting up user accounts. MailServe uses procmail to integrate Postfix with Dovecot and SpamBayes to implement spam filtering. The mail administrator can set up custom procmail directives to be processed before or after spam processing. [Details]

The Mail Log

The Mail Log Panel provides access to the Postfix, Dovecot and Fetchmail logs as one merged stream. It also shows the current versions of Postfix, Dovecot and Fetchmail that's activated by MailServe.

If you Option-click the Postfix Log button, you can get a list of the currently active Postfix parameters.

The 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.

De-Installing MailServe

You can de-install MailServe 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.

MailServe works from its own folder in /usr/local/cutedge/postfix, in which are stuffed the, 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.

MailServe for Lion includes new binaries and config files that are specific to Mac OS X Lion. You can do a de-install to clear the files left over from the previous Leopard/Snow Leopard versions of MailServe. First, save the current configuration using the File->Save menu. Then, quit and come back into MailServe. Then, open the saved configuration file to read back the previous configuration settings. Then, Start Postfix. You will get all the new binaries loaded for use with Lion.

The Help menu also contains links to this MailServe for Lion web page and they can be used to check our web site for new versions.

Release Log

6.0 July 26th 2012. MailServe for Mountain Lion released.

6.0.1 July 27th 2012. Restored the ability to work with Fetchmail. There's no Fetchmail built into Mountain Lion. MailServe now includes a version 6.3.21 build of Fetchmail. (The Dovecot version is 2.1.3, and Postfix is version 2.9.2).

6.0.2 August 6th 2012. Upgraded Mountain Lion machines, as opposed to ones that had been clean-installed, have a faulty /etc/postfix/ file that is meant to work with Mountain Lion Server. Although I really hate to touch the original system files, I've now programmed version 6.0.2 of MailServe to fix this config file so that sendmail, PHP, command line mail, and cron jobs, etc… (which still refer to the config files in /etc/postfix) can now all get to send mail again on upgraded Mountain Lion machines. (Note this only affects machines that have been upgraded to Mountain Lion. Those that had been clean installed should still continue to work blissfully.) Please note that, with this version onwards, you can only do a De-Install after you've made sure that Postfix and Dovecot are both not active. Option-Click on their respective buttons to stop their processes from running.

6.0.3 August 8th 2012. Reverted the de-install function because the users are not used to having to stop Postfix and Dovecot manually before they do a de-install - they expect the system to do it for them. This version of MailServe also introduces a new field to allow Dovecot users to control the number of concurrent connections a user can make to the server. The default is 10 but the administrator can increase it when it has multiple clients accessing the server from multiple devices. This version fixes a bug in the Spam panel whereby the procmailrc file gets saved to the system with environment variables, like $HOME, etc... getting unintentionally expanded to hard-coded paths. Finally, MailServe now tries to fix the faulty file in /etc/postfix on behalf of upgraded Mountain Lion machines every time the user does a Restart Postfix, rather than only during the de-install process, to save the user from having to do an unnecessary de-install just to get this feature.

6.0.4 October 12th 2012. Updated MailServe to include Fetchmail 6.3.22. If you're having trouble fetching from a site that requires SSL, you should upgrade to this bundled version. To obtain this latest version of Fetchmail, do a De-Install from MailServe 6.0.4's Help menu, and then restart all the mail services (don't forget to save your config using the File menu, so that you can re-use the saved config before you restart the mail services).

6.0.5 November 15th 2012. Added the ability for Dovecot and Postfix to authenticate against the passwords stored in an LDAP Server set up by LDAP Enabler. Also, this version fixed some problems with the Access field. REJECT and OK statements that identify specific networks, IP addresses and email addresses to reject or accept mail from will now work correctly.

6.0.6 November 21st 2012. SMTP authentication via the sasldb method stopped working at some point in Mountain Lion. This version fixed the problem. Also, the sasldb authentication method now also allows the client to authenticate using plain, login passwords, in addition to CRAM-MD5, to support older mail clients that don't speak CRAM-MD5.

6.0.7 November 24th 2012. The changes in version 6.0.6 introduced an unwelcome bug. The SMTP authentication method always reverted to none, unless the SASLDB option is set. This is clearly not intended. Version 6.0.7 fixes this bug.

6.0.8 November 25th 2012. Added a "Save Smart Host List" button to the table of Smart Hosts in the Outgoing Panel, to allow the user to explicitly control when the list is being saved. Previous versions of MailServe only save the list when the application is terminating.

6.0.9 November 29th 2012. In Mountain Lion, text fields containing numbers are formatted automatically with comma separators. This causes problems for fields in MailServe denoting things like port numbers. Version 6.0.9 suppresses the comma separators from appearing in such fields.

6.0.10 January 25th 2013. With more iOS clients connecting to the mail server, I have tuned the Doevcot settings higher, with this version, to handle more simultaneous connections. 

The serial number & download link will be displayed in the browser after payment, and will also be sent via email.

You can also pay me through Stripe for S$25. Singapore Dollars (S$) < US Dollars, so you’re effectively getting a great discount. Click on Stripe, below, and help me test my new payment method.

MailServe for Mountain Lion

Please provide the email address you used to purchase the product, together with its serial no:

The latest MailServe for Mountain Lion version is 6.0.10.

For more details, please check out the Release Log.

Bernard Teo