With the recent release of Asterisk 11 I thought I’d put together an install tutorial for Asterisk 11 and Centos 6. (Also check out this Asterisk install tutorial for Ubuntu 12.4 LTS) As an LTS release Asterisk 11 has been developed for stability and long life. Additionally, Asterisk 11 boasts many great new features including WebSocket transport for SIP, chan_motif, SIP NAT traversal via ICE, Named ACLs and more! For a full list of new features, visit the Asterisk wiki. Watch the video for a screencast of my terminal session to see the install live where I explain each command step by step. The copy and paste commands can be found below.
VIDEO

For this install I am using Asterisk 11.0.0 and will be compiling from source on CentOS 6.3. This tutorial should also work on Fedora and RHEL (Red Hat Enterprise Linux) systems with little or no modification.
First, you will want to be sure that your server OS is up to date.

yum update -y

Disable SELinux by changing “enforcing” to “disabled” in /etc/selinux/config. Use a text editor or copy and paste this command.

sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config

After you update and disable SELinux, you’ll need to reboot.

reboot

Next, you will want to resolve basic dependencies. (More information on Asterisk dependencies.)

yum install -y make wget openssl-devel ncurses-devel  newt-devel libxml2-devel kernel-devel gcc gcc-c++ sqlite-devel libuuid-devel

Change into the /usr/src/ directory to store your source code.

cd /usr/src/

Download the source tarballs. These commands will get the current release of DAHDI 2.6, libpri 1.4 and Asterisk 11.

wget https://downloads.Asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
wget https://downloads.Asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz
wget https://downloads.Asterisk.org/pub/telephony/Asterisk/Asterisk-11-current.tar.gz

Extract the files from the tarballs.

tar zxvf dahdi-linux-complete*
tar zxvf libpri*
tar zxvf Asterisk*

For the next set of commands it is important to follow the proper order: DAHDI first, then libpri, then Asterisk.
Install DAHDI.

cd /usr/src/dahdi-linux-complete*
make && make install && make config

Install libpri.

cd /usr/src/libpri*
make && make install

Change to the Asterisk directory.

cd /usr/src/Asterisk*

In the next step, running the “configure” script will vary depending on whether your system is 32-bit or 64-bit. (Watch the video for more details.) When the menuselect command runs, select your options, then choose “Save and Exit” and the install will continue.
Use this command if you are installing Asterisk on 32bit CentOS.

./configure && make menuselect && make && make install

Use this command if you are installing Asterisk on 64bit CentOS.

./configure --libdir=/usr/lib64 && make menuselect && make && make install

Optional: If you ran into errors you will want to clean the install directory before recompiling.

make clean && make distclean

Once you have an error-free install, copy the sample files from the configs subdirectory into /etc/Asterisk.

make samples

Then add the Asterisk start script to the /etc/init.d/ directory

make config

Start DAHDI.

service dahdi start

Start Asterisk.

service Asterisk start

Connect to the Asterisk CLI.

Asterisk -rvvv

Next Steps

And now you have Asterisk 11 running on CentOS 6! If you’d like to continue configuring Asterisk you can check out this guide to setting up basic pbx functionality or leave a comment to share your thoughts below! You can also check out some of our training and certification options.