Prácticas telefonía IP - Innovacion tecnologica · ... telefónica interna pero que hacen uso de...

29
1-1-2015 Prácticas telefonía IP Practicas con Elastix - Asterisk Jesse Padilla Agudelo Adaptado por Ing. Pedro Alberto Arias Quintero SENA - CIMI

Transcript of Prácticas telefonía IP - Innovacion tecnologica · ... telefónica interna pero que hacen uso de...

1-1-2015

Prácticas telefonía IP Practicas con Elastix - Asterisk

Jesse Padilla Agudelo Adaptado por Ing. Pedro Alberto Arias Quintero SENA - CIMI

INTRODUCCIÓN

La revolución tecnológica actual, la masificación de la Internet, la evolución de las infraestructuras de red, conceptos

como la movilidad y tendencias como la computación en la nube, suponen nuevos retos de comunicación para las

empresas y la expectativa ante nuevos servicios para las usuarios.

Las comunicaciones internas y externas hoy en día se han transformado, integrando cada vez nuevos y más

avanzados servicios, pasando por la telefonía tradicional, las comunicaciones móviles, y hoy en día la voz sobre IP y

los servicios de tele-conferencia.

La voz sobre IP es un concepto simple, consiste en transmitir paquetes de voz sobre una red de datos IP, es decir,

la voz se digitaliza y se encapsula en un paquete IP, con direcciones origen y destino para transmigre sobre una red

de conmutación de paquetes, ya sea una Red LAN o una RED WAN o Internet.

La Telefonía IP es un servicio telefónico que nace a partir de la transmisión de voz en redes IP, este usa este concepto

para prestar servicios de comunicación de voz entre usuarios. Siendo este transparente para el usuario, y

caracterizándose por usar redes de conmutación de paquetes a diferencia de los servicios telefónicos tradicionales

que usan redes de conmutación de circuitos.

Esta guía de laboratorio tiene como objeto introducir al estudiante al mundo de la telefonía IP, haciendo uso de la

plataforma de Comunicaciones Unificadas Elastix. Las plataformas de comunicaciones unificadas son herramientas

que permiten en un solo paquete administrar los servicios básicos de comunicaciones de una empresa, como lo

son: El correo electrónico, la mensajería instantánea, los servicios de telefonía y Fax.

Elastix es una plataforma de comunicaciones unificadas OpenSource basada en GNU/Linux y que integra diferentes

servicios de código abierto para administrar en unos solo aplicativos servicios como telefonía sobre IP, este en

particular usando la plataforma Asterisk para el montaje, configuración y administración de Centralitas Telefónicas

o PBX IP.

Una PBX es básicamente una central telefónica que permite la administración de llamadas internas en una empresa,

y la gestión de llamadas hacia los servicios externos de telefonía, como telefonía tradicional y móvil Celular. La

característica principal es que una PBX pertenece y es administrada por una empresa privada no por un proveedor

de telefonía.

Las PBX IP son servicios de administración telefónica interna pero que hacen uso de servicios de telefonía IP y

protocolos de voz sobre IP.

En este manual de laboratorio nos encontraremos con todas las herramientas necesarias para implementar y

configurar un servicio de telefonía IP para una empresa, es decir, la configuración de una PBX IP, usando los servicios

de la plataforma Elastix.

El objetivo del laboratorio es integrar diferentes tipos de usuarios y redes en una única topología de comunicación

de voz sobre IP. En esta práctica se busca lograr una comunicación efectiva entre usuarios de telefonía tradicional,

usuarios de telefonía IP (Hardphones y Softphones) y smartphones.

Red de telefonía para práctica inicial a trabajar

Servidor Elastix -Asterisk

Swich

Teléfono IP

Teléfono IP

softphone

Tel. Análogo

Tel. Análogo

Tablet PC softphone

softphone

Esquema de Red

Laboratorio 1

Instalación Elastix Open Source Unified Communications

Server

Duración

60 Minutos.

Objetivo

Instalar la plataforma Elastix Open Source Unified Communications Server usando una máquina

virtual de Oracle Virtualbox.

Descripción

Esta práctica de laboratorio tiene como objeto principal reconocer los elementos y los pasos

necesarios para instalar un servidor con la plataforma de comunicaciones unificada Elastix. La instalación de esta herramienta se realizara usando la plataforma de virtualización Oracle Virtualbox. Elastix es una distribución GNU/Linux, de código abierto y de libre distribución, basada en la distribución orientada a servidores CentOS. Elastix se reconoce como una plataforma de Comunicaciones Unificadas porque en un solo paquete permite integra servicios de Telefonía sobre IP, servicios de Fax sobre IP, Mensajería Instantánea, correo electrónico y plataformas de colaboración; además de algunos módulos de administración de red. El núcleo de Elastix está conformado por cuatro paquetes principales de código abierto: Asterisk, software para implementar centrales PBX IP con GNU/Linux. OpenFire, sistema de mensajería instantánea que permite compartir archivos, utiliza el protocolo XMMP y está desarrollado en Java. PostFix un servidor de correo electrónico. Hylafax software servidor que permite la transmisión y recepción de Fax sobre IP. Entre las características generales de Elastix, tenemos:

1. Administración Web de la Plataforma de Comunicaciones Unificadas: PBX, FAX, IM, Mail.

2. Disponible en 22 idiomas.

3. Monitor de recursos del sistema.

4. Voicemails con soporte para notificaciones por e-mail.

5. IVR configurable y flexible.

6. Soporte para Video-teléfonos.

7. Interfaz de detección de hardware de telefonía. 8. Servidor DHCP para asignación dinámica de IPs a Teléfonos IP.

9. Reporte de detalle de llamadas.

10. Tarificación con informes de consumo.

11. Soporte para colas de llamadas.

12. Soporte protocolo SIP, IAX, H323, MGCP, SKINNY entre otros.

13. Codecs soportados: ADPCM, G.711 (A-Law & μ-Law), G.722, G.723.1, G.726, GSM, iLBC.

14. Soporte para interfaces análogas FXS/FXO.

15. Soporte para interfaces digitales E1/T1/J1 a través de protocolos PRI/BRI/R2.

16. Identificación de llamadas.

17. Troncalización.

18. Visor de Fax integrado.

19. Aplicación fax-a-email.

20. Control de acceso para clientes de fax.

21. Servidor de correo electrónico con soporte multidominio.

22. Cliente de Email basado en Web.

23. Soporte para "cuotas" configurable desde el Web.

24. Soporte antispam.

25. Soporte para manejo de listas de correo.

26. CRM completo basado en el producto vTigerCRM.

27. Entre otras más.

Descargas

Para realizar este laboratorio requerimos instalar Oracle VirtualBox (Para esta fecha

versión 4.1.16), este lo podemos obtener en el sitio oficial https://www.virtualbox.org.

Para obtener la ISO de instalación de Elastix en su última versión (Para esta fecha versión

2.3) la podemos descargar del sitio oficial http://www.elastix.org.

Desarrollo

Ejecutamos Oracle Virtualbox (En esta caso versión 4.1.16). o la deseada Damos click en el botón Nueva o la secuencia de teclas Control + N, para abrir el asistente de creación de una nueva máquina virtual de Oracle VirtualBox. Figura siguiente.

Luego de esto se abrirá el asistente para crear una nueva máquina virtual. Este asistente nos

permite configurar las características generales de la máquina, tales como nombre, tipo de

sistema operativo, memoria RAM asignada y disco duro, al final presionamos el botón siguiente

para continuar con el asistente. Figura sig.

Asignamos un nuevo nombre a nuestra máquina virtual, en este caso particular le asignaremos el

nombre “Elastix”. Como segundo paso debemos elegir el tipo de sistema operativo y versión para

garantizar que Oracle Virtualbox cree un maquina con las características necesarias para el

rendimiento adecuado del sistema operativo que deseamos instalar, en este caso seleccionamos

sistema operativo “Linux”, versión “Red Hat”. Cabe mencionar que Red Hat no es una versión de

Linux sino una Distribución GNU/Linux, solo que de esta forma Oracle Virtualbox administra todos

los sistemas operativos con los cuales es compatible; presionamos el botón siguiente para

continuar con el asistente. Figura sig.

En el siguiente paso asignaremos la cantidad de memoria RAM que usara la máquina virtual, la

cantidad de RAM seleccionada es de 512MB, esta se eligió con propósitos académicos, en un

entorno real de producción podremos requerir más cantidad de memoria, presionamos el botón

siguiente para continuar con el asistente. Figura sig.

En el siguiente paso crearemos un disco duro para la Máquina Virtual a través del asistente de

creación de disco duro. Este asistente nos permite crear un nuevo disco duro virtual o uno ya

existente, para este caso vamos a crear un nuevo disco duro para nuestra máquina virtual de

Elastix, presionamos el botón siguiente para continuar con el asistente. Figura 5. Posteriormente se nos solicita el tipo de disco duro virtual que deseamos crear, podemos crear VDI (Virtual Disk Image), VMDK (VirtualMachine Disk), VHD (Virtual Hard Disk), HDD (Disco Duro Paralles), seleccionamos la opción por defecto VDI, presionamos el botón siguiente para continuar con el asistente. Figura 6. En este paso seleccionamos el tipo de almacenamiento del disco duro “Almacenamiento Dinámico” o “Tamaño Fijo”, por propósitos académicos seleccionaremos Dinámico, presionamos el botón siguiente para continuar con el asistente. Figura 7. En el siguiente paso indicamos el tamaño del disco duro de la máquina virtual, por defecto para un sistema GNU/Linux el tamaño es de 8GB y en este caso usaremos este tamaño; el icono de Carpeta al lado de la ruta del disco duro sirve para cambiar el directorio de almacenamiento del disco duro virtual, presionamos el botón siguiente para continuar con el asistente. Figura 8.

Para Finalizar el asistente de creación de disco duro, Oracle VirtualBox nos muestra un resumen en el cual nos indica las características generales del disco duro que vamos a crear, si deseamos cambiar algo podemos presionar el botón anterior y modificar la configuración, si estamos seguros de los datos ingresados presionamos el botón Crear. Como se muestra en la Figura sig.

Para finalizar el proceso, el último paso para crear la máquina virtual nos muestra un resumen

general con los detalles asignados en el proceso seguido por el asistente. Si deseamos cambiar

algo podemos presionar el botón anterior y modificar la configuración, si estamos seguros de los

datos ingresados presionamos el botón Crear. Como se muestra en la Figura sig.

Este proceso nos lleva de regreso a la pantalla inicial de Oracle Virtualbox, presionamos el botón

Iniciar, el cual nos lleva al asistente de la primera ejecución. Este asistente se ejecuta con el

propósito de instalar el sistema operativo de la máquina virtual o correrlo desde otro medio como

un LiveCD. Presionamos el botón Siguiente para continuar con el asistente. Figura 11. En la Figura 12 podemos observar como Oracle Virtualbox nos solicita el medio de instalación que

puede ser un CD/DVD cargado en la unidad real del equipo anfitrión, o un archivo ISO almacenado

en el equipo. Podemos seleccionar el icono de carpeta de la ventana, con este podemos explorar

en el equipo y buscar el archivo ISO de Elastix 2.3; presionamos el botón siguiente para iniciar el

proceso de instalación de la distribución. Al realizar este proceso Oracle Virtualbox muestra el resumen de la primera ejecución, si

deseamos cargar este medio de instalación presionamos el botón Iniciar, si deseamos cambiarlo

podemos presionar el botón Anterior y seleccionar otro. Figura 13.

Al ejecutar por primera vez la máquina virtual el disco de instalación de Elastix nos muestra la

pantalla de booteo, presionamos la tecla Enter para continuar con la instalación de la distribución. Figura sig.

El siguiente paso de instalación de Elastix nos solicita el idioma de instalación. Figura sig

Buscamos con el teclado presionando la tecla “S” o las flechas del teclado el idioma español

(Spanish) y presionamos la tecla OK. Figura sig

El siguiente paso de la instalación solicita el tipo de teclado que posee nuestra máquina, para recordar un poco el teclado Español tiene la @ (arroba) ubicado en la tecla del número 2 (dos) y el teclado Latinoamericano tiene la @ (arroba) ubicado en la tecla Q. Para seleccionar el tipo de teclado, presionamos la tecla “E o L” para seleccionar el teclado ES o LATIN y presionamos la tecla OK.

A continuación el instalador de Elastix indica que no ha encontrado una tabla de particiones y que debe ser creada, lo que implica que debemos borrar todo el disco y crear una tabla con particiones nuevas. Si no estamos seguros de este paso debemos revisar el estado de nuestras particiones, para este caso no hay ningún problema dado que es un disco duro virtual sin datos previos. Presionamos el botón Si para continuar con el proceso de instalación.

El siguiente paso en el proceso de instalación corresponde al Tipo de Particionamiento, esta

opción del proceso permite diseñar las particiones para la instalación, el instalador de Elastix

permite crear un esquema de particionamiento personalizado y usar la opción de

particionamiento por defecto que crea un diseño predeterminado con particiones proporcionadas

al tamaño del disco duro. Para la práctica utilizaremos la opción “Espacio Disponible en

dispositivos seleccionados y crear diseño predeterminado”, dejamos seleccionado nuestro disco

duro de Oracle Virtualbox y presionamos el botón aceptar como muestra

Elastix nos pregunta si deseamos revisar el diseño predeterminado de particiones y modificarlo, si

así es podemos presionar el botón Si, si deseamos continuar como en este caso aceptando el

diseño personalizado presionamos el botón.

Luego de revisar la tabla de particiones Elastix, el instalador nos sugiere configurar las interfaz de red Eth0 o Ethernet 0, esta proceso se puede omitir dando click en el botón No y luego configurar el direccionamiento al finalizar el proceso de instalación o dar click en Sí y configurarlo de inmediato. Para este caso la opción elegida es Si como se muestra.

La siguiente interfaz permite activar la configuración de la interfaz desde el inicio, lo que implica

que esta al iniciar el servidor activara la tarjeta de red, adicional a esto permite activar el soporte

para IPv4 e IPv6. Para activar alguno de los elementos basta con presionar la barra espaciadora,

inmediatamente el campo de chequeo se activara colocando un asterisco. Para cumplir con los

objetivos del laboratorio activaremos el soporte para IPv4 como se muestra

Para la configuración IPv4 de la interfaz eth0 podemos seleccionar dos opciones Configuración de

IP dinámica (DHCP) y Configuración Manual TCP/IP. Vamos a dejar la interfaz en DHCP y luego

desde el panel de administración de Elastix configuraremos una IP Estática.

Como paso final para la configuración de la red Elastix se solicita el nombre del equipo en la red, y se presentan dos alternativas, la primera que el nombre se asigne automáticamente por DHCP o configurarlo Manualmente, para este caso lo vamos a asignar por DHCP y luego desde el panel de administración del Elastix lo configuraremos manualmente

La siguiente pantalla Figura 26 permite la configuración del huso horario para el servidor, en

primera instancia Elastix nos pregunta si el reloj usa el Sistema Horario UTC. El tiempo universal

coordinado, o UTC es el tiempo de la zona horaria de referencia respecto a la cual se calculan

todas las otras zonas del mundo. Colombia corresponde a la zona UTC -5. Para configurar esto

seleccionamos con la barra espaciadora la opción “El Reloj del Sistema utiliza UTC”. Para seleccionar la zona horaria buscamos entre la lista la opción América/Bogotá

El siguiente paso en el proceso de instalación de Elastix nos solicita que le asignemos una contraseña al usuario root, recordemos que en un sistema GNU/Linux el root es el usuario con todos los privilegios de administración del sistema. Asignamos una contraseña con al menos 8 caracteres, idealmente con letras mayúsculas y minúsculas, números y caracteres especiales por seguridad, la confirmamos escribiendo en ambos campos y dando click en el botón Aceptar. Inmediatamente el proceso de instalación inicia comprobando las dependencias de los paquetes y

su disponibilidad en el disco de instalación (Figura 28) y luego procediendo a instalar cada uno de

los paquetes necesarios para el funcionamiento de Elastix

Finalizando el proceso de instalación Elastix instala el gestor de arranque Grub para cargar el sistema operativo recién instalado.

Finalizado este proceso Elastix se reiniciara para continuar con el proceso de configuración. Luego de reiniciar Elastix el proceso de configuración del sistema operativo continua, esta vez solicitándonos la contraseña del administrador del motor de bases de datos MySQL (El root de MySQL), esto para guardar las configuraciones y los usuarios del sistema de comunicaciones unificadas de Elastix. Ingresamos la contraseña buscando que cumpla con las características de una contraseña segura en la ventana mostrada en la Figura 32 y la confirmamos ingresándola de nuevo en la ventana mostrada

El siguiente y último paso de la configuración de Elastix es la configuración de la contraseña del admin de Elastix, el admin es el usuario que puede configurar desde la interfaz web de Elastix cada uno de los servicios de la plataforma de Comunicaciones Unificadas. Ingresemos la contraseña en la ventana correspondiente a la Figura 34 y la confirmamos en la ventaja correspondiente

La instalación de Elastix ha concluido con el paso anterior, luego de esto Elastix nos presenta su terminal de autenticación (Login), donde nos solicita el usuario de root y contraseña para trabajar.

Como podemos observar en la imagen anterior (Figura 37) al autenticarnos de manera exitosa Elastix nos regala la dirección URL desde la que podemos administrar el servidor, en este caso http://10.0.2.15 sin embargo para las personas que tienen experiencia con Oracle VirtualBox reconocerán que esta dirección es la dirección que típicamente se asigna cuando la interfaz de red virtual está configurada en NAT, la cual no nos sirve para el laboratorio dado que no tendríamos acceso al servidor porque es como si estuviese dentro de una red privada. Para comprobar si esta afirmación del NAT es cierta y solucionar el problema cambiando el adaptador de NAT a PUENTE o BRIDGE vamos a darle click derecho al icono de red (Las dos pantallas de computador) de la barra

inferior

Como podemos observar en la imagen siguiente (Figura 40) efectivamente el adaptador de red está configurado en NAT, el cual permite que la máquina virtual se comunique con los equipos de la red mas no estos se comuniquen con ella, necesariamente para poder conseguir esto y que todas las maquinas reales de la red puedan conectarse con esta máquina virtual debemos cambiar el modo de la tarjeta de red a adaptador PUENTE, como se muestra en la Figura 41. Es importante recordar que el adaptador PUENTE se debe configurar con la interfaz real que usamos para conectarnos con la red física, en este caso usaremos la Tarjeta de Red WI-FI.

Con el paso anterior hemos modificado la configuración del adaptador de red pero se hace necesario renovar nuestra dirección IP para que el DHCP de la red nos dé una IP válida para el segmento en el que nos encontramos. Para realizar este proceso ejecutamos en la terminal de

Elastix el comando Como podemos observar en la Figura 43 la maquina a recibido por DHCP la dirección IP 10.1.1.4

Ahora que la tarjeta de red de la máquina virtual está en modo puente, y la maquina tiene una dirección IP del segmento de red en el que nos encontramos podemos proceder a conectarnos

desde cualquier otra máquina en la red a la interfaz de Elastix vía web

En este caso utilizaremos otra máquina virtual, que tiene sistema operativo Windows 7 y que se encuentra en el mismo segmento de red que el servidor Elastix; cabe resaltar que se deben ejecutar las dos máquinas simultáneamente, nuestra máquina virtual Elastix como servidor y nuestra maquina virtual Windows para acceder a la configuración web del servidor. Es recomendable corroborar que la maquina Windows se encuentre en el mismo segmento de red, así:

Topología de Red. Este Grafico tiene como objetivo aclarar el tipo de conexión al servidor para su administración, recordemos que esta no se hace directamente en la Maquina con Elastix

instalado sino que requiere que otro equipo se conecte a ella vía red a su interfaz de administración Web. Dado que en la topología el servidor es una máquina virtual, podemos

ingresar a ella desde otra máquina virtual como cualquier sistema operativo como podría ser Windows 7 o entrar desde un equipo real que este en la misma red, siempre y cuando el

adaptador de red de la máquina virtual este en modo Puente o Bridge

Para iniciar la configuración vía web de Elastix en la maquina cliente (Windows) bastara con abrir un navegador (Internet Explorer, Firefox, Opera, Safari, Chrome, entre otros) y digitar en la barra

de direcciones la IP del servidor Elastix (Máquina Virtual)

Como lo vemos en la primera oportunidad nos sale un mensaje del navegador referente al certificado de seguridad, Elastix administra las conexiones a su aplicativo Web vía HTTPS (HTTP Seguro), en Google Chrome basta con que dar click al botón Continuar de todos modos. En otros navegadores el proceso puede varias pero también es muy simple. Después de continuar y aceptar el certificado SSL del sitio, el navegador nos presentar la siguiente interfaz de Elastix, esta nos solicitar la autenticación para administrar el servidor de

Comunicaciones Unificadas

Recordemos que el usuario de la administrador de la interfaz web es “admin” y la contraseña la que establecimos en el proceso de instalación, luego presionamos el botón submit para ingresar al

dashboard de Elastix

Si el proceso de autenticación es exitoso, Elastix nos mostrara su dashboard o panel de configuración, como se muestra en la siguiente imagen y desde este se podrá realizar la

configuración específica de cada uno de los servicios de comunicaciones unificadas.

Próximo Laboratorio

En el próximo laboratorio se implementará y documentará el proceso de configuración de los parámetros de red del Servidor Elastix Open Source Unified Communications Server.