Instalacion Y Configuracion ASTERISK
Enviado por WIGONZALEZ85 • 14 de Agosto de 2012 • 3.988 Palabras (16 Páginas) • 768 Visitas
Instalación y Configuración de Asterisk
<Moisés Silva> moy@ivsol.net
TODO:
Tipo de Propuesta: Taller - 4 Horas
Track: Aplicaciones
Resumen:
Es importante que las comunicaciones sean abiertas. Por lo tanto es importante apoyar el software libre.
Mas aún el software libre que se encarga de hacer posible la comunicación. Asterisk se ha posicionado en pocos
años como algo mas que un PBX; es un servidor de comunicaciones increiblemente flexible. Durante este taller
mostraremos como configurar Asterisk para poner en marcha tu propio PBX. Explicaremos las diferencias y el papel
que juegan los distintos protocolos que pueden ser utilizados para VoIP.
Durante esta sesión técnica se tocarán los siguientes puntos:
* Instalación de Asterisk en GNU/Linux (preferentemente Gentoo Linux)
* Configuración de extensiones SIP, IAX (si hay recursos, Zap, Unicall)
* Configuración de los patrones de marcado.
* Configuración de transferencia asistida y otros servicios (features.conf)
* Uso de los manejadores CDR.
* Uso apropiado de los CODECs
* Ejemplo de uso de diversas aplicaciones (Voicemail, MeetMe etc)
* Conexiones IAX2, tipos de autorización (RSA, plain, md5)
1. Instalación de Asterisk (y otros paquetes necesarios) (1 hora)
Asterisk es un PBX (Private Branch Exchange) basado completamente en software. Funcionalidad que
durante mucho tiempo se hacia utilizando circuitos electrónicos de conmutación ha empezado a desarrollarse en
software, volviendo los equipos mas flexibles, configurables y baratos. La instalación de Asterisk en GNU/Linux no
difiere mucho de la instalación de cualquier otro servicio. Antes de instalarlo veremos como esta constituida la
arquitectura general de Asterisk. En el siguiente diagrama he plasmado los conceptos que considero mas importantes
y que tocaremos a lo largo de este taller.
Si nuestro deseo fuera unicamente instalar Asterisk para servicios puramente VoIP. La parte del diagrama
que involucra chan_zap, chan_unicall y los drivers de zaptel desaparecerían. Sin embargo normalmente es necesario
conectarnos a redes tradicionales como la red telefónica pública conmutada, RTPC o PSTN por sus siglas en inglés.
Por esta razón necesitamos algunas dependencias mas. Los siguientes paquetes son necesarios para nuestra
instalación.
sqlite 2.x ( utilizaremos el sencillo manejador de CDR para SQLite)
zaptel-1.2.5 (drivers para el funcionamiento de tarjetas telefónicas PCI )
asterisk-1.2.7.1
kiax, kphone (o cualquier otro par de softphones SIP e IAX)
En gentoo basta utilizar los "use flags" apropiados y ejecutar el comando "emerge asterisk". Para ver las banderas
disponibles y cuales se encuentran habilitadas ejecuta "emerge asterisk -pv", cualquier bandera extra que desees
agregar o eliminar puedes hacerlo editando el archivo "/etc/portage/package.use". Dependiendo de las banderas
gentoo decidira las dependencias adecuadas para Asterisk y los softphones.
Para instalarlo a mano, descomprime los archivos .tar.gz con el comando
tar -xvpzf <nombre del archivo>
Para el caso de zaptel el siguiente comando lo instalará:
make linux26
make install
Asterisk necesita:
make install
La compilación puede tomar minutos mas, minutos menos dependiendo de la velocidad de tu procesador, o de si
compartes la compilación utilizando servicios como distcc. Mientras se compila, pasemos a revisar los archivos de
configuración y directorios mas importantes que se instalarán.
/etc/asterisk
En este directorio se encuentran todos los archivos necesarios para configurar la gran cantidad de servicios que
Asterisk provee. Tomaría mucho tiempo revisar todos estos servicios, por lo que nos concentraremos en los mas
importantes.
asterisk.conf > configuraciones generales de la ubicación de directorios de configuraciones, módulos
compilados, voicemails etc. En general es buena idea no modificar estas configuraciones, salvo casos
especiales.
cdr.conf > Configuraciones referentes al "Call Detail Record". Los CDR son sumamente importantes para
las compañias telefónicas. Modificar datos en este archivo puede repercutir en la integridad de los CDR si
no estás seguro de lo que haces. Si tu instalación es unicamente de prueba, o los CDR no son materia
importante, no hay problema.
codecs.conf > A menos que utilices SPEEX, o quieras hacer cosas especiales con la forma en la que los
codecs se comportan, es mejor no modificar este archivo.
extconfig.conf > Archivo para mapear archivos de configuración hacia tablas en alguna base de datos, de
forma que no es necesario guardar las configuraciones en archivos. Mas adelante hablaremos un poco mas
acerca de esto.
extensions.conf > Tal vez el archivo mas importante de Asterisk. En este archivo se toman las decisiones de
ruteo de las llamadas. Mas adelante veremos la sintaxis de este archivo y hablaremos sobre extensions.ael
features.conf > Este archivo es también muy importante. Permite habilitar y configurar servicios genéricos
de un PBX como la transferencia asistida y monitoreo de llamadas.
iax.conf > Importante archivo para el funcionamiento del canal chan_iax que le permite a Asterisk
interactuar con otros dispositivos IAX, incluyendo otros PBX Asterisk.
indications.conf > Configuraciones para los grupos de frequencias a utilizar para la indicacion del proceso
de las llamadas. Los defaults suelen ser suficiente.
logger.conf > Que nivel de verbosidad deben tener los mensajes de log y a donde deben ser enviados.
manager.conf > Configuración del importante servicio AMI (Asterisk Manager Interface) que permite
conectarnos a un socket TCP y manejar el PBX. De cierta forma se encuentra relacionado con el archivo
http.conf, que provee de una interface para programar aplicaciones con AJAX que se comuniquen
directamente con AMI.
modules.conf > Archivo sumamente importante. Determina que módulos serán cargados por Asterisk al
iniciar. Es frecuente que cuando se instala asterisk por primera vez, no arranque debido a que no puede
cargar un módulo para el que no tenemos soporte. Esto se soluciona comentando la línea del módulo en
este archivo.
sip.conf > Análogo del archivo
...