Although this process involves setting up and working with Linux servers, you don’t actually need any Linux experience. I provide the step by step instructions, and most of the configuration we do is through a browser. In the Troubleshooting section, I provide some information about troubleshooting issues that may arise. I have very little hands on Linux experience myself, so if I can put these instructions together, you’ll have no problems following them. I do make the assumption that you are familiar with Exchange technology and terminology, and know how to install an Exchange server. I won’t be providing any information about the setup of the Exchange Server itself, although it’s a fairly straight forward process. For troubleshooting purposes, you will need to know a bit about network monitoring, and be able to make sense of packet captures. Hopefully if all goes well, you won’t need to worry about this part.
Exchange Server 2007
First thing you are going to need is a Microsoft Exchange Server. You have two options here. Firstly, you can download the trial version from http://www.microsoft.com/downloads/details.aspx?FamilyID=444c259e-605f-4a82-96d5-a2f448c9d4ff&DisplayLang=en. This gives you a 120-day fully functional trial version that can be upgraded to a full version at any time. That’s more than enough time to get a system up and running and do some testing. Alternatively, (and I highly recommend this option) you can purchase a subscription to Microsoft TechNet (http://technet.microsoft.com/subscriptions/). For about AU$500 a year, you get access to full versions of almost all Microsoft products (servers, applications, operating systems, etc) for testing and evaluation purposes. They are the same products you get if you purchase them at retail, just with a different End User License Agreement. Basically, you can’t use them as ‘production’ systems. But for testing purposes, you have no worries. This subscription is a must have for any Windows engineer who wants to stay on top of Microsoft technology.
sipX is a Linux based IP-PBX system. It provides gateway and call routing functionality between VoIP systems. It does not have functionality to connect directly to the PSTN. For that task we need Asterisk. It does, however, handle SIP/TCP, which Asterisk does not. So in our case, we will not utilise the PBX features of sipX, and merely use it as a translation service. These instructions are based on the VMWare virtual machine that can be downloaded from the VMware Appliance Marketplace. You can download VMware Server for free from http://www.vmware.com/products/server/. Alternatively, you can download sipX and install it manually from http://www.sipfoundry.org/.
Asterisk is also a Linux based IP-PBX package. It a highly customisable system, that provides all traditional PBX functionality, as well as the ability to connect to the PSTN by various means. We will connect via an external PSTN/VoIP gateway, but there is lot of documentation out there for connecting your own PSTN hardware to the Asterisk system. Once again, these instructions are based on the preconfigured VMware virtual machine downloaded from http://www.trixbox.org/. Trixbox is a preconfigured distribution of Asterisk with several easy to use management tools running on CentOS. Once again, if you prefer you can download the installation package and do a clean install, but these instructions will not cover that process. The memory requirements for the Asterisk/Trixbox and sipX server are fairly low at around 300 MB each. I have all 3 servers running in VMWare virtual machines on a Pentium D with 4GB RAM, and it runs acceptably for testing purposes.
Optional – a PSTN-VoIP service
If you want to be able to call your Exchange server from the PSTN, you will need a VOIP/PSTN gateway service. You can use an over-the-counter hardware device to make use of your existing physical phone line, or obtain a PSTN number from a VoIP provider. These instructions will detail the latter. Most ISPs these days will offer a VoIP service, and in the case of my ISP, it comes bundled with my ADSL connection. If your ISP doesn’t offer this service, there are plenty of companies out there that will. Fire up your favourite search engine and have a look in your area for VoIP providers. If you don’t want to dial in to your Exchange server from the public phone network, you can still use a soft phone from any internet connected PC to access Outlook Voice Access. Follow the instructions, but you can stop after you have installed the sipX server. Asterisk is only required if you want PSTN access.