You are on page 1of 27

Instalación de

Asterisk

Jennifer Julieth Murillo


Areiza Este documento contiene de forma detallada la instalación
de Asterisk Bajo Centos 5.5
Sys Admin

Medellín-2011
Tabla de contenido

Introducción ...................................................................................................................... 1
Objetivo ......................................................................................................................................... 2
1. Conceptos Básicos ............................................................................................................ 3
2. Topología De Red..................................................................................................4
3. Direccionamientos de Red ....................................................................................5
4. Instalación de Asterisk.............................................................................................6
4.1 Instalación de Dependencias .............................................................................................................. 6
4.2 Instalación de lipri ................................................................................................................................ 7
4.3 Instalación de Dahdi-linux.................................................................................................................. 9
4.4 Instalación de Dahdi-Tools .............................................................................................................. 11
4.5 Instalación de Asterisk-linux ............................................................................................................ 13
4.6 Instalación de Asterisk-Addons ....................................................................................................... 20

5. Instalación de FreePBX ......................................................................................... 22


5.1 Configuracion de Mysql .................................................................................................................... 22
5.2 Configuracion de Apache ................................................................................................................. 23
5.3 Configuracion de PHP ...................................................................................................................... 24
5.4 Instalcion de FreePBX ...................................................................................................................... 24

Asterisk en Centos 5.5


1
Introducción

Asterisk es un software que se encuentra bajo la licencia GPL. Sirve para configurar Centrales
Telefónicas con capacidad de trabajar sobre IP. Como cualquier centralita se puede conectar a la
„PSTN‟ y tiene características como „Llamada en espera‟, „Buzón de Voz‟, „Conferencias‟, „IVR‟, etc.
que con la telefonía convencional estos se adquieren mediante la compra y tiene un precio no muy
asequible.

Siendo Asterisk una oportunidad de negocio muchas empresas se han dedicado al desarrollo de
componentes de hardware compatible con asterisk, entre ellas las tarjetas PCI para poder interconectar
la centralita con la PSTN (Red Publica Telefónica).

Objetivo

Realizar la configuración de Asterisk 1.4 en una plataforma Linux, puntualmente Centos 5.5. Para llevar
a cabo dicho objetivo me apoyare en algunas aplicaciones como VirtualBox y Asterisk 1.4, con el fin de
poder realizar las configuraciones pertinentes de la centralita.

Asterisk en Centos 5.5


2
1. Conceptos Básicos

Protocolo de Señalización: Son los encargados de establecer y mantener la comunicación


„Llamada‟ arriba. Entre ellos están SIP, IAX, H.323 etc., y son soprtados por asterisk.

Protocolo de Transporte de Voz: Es llamado RTP “Real-Time Transport Protocol” su función es


transportar la voz en el menor retraso posible.

Codecs: Su función es adaptar informacio digital de la voz para obtener un beneficio. El beneficio
seria la compresión de la voz para utilizar menos ancho de banda.

Algunos Codec Soportados por Asterisk.

G.711: Es uno de los códec mas usado en todos los tiempos, fue liberado en 1972. Una de las
características principales es la calidad de la voz, debido a que casi no la comprime. Utiliza 64Kb/s. Es
recomendado para trabajar en entornos LAN, pero no para utilizarlo en redes remotas por su alto
consumo de ancho de banda.

G.729: La ventaja básicamente es su alta compresión y bajo consumo de ancho de banda. Aunque
comprime mucho la voz, no deteriora la calidad de la voz. Utiliza 8Kb/s por canal. Para la utilización
de este códec hay que comprar una licencia en el Sitio Web de Digium.

FreePBX: Interface gráfica para administrar Asterisk

Libpri: Bibliotecas de Código Abierto que se utilizada para comunicarse con interfaces RDSI.

Dadhi Linux: Dispositivo de Código abierto que contiene los modulos necesarios para poder
administrar las tarjetas FXS/FXO

Dadhi-Tools: Herramientas para configurar y administrar los módulos.

Asterisk Add-Ons: Incluye controladores de código abierto y servicios públicos como soporte parta
reproducción de mp3 y conexión con MYSQL en tiempo real

Asterisk en Centos 5.5


3
2. Topología de Red

Asterisk en Centos 5.5


4
3. Tabla de Direccionamiento

Nombre Interface Dirección IP Mascara Gateway


PBX Eth0 192.168.8.215 255.255.255.0 192.168.8.1
Cliente Eth0 192.168.8.60 255.255.255.0 192.168.8.1

Asterisk en Centos 5.5


5
4. Instalación Asterisk

4.1 Instalación de Dependencias

Antes de comezar con la instalación de las fuentes de Asterisk es necesario instalar algunos paquetes
que esta necesita para su correcta instalación y funcionamiento. Para empeza entramos a una termianal
como usuario root y acyualizamos los repositorios con yum –y update y después se instala lo siguiente.

[root@pbx] # yum -y install yum-fastestmirror yum-downloadonly yum-utils e2fsprogs-devel


keyutils-libs-devel krb5-devel libogg libselinux-devel libsepol-devel libxml2-devel libtiff-devel
gmp php php-devel php-pear php-pear-DB php-gd php-mysql php-pdo ncurses-devel
audiofile-devel libogg-devel openssl-devel mysql-devel zlib-devel perl-DateManip sendmail-cf
spandsp freetds freetds-devel spandsp spandsp-devel openssl-devel newt-devel libtermcap-
devel ncurses-devel libcap-devel gtk2-devel doxygen graphviz graphviz-gd speex-devel libogg-
devel libvorbis-devel gsm-devel bison bison-devel ncurses ncurses-devel zlib zlib-devel openssl
openssl-devel gnutls-devel gcc gcc-c++ libxml2* php-gd* php-mysql* openssl* perl-CPAN
perl ncurses-devel* audiofile-devel* curl* sox iksemel-devel mISDN-devel bluez-libs-devel
libtool-ltdl-devel unixODBC-devel postgresql-devel radiusclient-ng-devel net-snmp-devel
lm_sensors-devel uw-imap-devel zaptel-devel libpri-devel bind bind-chroot bind-devel bind-
libs bind-utils system-config-bind nedit k3b libtiff* ghostscript* gs zlib* zziplib* gawk jbigkit*
mgetty* tesseract tesseract-langpack-es expect* libpng* psutils* postfix ImageMagick* htop*
php-mbstring php-pecl-Fileinfo re2c xxdiff* rapidsvn

Asterisk en Centos 5.5


6
4.2 Instalación de libpri

Para comenzar, ingresamos a /usr/src/asterisk/ y estando acá descargamos los paquetes de la página
oficial de Asterisk. Como la carpeta asterisk no está en ese directorio, la creamos.

Se descarga libpri de la página oficial.

Luego se descomprime.

Asterisk en Centos 5.5


7
Entramos al directorio y se instala el paquete.

Asterisk en Centos 5.5


8
4.3 Instalación de Dadhi-Linux

Se descarga de la pagina oficial

Se descomprime

Asterisk en Centos 5.5


9
Se instala.

Si instala correctamente terminara asi

Asterisk en Centos 5.5


10
4.4 Instalación de Dadhi-Tools

Se descarga de la Página Oficial

Se descomprime.

Asterisk en Centos 5.5


11
Se instala.

Asterisk en Centos 5.5


12
4.5 Instalación de Asterisk-Linux

Se descarga de la página Oficial

Se descomprime.

Asterisk en Centos 5.5


13
Se empieza la instalación, este proceso demora un poco así que paciencia.

Si todo termino bien debe quedar asi.

Antes de instalar asterisk vamos a ingresar al menú de configuración, aquí vamos a seleccionar que se
quiere instalar al momento de la instalación. Ingresamos así,

Asterisk en Centos 5.5


14
Y nos aparecerá un menú como el siguiente.

Estando acá vamos a ir a “Core Sound Packages” y seleccionamos lo que hay en la imagen.

Asterisk en Centos 5.5


15
Y seleccionamos estos Tambien.

Después de esto, si podemos darle make install, debido a que se seleccionaron algunos paquetes
adicionales es necesario que haya conexión a internet para que se puedan descargar e instalar
correctamente.

Asterisk en Centos 5.5


16
Asterisk en Centos 5.5
17
Si todo termino bien saldrá algo así.

Asterisk en Centos 5.5


18
Ahora instalamos los Ejemplos de asterisk con make samples.

Asterisk en Centos 5.5


19
4.6 Instalacion de Asterisk-Addons

Se descarga de la pagina oficial

Se Descomprime

Asterisk en Centos 5.5


20
Se empieza la instalacion

Asterisk en Centos 5.5


21
5. Instalación de FreePBX.

5.1 Configuración de Mysql

Lo que se va a hacer con mysql es crear unas bases de datos que freepbx necesita para su correcto
funcionamiento.

Cambiar la contraseña de usuario root de mysql.

[root@pbx]# mysqladmin –uroot password „laboratorio‟

Ingresamos a la consola de mysql asi

[root@pbx asterisk-1.4.40]# mysql -u root -p


Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>CREATE DATABASE asteriskcdrdb;


Query OK, 1 row affected (0.00 sec)

mysql> CREATE DATABASE asterisk;


Query OK, 1 row affected (0.01 sec)

#Asiganamos privilegios

mysql> GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED


BY 'laboratorio'
-> ;
Query OK, 0 rows affected (0.01 sec)

mysql> GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY


'laboratorio'
-> ;
Query OK, 0 rows affected (0.00 sec)

mysql> GRANT ALL PRIVILEGES ON asterisk.* TO asterisk@localhost IDENTIFIED BY


'laboratorio'
-> ;
Query OK, 0 rows affected (0.00 sec)

mysql> GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asterisk@localhost IDENTIFIED BY


'laboratorio'
-> ;
Query OK, 0 rows affected (0.00 sec)

Asterisk en Centos 5.5


22
mysql> FLUSH PRIVILEGES
-> ;
Query OK, 0 rows affected (0.00 sec)

Reiniciamos el servicio de Mysql y con chkconfig mysqld on ponemos el servicio para que siempre se
inicie cuando se esté iniciando el sistema.

Luego vamos a /usr/src/asterisk/freepbx -2.9.0beta2 creamos las siguientes tablas.

[root@pbx] # mysql -u root -plaboratorio asteriskcdrdb < SQL/cdr_mysql_table.sql

[root@pbx] # mysql -u root -plaboratorio asterisk < SQL/newinstall.sql

5.2 Configuración de Apache

Creamos un usuario llamado asterisk y le configuramos el home directory en /var/lib/asterisk

[root@pbx] # useradd -c "Asterisk PBX" -d /var/lib/asterisk asterisk

Creamos estos directorio y le damos permisos de grupo a estos directorios.

[root@pbx] # mkdir /var/run/asterisk


[root@pbx] # mkdir /var/log/asterisk
[root@pbx] # chown -R asterisk:asterisk /var/run/asterisk
[root@pbx] # chown -R asterisk:asterisk /var/log/asterisk
[root@pbx] # chown -R asterisk:asterisk /var/lib/php/session

Ingresamos a /etc/httpd/conf/http.conf, buscamos línea 231 y cambiamos apache por asterisk en User
y en Group

Guardamos, cerramos y reiniciamos el servicio de apache.

Asterisk en Centos 5.5


23
5.3 Configuración de PHP

Ingresamos a /etc/php.ini y buscamos la línea que se llama „upload_max_filesize = 2‟ el 2 lo


cambiamos por 100.

5.4 Instalación de FreePBX

Ingresamos al directorio /usr/src/asterisk/freepbx-2.9.0beta2, aquí iniciamos el asterisk asi.

[root@pbx] # ./start_asterisk_start

STARTING ASTERISK
Asterisk Started

Si nos sale igual que la imagen podemos seguir con el siguiente paso.

Ahora iniciamos la instalación de frerpbx asi.

[root@pbx] # ./install_amp

Checking for PEAR DB..OK


Checking for PEAR Console::Getopt..OK
Checking for libasteriskperl (perl bindings for asterisk)…Checking user..OK
Checking for /etc/amportal.conf../etc/amportal.conf does not exist, copying default
Creating new /etc/amportal.conf
Enter your USERNAME to connect to the „asterisk‟ database: [asteriskuser]
Enter your PASSWORD to connect to the „asterisk‟ database: [laboratorio]
Enter the hostname of the „asterisk‟ database: [localhost]
Enter a USERNAME to connect to the Asterisk Manager interface: [admin]
Enter a PASSWORD to connect to the Asterisk Manager interface:[laboratorio]
Enter the path to use for your AMP web root:[/var/www/html]
Enter the path to use for your FOP web root:[/var/www/html/panel]
Created /var/www/html/panel
Enter the path to your Apache cgi-bin:[/var/www/cgi-bin]
Enter the IP ADDRESS or hostname used to access the AMP web-admin:[192.168.X.X]-» Acá
colocamos la ip de nuestro Asterisk
Flash Operator Panel: [passw0rd]
Use simple Extensions [extensions] admin or separate Devices and Users [deviceanduser]? extensions
Enter directory in which to store AMP executable scripts: [/var/lib/asterisk/bin]
Created /var/lib/asterisk/bin
Enter directory in which to store super-user scripts: [/usr/sbin]
/etc/amportal.conf writtenOK
Reading /etc/amportal.conf..OK
Checking for /etc/asterisk/asterisk.conf../etc/asterisk/asterisk.conf does not exist, copying default
OK
Module dashboard successfully enabled
installed
Please update your modules and reload Asterisk by visiting http://192.168.X.X/asterisk

Asterisk en Centos 5.5


24
Ingresamos por el navegador a la pagina de freepbx

Damos click en FreePBX Administration

El usuario y la contraseña son „admin‟ „admin‟, por defecto.

Asterisk en Centos 5.5


25
Y listo Asterisk y FreePBX en Centos 5.5 Instalado Correctamente listo para empezar a
administrar.

Asterisk en Centos 5.5


26