D Setting up a SIP server with Asterisk


In order to set up the asterisk server we will use the Intel NUC.

We have proposed, installed and studied the following operative systems:

-FreePBX 13
-FreePBX 12
-FreePBX 6
-Elastix 2.5
-Elastix 3 (MT)
-AsteriskNow 6.12
-Debian server (20/02/2015)
-Ubuntu server 14.04.2

After an exhaustive analysis of the hardware supported by each operative system and the specifications of our Intel NUC we have obtained the next limitations:

Limitations:

USB 3.0 problems

Most of the operative systems based on CentOs 6.5 or lower had problems of compatibly with the USB 3.0 ports of our NUC. As the installation may be achieved by USB (both with a pendrive or an usb DVD player). THis generates a frozen state of the kernel while loading at the first set up of the system. Lower versions of CentOS don't have this problem. A workaround is to disable from grub with the following command:

enable.xchi_hcd=0

Ethernet Card:

Most of the Cent OS 6.5 based distributions were incompatible with the Ethernet of our NUC. A manual upgrade of the drivers were not a solution. We discarded most of the O.S due to this limitation.

CPU:

The CPU of our Intel NUC wasn't sopported by CentOS 6.5, while it managed to control it without known issues.

An upgrade of the BIOS have been performed during the installation of the server to the version 35.

FreePBX

Due to this limitations the native CentOS 6.5 distribution didn't work. As FreePBX presented some advantages (easy configuration through web) we managed to install it over a debian and an ubuntu server. However, the limitations that it adds to the manual configuration of Asterisk, and the several bugs that we have spotted forced us to avoid it.

Conclusion and set up of the server

After the study, Ubuntu 14.04.2 has been chosen to hold an asterisk server.

1.Installation of the ubuntu server and dependencies:

Ubuntu server with openssh have been installed using the DVD lector.

After that, the following dependencies and upgrades have been carried out:

sudo apt-get update; sudo apt-get upgrade -y; sudo apt-get dist-upgrade -y; sudo apt-get install -y build-essential git-core pkg-config subversion libjansson-dev sqlite autoconf automake libtool libxml2-dev libncurses5-dev unixodbc unixodbc-dev libasound2-dev libogg-dev libvorbis-dev libneon27-dev libsrtp0-dev libspandsp-dev libmyodbc uuid uuid-dev sqlite3 libsqlite3-dev;sudo shutdown -r now

2.Installation of Asterisk 13:

We downloaded it with wget and compiled it:

wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz
tar xvfz asterisk-13-current.tar.gz
cd asterisk-*
./configure
make menuselect
make && make install && make config && make samples
ldconfig

In our case wgetrc file have been configured to deal with the proxy of our internet provider (before the satellite connection)

An extensive and clear guide to add more modules can be found in the following link: http://www.mikeslab.net/?p=330

3.Start asterisk

In order to run asterisk we only need to run:

asterisk

or:

astrisk -rvvvvvv

If we want to get some feedback from the running server.