Here we show you how to install a complete VoIP Server, including Linux, Asterisk and PBX Manager - Step by Step.
Suse 10 Linux Installation
Download your all five Suse 10 Open Source CD images and burn CDs from these ISO files. Alternatively you may buy a single DVD from Novell.
Insert CD #1 (or the Novell DVD) and install Linux to your local hard disk. For realtime performance reasons be sure to install only the minimal text based Linux operating systen and no graphicai user interface such as GNOME or KDE. Other than that, the basic installation steps are quite straigthforward and all proposed default settings can be accepted.
Tip: Should your Linux box hang in grub after rebooting, as observed with some modern PCs from HP, boot again from CD #1 and replace the installed grub boot manager with lilo.
Preparing Linux for Asterisk
After booting from hard disk log on as user root at the command line. Now we have to use the installation tool yast to install a C Compiler and some additional modules. You may do this interactively by calling yast without any parameters or by entering the following commands:
yast -i ncurses-devel
yast -i zlib-devel
yast -i glibc-devel
yast -i gcc
yast -i kernel-source
yast -i openssl-devel
yast -i samba
The Samba Server comes in handy to access the Linux file system directly from any Windows PC over the network. In order to get Samba working you have to configure /etc/smb.conf, which can be done with the vi editor:
Look for the line workgroup = xxx and replace it with the name of your Windows Workgroup or Microsoft Domain, for example:
workgroup = geotek
At the end of this file add the following lines:
path = /
valid users = root
public = no
writable = yes
directory mask = 777
Save the edited file and leave vi by pressing the following keys exactly as noted:
(Esc):wq(Enter). To leave vi without saving any changes enter: (Esc):qa!(Enter)
Admittedly this vi editor has good chances to win the fist price in a contest for the worst and most un-intuitive user interface, but after Samba is running there is no need to ever use vi again. :-) Now we need to add root as a valid Samba user, give him a password and ensure that Samba runs automatically at system start:
smbpasswd -a root (you will be prompted for a password)
chkconfig smb on
chkconfig nmb on
In order to access the Linux partition over the network you have to modify or shut off the Suse Linux firewall. Use yast, go to Security.. / Firewall, stop the firewall and set its startup mode to manual.
After your Linux Server is restarted by entering reboot oder shutdown -r now you should be able to see the root share in the Netzwerk Neighborhood of any Windows PC on the local network. If not, try to map a network drive similar to: \\192.168.1.100\root, replacing 192.168.1.100 with the IP Address of your Linum server. Use this drive to copy the downloaded Webmin installation file to /usr/src and install it according to the following example (adjust the version numbers accordingly):
rpm -i webmin-1.260-1.noarch.rpm
Now you are ready to administer your Linux server from any Web Browser on the LAN. by entering the following URL: http://192.168.1.100:10000 Again, replace 192.168.1.100 with the actual IP Address of your server.
Install MP3 Support
In order to play Music-On-Hold (MOH) Linux needs to be able to decode and handle the MP3 file format. This can be done in two different ways, by installation of the classic mpg123 module or by using the new format_mp3 module contained in Asterisk Addons. Be sure to install only one of these solutions and not both!
1.) MP3 playbyck with mpg123
This is a proven and reliable solution. Without applying the patch below there is a known security issue, but the most serious drawback is the fact that mpg123 is not being actively maintained any more. Download both the latest mpg123 installation source and security patch, copy both to /usr/src und install them as follows:
rpm -i mpg123-0.59s-513.i586.rpm
rpm -i mpg123-0.59s-513.i586.patch.rpm
2.) MP3 playback with format_mp3
This is a new light-weight mp3 module found in Asterisk Addons V.1.2.3. This is a solution with a more promising future, even though it is not quite ready for production yet. The author states that is has only been tested with Solaris 2.6 and there are known issues with MP3 files encoded with LAME that may lead to Linux crashes. You should also make sure to convert your mp3 files to 8 kHz Mono format in order to avoid high CPU load. For latest installation instructions see the README inside the Asterisk Addons package.
Unless you want to install an ISDN card, you are now ready to install Asterisk.
Asterisk Installation Procedure
Download the latest Asrerisk installation sources (zaptel, libpri, asterisk, addons and sounds) and unpack them into subdirectories. Go to the Linux command line interface and install them in the following order:
If you encounter compilation or linking errors you must solve these issues before continuing otherwise you risk to mess up your installation. Use the make clean command to clean up the results of a previous, failed compilation and start over again with a new make und make install cycle.
If you have managed to get all these Asterisk modules compiled, congratulations! You are now ready to start Asterisk from the command line simply by entering asterisk. In order to interact with Asterisk from the Asterisk Command Line Interface (CLI) enter:
You will see the Asterisk welcome message and this is where you can do all Asterisk debugging and realtime modifications. Try help to see a list of the supported CLI commands. Use the restart now command to restart Asterisk after a major configuration change or (Strg)-z to go back to the Linux command level leaving Asterisk running in the background.
The installation scripts should have configured Linux so that Asterisk will be automatically started after system boot. If this does not work, here is a Workaround that may help.
PBX Manager Installation
Now this is the easyest part. Point your web browser to Webmin (http://<Linux server>:10000), go to Webmin Configuration / Webmin Modules and enter the PBX Manager installation file that you have downloaded from here. After a few seconds you will have a new Asterisk entry in the Webmin Menü Server page that may also be accessed directly via:
If this is the first time you started PBX Manager you should go to the Files Menu and deploy the standard configuration shipped with PBX Manager in order to have a basic, working default configuration to start out with.
From now on, all Asterisk configuration and management may be done directly from the graphical PBX Manager interface!