Configuración de Asterisk
Configuración de Asterisk
Configuración de Asterisk
7
Este documento es una guía para el proceso de instalación de uno de los servidores de voz ip
VOIP “Voice Over Internet Protocol” mas utilizados en las compañias manejado por linea de
comandos sin tipo de interfaz web que facilite su uso.
Asterisk es un software libre que permite a un servidor linux trabajar como una central telefónica
y administrar llamadas.
En este caso se realizará la instalación de un servidor Centos 6.7, un equipo windows cliente
configurado con una extensión y un celular andrioid (puede ser un iphone) configurado con una
extensión para realizar las pruebas de llamadas.
El anterior escenario se puede repetir por medio de algun sistema de virtualización y una
conexión compartida de red inalámbrica para garantizar que tanto los equipos de computo
como el telefono movil se encuentren en el mismo segmento de red (Virtualización en modo
bridge).
Proceso de Instalación
Es posible que en internet se encuentren muchos tutoriales de instalación de asterisk indicado
la manera de hacerlo por medio de la descarga de los paquetes libpri, dadhi y asterisk, para su
posterior compilación e instalación por medio de los comandos make clean && make all &&
make install && make config; sin embargo han ocurrido repitidos fallos, es por ello que se
sugiere que la instalación se realice por medio de la configuración de los repositorios de asterisk
para evitar tropiezos y desgaste por parte del estudiante.
cd /etc/yum.repos.d
vim /centos-asterisk.repo
Se oprime la letra i para entrar en modo INSERTAR. El archivo debe contener la siguiente
informacion.(En este tutorial se hara referencia al uso de vim como editor de texto. Ver link No
1 del final del tutorial.)
[asterisk-tested]
baseurl=http://packages.asterisk.org/centos/$releasever/tested/$basearch/
enabled=0
gpgcheck=0
#gpgkey=http://packages.asterisk.org/RPM-GPG-KEY-Digium
[asterisk-current]
baseurl=http://packages.asterisk.org/centos/$releasever/current/$basearch/
enabled=1
gpgcheck=0
#gpgkey=http://packages.asterisk.org/RPM-GPG-KEY-Digium
Luego de haber ingresado la anterior información, se realiza una salida del modo inserción con
la tecla escape y se digita el siguiente comando para guardar y salir de vim.
:x!
Tambien es necesario crear el archivo con nombre centos-digium.repo para ello ingresamos el
siguiente comando:
vim centos-digium.repo
[digium-tested]
baseurl=http://packages.digium.com/centos/$releasever/tested/$basearch/
enabled=0
gpgcheck=0
#gpgkey=http://packages.digium.com/RPM-GPG-KEY-Digium
[digium-current]
baseurl=http://packages.digium.com/centos/$releasever/current/$basearch/
enabled=1
gpgcheck=0
#gpgkey=http://packages.digium.com/RPM-GPG-KEY-Digium
Luego de haber ingresado la anterior información, se realiza una salida del modo inserción con
la tecla escape y se digita el siguiente comando para guardar y salir de vim.
:x!
yum update
una vez se verifica en el repositorio la existencia del paquete se le debe dar la tecla y + ENTER
para confirmar la descarga y la instalación (Si se quiere realizar una instalación sin interacción
solo basta con darle yum install –y asterisknow-version), esto se debe realizar cuando salga una
ventana como la que se muestra a continuación :
Una vez culmine la instalación observamos utilizando el comando ls sobre el directorio actual
que se crearon los siguientes archivos de repositorios:
Si se observa en detalle quedaron todos los repositorios de las versiones disponibles para
instalación de asterisk que existen a la fecha.
3. INSTALACION DE ASTERISK
En este caso en particular se realizará la instalación de la última versión disponible que es la
versión 13 en caso de NO indicarle la versión se instalará la versión 11 de asterisk, para realizar
la instalación se debe digitar el siguiente comando:
Luego de unos minutos el proceso culminará con una ventana como la que se muestra a
continuación:
Para garantizar que cuando se ejecuten las actualizaciones de asterisk estas se hagan en la
versión trece se debe digitar el siguiente comando para activarlo:
4. CONFIGURACIÓN DE ASTERISK
En este punto se realizarán las configuraciones en los archivos extensions.conf, sip.conf
y voicemail.conf para poder configurar los clientes que se conectarán en el servidor con
las extensiones 333 y la 666.
4.1 extensions.conf
Ingresamos al directorio /etc/asterisk con el comando y editamos el archivo extensions.conf
con los siguientes comandos:
cd /etc/asterisk
vim extensions.conf
Una vez estemos adentro del archivo, se debe ingresar la siguiente información desde
la última línea(utilizar el comando :$)
4.2 sip.conf
En el archivo sip.conf se puede configurar el idioma con el que trabajaran los clientes
por tanto se modifica el parámetro language=es en la línea número 340 (dentro de vim
se puede configurar la visualización de las líneas con el comando :set number, también
se puede llegar a la línea directamente con el comando :340).
Al final del archivo sip.conf se ingresan los siguientes datos para la creación de dos
extensiones, la extensión 333 y la extensión 666 esto se hace con el comando:
vim sip.conf
El parámetro secret hace referencia a la clave de la extensión que será solicitado por los
clientes. (Para ver mayor detalle de los parámetros se puede hacer al ingresar en el link
No 3 que se encuentra al final de este tutorial).
4.3 voicemail.conf
Se ingresa al archivo voicemail.conf
vim voicemail.conf
asterisk –rvvvvvvvvvvv
Ahora para el monitoreo de los clientes se debe digitar el comando sip show peers.
La imagen anterior muestra todos los clientes conectados al servidor, para nuestro caso
hasta el momento no se muestran los clientes debido a que no se han configurado los
softphone, por consiguiente es necesario realizar los siguientes puntos que describen el
proceso de instalación de xlite y zoiper, una vez terminado esa instalación en los clientes
se debe ejecutar el comando sip show peers en el servidor asterisk nuevamente.
En este momento ya todo esta listo por tanto lo que se debe hacer es realizar una
llamada para establecer la comunicación, recordar que en el servidor asterisk es
necesario digitar el comando sip show peers para monitorear el estado de los clientes
los cuales en este momento deberia aparecer conectados.
6. LECCIONES APRENDIDAS
Se recomienda para la realización de este tutorial deshabilitar algunos items de
seguridad con los que trabaja Linux tales como SELINUX E IPTABLES.
6.1 Selinux
6.2 iptables
Por sus características de seguridad en Linuxn el daemon(Disk Execution and Monitor)
de iptables queda siempre activo para garantizar la protección de la máquina, para este
laboratorio esto nos puede causar inconvenientes ya que podría impedir la
comunicación con los clientes por lo tanto el daemon se debe parar y deshabilitar de la
siguiente manera.
La anterior sugerencia solo se hace para fines de esta práctica ya que en ambientes
corporativos es necesario realizar un aseguramiento detallado en el firewall iptables y
otras configuraciones adicionales como el uso de portsentry y fail2ban para evitar que
intrusos ingresen al servidor y puedan realizar acceso abusivo al sistema.
Si quiere profundizar en temas de seguridad para ambientes voip se puede consultar los
links No 5 y 6 que se encuentran al final del tutorial.
7. WEB GRAFÍA
1. http://climax-imo.blogspot.com.co/2011_04_01_archive.html
2. http://blog.desdelinux.net/guia-para-instalar-y-configurar-asterisk-en-centos-6-6/
3. http://www.axelko.com/techblog/2013/09/curso-asterisk-iii-extensiones-internas/
4. http://pbxinaflash.com/community/threads/avantfax-what-do-these-errors-in-my-log-
mean.18172/
5. http://busy-tone.org/
6. http://blogs.elastix.org/doc-seguridad/