Zimbra is available in three configurations: an Open Source edition, Network Standard edition, and Network Professional edition. The freebie version is missing several features that you'd want for professional deployment: Outlook synchronization, mobile synchronization, backup features, clustering features, and more.
I tested the Zimbra Network Standard on CentOS 4 and Open Source edition on Debian Sarge and Mac OS X. The installation procedure for Zimbra can be a bit of a pain, particularly if you're trying to install the open source version. The install script on Debian checked for dependencies but failed to verify whether a required Perl module was installed, so the install script failed on my first run, leaving Zimbra in a unworkable state. On a Mac OS X server, Zimbra installed more easily, though for some reason the document features -- which allow users to create wikis -- didn't work after the install.
Installing Zimbra Network Standard on CentOS went much more smoothly. I had to install a few packages to meet its dependencies (which are spelled out in the system requirements document) and I had to remove Sendmail, but other than that things went much more smoothly than with the open source edition.
Zimbra can work in concert with an existing LDAP or Active Directory installation. Since I didn't have either of those handy, I enabled Zimbra's built-in LDAP feature to manage users' authentication and address books.
After installing Zimbra, I set about configuring the software and adding users. The Zimbra Web interface is easy enough to use, and you can use it to do most administrative tasks.
One thing I noticed about using Zimbra's Web-based interface is that tabbing between items on forms doesn't quite work right. For example, when creating a new user, you'd expect that hitting Tab would move the cursor from field to field. Instead, if you press the Tab key after filling out a new user's first name, it moves from the first name field to the Cancel button on the New Account dialog. That's not exactly desirable.
Also, if you try to create an account with the same name as an existing account or alias, it simply fails, rather than giving you the option of going back through the setup procedure and correcting the error. That's hardly user-friendly (or admin-friendly, for that matter).
Zimbra's admin interface allows you to select an account and then click "View Mail" to log into that account as the target user. This allows you to basically act as that user -- meaning an admin could log into a user's account and send mail as that user or view all of his documents without needing that user's password. The Zimbra documentation presents this feature as a way to help users who might be having trouble with their accounts, but it also provides admins with an easy way to monitor a user's email. The software does keep an audit log, so each time an admin switches to another user's account it would be logged. (Of course, that may not be very helpful if the admin has access to the server where the audit log is kept....)
We all know that in a corporate environment our mail may be monitored by the company or organization we work for. Still, as a user, I find it just a wee bit creepifying that Zimbra makes it so easy to monitor user email. As an admin, I find it to be a fairly convenient feature, since I've had more than my share of troubleshooting user accounts.
Adminstrators can also configure Zimbra to reject messages based on attachment extensions, and dictate whether users can view attachments in their native format or converted to HTML only.
The Web interface also provides some nice monitoring features, including the ability to see how much mail is in the queue for each domain being managed by Zimbra, drill down to the origin IPs for incoming mail, and see individual messages in the queue. I wish I'd had something this slick when I was working in a hosting environment!
Unfortunately, Zimbra doesn't allow you to do everything via the Web interface. If you want to do a backup manually, or schedule backups, install SSL certificates, do bulk provisioning of accounts, move mailboxes, or a handful of other tasks, you have to use the command-line tools shipped with Zimbra.
For larger environments, with experienced admins, this shouldn't be a problem. However, for small shops that are hoping for "set it and forget it" tools, this might be a turn-off, especially as Zimbra's command-line tools don't seem to have man pages associated with them -- a royal pain if you just want to check the syntax for a command.
Zimbra for end users
Enough about the administrator's experience -- what about Zimbra's usefulness for end users? I found the Zimbra client interface to be surprisingly usable for a Web application.
The Web interface for Zimbra is almost like using a local application -- it's very well-designed, and the Web interface is almost as responsive and usable as a local application. I do have to say almost, because there are times when there's a slight delay between clicking a button or icon and something happen. Whether the delay is in communicating between the server and the browser, or if the browser is to blame for slow rendering, I'm not sure. The end result, though, is that you're still aware from time to time that you're using a Web-based application rather than a normal desktop app.
Zimbra's documentation for end users on using the Web-based features is pretty good, but I had no luck finding documentation on using Zimbra with Thunderbird, Evolution, or other open source productivity apps. Email is easy enough to set up, so if you want to use your favorite POP3 or IMAP client with Zimbra, no problem -- but setting up the calendar or addressbook is a different story.
I tried syncing the Zimbra calendar with Evolution, for example, but each time I tried to sync the calendar, I'd get to the point of actually being prompted for a password, after which the calendar wouldn't sync and Evolution would display a terribly malformed URL in the calendar properties. I'm not sure if the glitch was with Evolution or Zimbra. I also had no luck configuring Zimbra calendar with Kontact. I suspect that it's possible, but I spent more time than I should have trying to find documentation on exactly how to configure the calendar with other applications.
I didn't have the chance to test it, but Zimbra does offer an import wizard for Outlook. Users on Windows machines can download the wizard and import their Outlook mail, calendar, contact lists, and attachments to Zimbra. This might go a long way to preventing a user revolt if your organization is switching from Exchange to Zimbra. Zimbra also requires a connector application to be installed on each client desktop if you want your staff to use Microsoft Outlook with Zimbra as a server.
The Web client does have one feature that I found really nifty -- the Zimbra Assistant. Type
~ while in the Web client, and the Zimbra Assistant dialog pops up. You can then type a command such as
Zimbra's Open Source edition is a disappointment, seeing as it's missing backup features and seems to be deliberately harder to install than the commercial editions. Funny how the commercial edition of dual-licensed projects are usually much easier to install than the open source versions. I might be cynical, but I tend to think that companies that want to wear the open source label should distinguish themselves based on service and support rather than just making it inconvenient to use the open source version.
The Network Standard edition is quite usable, though. I'd like to see better documentation on using Zimbra with open source groupware clients like Evolution, but I suspect most customers will care more about Outlook compatibility.
Zimbra's pricing, starting at $25 per seat for the Standard edition or $35 per seat for the Professional edition, which includes Outlook connectivity, isn't too bad if you're considering commercial alternatives. The company offers a free 60-day trial, so if you're thinking about putting in an Exchange replacement or finally getting ready to put up a groupware solution, I'd recommend putting Zimbra on the short list of software to test-drive.