Battle of the Ajax Mail Packages
Traditionally, there have been two paths to choose from when considering mail servers. The Redmond path was some variety of Microsoft Exchange Server with Outlook as the client, and possibly POP3/IMAP and Web mail as a backup when out of the office.
The other path, the path of the penguin, was Sendmail or Postfix, or possibly a more obscure mail transport agent (MTA) with POP3 and IMAP as the connection to the mail client of your choice. If you wanted Web mail, you'd use a package such as SquirrelMail running under Apache. There were, of course, other choices, such as Lotus Notes, but by and large, most e-mail installations used one of these two solutions.
Recently, the e-mail landscape has changed dramatically. For one thing, rich client tools such as Gmail and Yahoo Mail have shown the promise of Ajax (Asynchronous JavaScript And XML), taking Web mail from a standby of last resort for travelers to a fully usable replacement for an e-mail application such as Outlook or Evolution. More significantly, several companies either have reached or are very close to the Holy Grail of open-source e-mail, complete Exchange compatibility.
I'm sure there are many die-hard Linux folks out there who are silently saying, “who cares?” But the reality is that in most corporate-IT environments, Outlook and Exchange are a well-entrenched aspect of the company mentality. And, it's hard to blame companies for clinging to them. The terrible twosome are full of useful features, such as meeting and calendar integration, that make them highly useful. On the other hand, it would be difficult to find a Windows sysadmin willing to describe administering an Exchange server as a pleasurable experience.
At last, these beleaguered MCSEs have a choice that doesn't involve dumping Outlook and training their employees to use an entirely new mail system. Projects such as OpenExchange, Zimbra and Scalix promise the ability to phase out Windows-based Exchange servers without the end users noticing.
Two of these projects, Scalix and Zimbra, are particularly promising because they include highly functional Ajax clients as part of their offerings. In this article, we look at the two, head to head.
Zimbra is an open-source project with a proprietary network edition, which includes features such as product support, clustering and, in the future, Outlook connectivity via MAPI. If you can make do without these features, you're free to run the open-source edition and get support in the forums. The network edition isn't cheap though, running you $28 US/user with a 500-user minimum (or $1,500 US for a 50-user small-business license). Significantly, Zimbra is still in beta, although it's well along in the development cycle.
Scalix, in comparison, is fully closed source. It offers two different versions, a community edition and an enterprise edition. As with Zimbra, the enterprise edition will cost you money, and it comes with support. The difference is that the Scalix community edition provides all the functionality of the enterprise edition. However, the advanced features, such as MAPI compatibility (which lets you use Outlook directly with the mail server for calendar and contact management), are available only for 25 users. After that, you'll be paying $60/user.
We tested both products under Fedora Core 4. For Zimbra, that and Red Hat Enterprise Linux 4 are your only official Linux choices (at least for a supported, binary install). Scalix offers those distributions as well, but adds several flavors of SUSE to the supported list. Both products install without much hair pulling; you answer a few simple questions (at least, simple if you're familiar with setting up mail servers), and the installation scripts do the rest.
At this point, I need to mention one of the irritating quirks of Zimbra. It installs its SMTP, POP3, IMAP and HTTP/HTTPS servers in high-numbered ports, and then uses iptables to map to them. So, for example, port 80 gets mapped to port 7070, where Zimbra runs its Web-mail client. This can come as a nasty surprise if you install Zimbra on a host with an existing Web server.
By comparison, Scalix keeps all its network ports off existing Web services, although it does take over mail-related ports such as SMTP and IMAP, but that's what you'd expect a mail server to do.
Scalix has its own dangers for the unwary. You had better be familiar with LDAP and how it specifies distinguished names. Scalix is all about LDAP. To be fair, Scalix is trying to operate as a drop-in replacement for Exchange, and Exchange makes heavy use of LDAP in its Active Directory architecture. So this isn't an unexpected development. However, for a sysadmin familiar with Sendmail doing a first-time install of Scalix, a close reading of the documentation is in order.
Both Scalix and Zimbra offer command-line and Web-based configuration tools. And in both cases, you can do much more from the command line than you can from the Web. The philosophy seems to be that the Web should be used for ordinary day-to-day operations, such as adding a new user, and the command line is for more complex or less frequently used ones.
One headache both products share is that they have a ton of these command-line programs. Zimbra has 74 programs you can use to control its operation, and Scalix has 341 (yep 341) programs in its bin directory, and they are so closely named that you may go mad trying to remember the differences. For example, try figuring out whether you should be using omdelapppdl or omdelapppdln. As I said, a close reading of the manual is in order before you try anything fancy.
Zimbra comes configured with SpamAssassin and ClamAV already installed. Scalix supports any Milter-based spam and antivirus tools. It wasn't that difficult (with a little help from the very responsive support board when I made a stupid mistake) to install them.
There's no question that the Zimbra Web-mail interface is both more featureful and colorful. For example, put your mouse over a date and you see the calendar for that date. Mouse over an e-mail address, and you see the contact information for that person. Mouse over a Web address, and you see a thumbnail of the site. Unfortunately, it's still a bit glitchy, especially under Firefox. This is not a good thing for a product that wears an open-source pedigree so proudly. Hopefully, these issues will be resolved before the final release.
What Zimbra is currently lacking, however, is any kind of direct Outlook support. Even though the Web site claims Zimbra will interface directly with Outlook, this is in fact a TBA feature. So at least for the time being, Zimbra is available only via its Web interface or by IMAP/POP3.
By comparison, Scalix is almost pedestrian in appearance on the Web. If you don't look carefully, you could swear that you're using Outlook. That is probably by design, as Scalix wants to replace Exchange seamlessly. You can do pretty much everything via the Web interface that you can do directly from Outlook, except for anything having to do with mail filtering.
It's when you add the Scalix plugin to Outlook that Scalix really shines, however. I use Exchange on a daily basis at my workplace, and I am now using Scalix for my personal e-mail outside of work. Honestly, there's no practical difference between the two if you use Outlook. The mail-filtering options are a little different, but you really have to look hard to see where the two diverge. Among the more useful features that it shares in common with Exchange is the ability to define filtering rules that run directly on the server. And, because ActiveSync talks to Outlook, you can sync your PDA to your calendar, mail and contacts.
If you're trying to pick one over the other, I'd have to recommend that you start by trying each of them out, because they both have free community editions. Zimbra is probably more of a one-click setup than Scalix, and it definitely involves less in-depth knowledge of things like LDAP. It also has a sweet Web interface that should only get better as it is further developed. On the other hand, it is still in beta as of this writing, and lacks Outlook connectivity.
Scalix shows all the signs of an Enterprise-facing solution. It's less intended for casual users setting up a personal server than for a departmental or corporate environment with many users and complex requirements. That being said, it wasn't that much of a strain to get it set up for my personal domains. But for me, the killer feature is the Outlook connectivity (and especially the free 25 licenses). Until clients such as Evolution become better integrated with PDAs and other groupware technologies, many of us are going to be stuck with Outlook as a mail client, and only Scalix is offering a free solution that everything can talk to.
James Turner is Product Review Editor for Linux Journal. He has written two books on Open Source Java development and is a Senior Software Engineer with Axis Technology, LLC.