Exchange Functionality for Linux
Roughly a year ago I reviewed a mail server for Linux that features integration with Microsoft's Outlook and offers calendaring/scheduling options with shared busy/free information. However, it did not have many features that Outlook offers in corporate mode, including sending meeting requests to groups of users who can then reply and delegating rights so secretaries can manage their bosses agendas on-line. This current review shows a year's time was enough for Linux solutions to arise that can compete with Microsoft Exchange and Outlook and offer a lower price, with all the important features included.
Two important issues should be discussed by administrators who want to get rid of Microsoft Exchange as their groupware solution, but who also need to offer a equally functional alternative. Right now, we have Bynari's InsightServer, which can be used as an Exchange replacement while still using Outlook on workstations. Still in development, the Kroupware project is moving fast to produce an equally functional solution that is fully open-source and free (as in free beer). For the time being, the Kroupware project works only with Linux (*nix) clients. The Kroupware project is the product of the German government going open-source.
In the February 2003 issue of Linux Journal, Tom Adelstein of Bynari explained how his company wrote code to replace Exchange, "that troublesome closed mail and calendar server". I immediately wondered how all this knowledge works in the real world, where administrators indeed have to work with what developers think up. So I downloaded all its binaries and documents and started up VMware. Below, I explain what to expect when installing Bynari and what is gained when that job is done.
The first thing you need is a Linux distribution on which to install the InsightServer. I downloaded the SuSE 8.1 boot.iso as an install-floppy replacement on CD-ROM. As I use VMware, I connected the ISO directly to my VM, then started up at IP address 192.168.0.163. Using FTP, I installed SuSE as a minimal sever system with KDE. From an internal FRP server I downloaded the InsightServer I downloaded from www.bynari.net after subscribing. From the available PDF files, I learned that a number of ports need to be free before installing the server. So I disabled Apache and some other stuff to free up several ports: 25(SMTP), 80(HTTP), 110(POP), 143(IMAP), 389(LDAP), 443(HTPS), 636(LDAP over SSL), 993(IMAP/SSL) and 995 (POP/SSL). In SuSE you can go to YaST-->Modules-->Start/Stop services-->inetd and enable inetd with no services. That did it for my setup. Then I unpacked the tar file with
tar -xvf insightserver-188.8.131.52.tar cd insight* ./install
A window opens to tell you what ports should be freed, which it installs in /opt/insight, and how to start and stop the server: /usr/sbin/insightserver start|stop|restart. You have to fill in the name of your country you, select a password for the server manager of the server and enter the domain name of the server (hanscees.nl in my case). Then you can choose to start the server and direct the startup to happen automatically when you restart the computer. How much simpler can it get?
At http://192.168.0.163/insightserver (use your IP address of course) you can find the administration site. Enter your license key, and then you can administer the MTA (Exim), add users and set up your organization in LDAP. You can administer Exim with the a web-based GUI but also from the command line, with ASCII files. From here, you can set options regarding mail size, relaying and so forth.
Administering LDAP is the part where you add users and shared folders. You can import users with LDIF files, and the PDF files explain how to migrate from an Exchange user group to the InsightServer. I made a new organization (hanscees.nl), group (managers) and put myself in place as users Hans-Cees and Hans. As most of the server consists of open-source components--Apache, Exim and Cyrus--you can tweak many items with the knowledge from these projects. The Bynari site has some user forums to give you a hand with a trial version, if needed.
Now for the most important part: setting up Outlook and discovering what features are available to the users. Can InsightServer really deliver what my title suggests, a functional replacement for Exchange? When setting up Outlook I decided not to follow the easy road and use Windows XP and Outlook for XP; these are described in the user guides. Instead, I used Windows 98 SE with Outlook 2000. I chose this because it is a situation many companies are still in, and a situation I have worked with as a real-life administrator. I figured if my setup works, the well-described setup with Windows XP will certainly work fine. So I began by installing Outlook 2000 and its service packs. Then I installed the Bynari InsightConnector and the Bynari LDAP client. The installation was no problem, but the configuration was a bit difficult to understand. Even though I did not install the recommended version of Windows and Outlook, I think Bynari could improve their documentation here. It took me a while to see what belongs where, mainly because their documentation describes how to migrate from Exchange, while I was installing from scratch.
It turns out that you need to do three things for each client or profile you use. Before anything else, you need to start up Outlook and configure it to use workgroup mode. This is important because Outlook working in internet-mail mode only is not half the client it can be. As the first task, you must configure an internet account: use the InsightServer as an SMTP server and fill in None for the POP server. This SMTP link is your way to send e-mail from the InsightServer. Second, you need to connect to the InsightServer with IMAP. To do so, a window opens after you save the POP account to a .pst folder. Fill in the Insight IP address or name, along with your account and password. You might use SSL, but it might cost some serious processor power. If you ever plan to let people use Outlook over the Internet, it might as well be encrypted. You can ping the server to see if it works from the configuration window.
Outlook now opens up with all the folders you expect: Inbox, Calendaring, Tasks, Outbox and so on. If you click on Calendaring, you need to click on Yes a couple of times so the folder becomes a sub-folder of the Inbox. The Bynari server has given you rights to make folders only inside the Inbox folder. The next step is to configure LDAP. Go to Tool-->Services-->Add, and add a Bynari LDAP address book. Configure that by filling in the IP address of the server, a vink by Send messages in RTF text format, your user name and password, and then click search. In the search window, fill in your country code, and vink the organization found and all its sub-containers.
Restart Outlook after altering the Services-->Addressing tab, so your search for users starts in the right container for your part of the organization. You also might want to give users their personal contact lists. After restarting Outlook (the client is still Windows-based, after all), you can tweak some minor details. On the Bynari tab, consisting of IMAP boxes, Mailbox, Folders and Synchronize, you can use the folders tab to grant rights to other users to see, use and/or manage your folders as you see fit. You can publish your free/busy information for other users to consult when planning meetings by going to Tools-->Options-->Calendar-->Options-->Free/Busy options and filling in information at ftp://192.168.0.163/freebusy/%NAME%.vcf. You then can find this information at http://192.168.0.163/freebusy/%NAME%.vcf.
At this stage you should have a functional client. My little tests show that you can do now all that you could do with Outlook and Exchange--send mail, make notes, use the to-do list and so on. But you also can plan a meeting, send an invitation about it to users, find users by clicking the To button when making a new mail, and clicking on Add to select users and groups. You can see whether people are available by checking the Attendee Availability tab. The attendees receive your invitation and can accept or decline it, and their replies are incorporated into your calendar. Better still, you can give your secretary the rights to do all this for you.
Not unimportant here is the price. Let us compare what one might spend on software for 50 users.
To use Microsoft Exchange 2000:
Microsoft Exchange, including 5 client access licenses (CALs): $1,29945 additional Microsoft Exchange CALs: $3,915Total: $5,214
Windows 2000 server with 25 CALs: $1,79920 additional Windows 2000 CALs: $739Final five CALs: $189Total: $2,727
The grand total is $7,941 for the combination of Microsoft Exchange and Windows 2000 server. A Microsoft Small Business Server plus CALs is $4,000, but then you cannot grow over 50 users.
The Bynari solution will cost you for 50 users:
50-person InsightServer family is: $1,095LDAP client for 50 users is about: $350SuSE 8.1: $80Total: $1,525
So, in the best case Exchange costs about three times as much as InsightServer.
Overall, I think the Bynari InsightServer with Client has done what no other company had done yet: they built a server/client combination for Linux with full Exchange/Outlook functionality that enables administrators to keep Outlook as the client and get rid of a Windows server with Exchange. I did not test how many clients Bynari InsightServer can run on specific hardware, but I expect that the mainly open-source parts--Cyrus, Apache and Exim--perform quite well on top of an efficient OS like Linux. A good *nix administrator should be able to tweak all kinds of things, of course.
Because InsightServer runs on Linux, you can use a number of journaling filesystems and all kinds of RAID tools, which you will need if you are building a serious mail server. Already, InsightServer version 3.xx offers all kinds of new goodies. Furthermore, it is fit to run in a big enterprise; the underlying Cyrus LDAP server that holds the post-boxes is scalable. The InsightServer enterprise version can run on big IBM servers, if you need that. You also can integrate it with solutions for anti-virus, anti-spam and so on. It has a basic Squirrel plugin for web mail.
The near future has more in store, as version 4 is scheduled for release later this month, if not by the time this article publishes. A distributed setup with different parts of the organization on different places will be described in that documentation. A beta release of a web mail server that talks to Outlook is scheduled for March as well. In the second half of 2003, an email-client is planned that can use all of Outlook's functionality but runs on Windows as well as on Linux and other *nixes and Mac. This last information is quite relevant, as this will enable administrators to plan a migration path from Windows to Linux. The money saved by moving part of an organization to Linux is substantial, because money is saved on both the OS and on using Outlook (Windows XP plus Outlook costs you $408 per PC).
And these days using Linux for non-specialized workers, those that need only Web, e-mail and text-processing capabilities, is quite easy. It also opens up the groupware market for businesses that use only Linux/BSD. Using shared calendars, where you can see if others are available, is something you do not want to go without once you have experienced using it. Of course, this client will not be free, but it certainly will be cheaper than the Microsoft solutions. The InsightServer product currently on the market and its near-future versions give administrators a choice to move away from Microsoft Exchange, where this was a difficult process previously. Although the Bynari InsightServer will have to prove itself in the server-room, it certainly is welcome there as far as I am concerned.
While InsightServer is available now, it is not open-source and it certainly isn't for free. Many things are on my Linux wishlist, but an all-free (open-source and free as in free beer) Exchange replacement is certainly one of them, one where Linux clients also can join the groupware functionality. It seems such a replacement is in the making in Germany.
When searching the web for information on groupware for Linux, I stumbled across the Kroupware project. Kroupware is the project undertaken by three companies contracted by the Federal Agency of IT- Security for Germany "to provide a Free Software groupware solution accessible with Windows running Outlook and GNU/Linux running KDE clients". The project is by no means finished but currently is in beta; a working version must be delivered as part of the contract. The project is intertwined with KDE and uses Cyrus for the LDAP core and Postfix as the MTA. It can be used with Outlook when a Bynari connector for Exchange is installed. For me, what puts this project beyond the Bynari solution is the fact that it is set up with new standards. Bynari InsightServer, on the other hand, is meant to be used with Outlook and its closed-source Windows legacy and, later, with its own, probably closed-source e-mail client.
Kroupware contains an e-mail/groupware server and a Linux-based client. Outlook clients also can join if they use a Bynari connector, but they will not have total functionality. Other clients might be developed as well, but they are not included in the contract for version 1. The important difference is that open standards are used for exchanging meeting requests and information and also for exchanging contact information. Contacts are send between e-mail clients as attachments, vCards, using MIME. Calendars are stored in LDAP as vCal, a format for calendaring and scheduling information, now managed by the IMC (Internet Mail Consortium).
Kroupware has a clear set of specifications that can be found here. It includes calendaring, sending meeting requests, checking the availability of other attendees, and creating personal contact lists, tasks lists and so on. The big issue at the moment is the project is not yet finished. Another issue is the project's future after the completion of version 1 is uncertain. But anyone following the growth of Linux and open source can see the potential. An open-source project, providing a much wanted solution, based on open standards can be a big success. For small companies and low-budget organizations it may be the only legal option. Because the standards of Kroupware are open, it will not be difficult to develop plugins for existing e-mail clients. Imagen Pegasus Mail already offers a calendaring and tasklist plugin for Kroupware. Pegasus is free, has IMAP and LDAP on board and is not plagued by all kinds of Outlook viruses. Many other e-mail clients can and will add plugins if the server becomes popular. Linux as a desktop system also will become much more attractive when full-featured, Outlook-like functions are on board with the Kroupware Kolab server as the backend.
I admit that my enthusiasm is getting the best of me where the success of Kroupware is concerned; many uncertainties exist as to how the project will develop. Without a doubt, though, we are seeing some very positive signs on the Linux skyline. A year ago, no groupware solution running on Linux existed with which Outlook-based groupware functions were possible. Now, Linux as an enterprise solution OS is growing and the Bynari InsightServer, coupled with Outlook and some plugins, fits nicely into this picture.