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.
Free DevOps eBooks, Videos, and more!
Regardless of where you are in your DevOps process, Linux Journal can help!
We offer here the DEFINITIVE DevOps for Dummies, a mobile Application Development Primer, and advice & help from the expert sources like:
- Linux Journal
- Be a Mechanic...with Android and Linux!
- New Products
- Users, Permissions and Multitenant Sites
- Flexible Access Control with Squid Proxy
- Security in Three Ds: Detect, Decide and Deny
- High-Availability Storage with HA-LVM
- Tighten Up SSH
- DevOps: Everything You Need to Know
- Non-Linux FOSS: MenuMeters
- Solving ODEs on Linux