UNIVERSIDAD AUTÓNOMA DE SINALOA FACULTAD DE INGENIERÍA MOCHIS LIC. EN INGENIERÍA DE SOFTWARE MATERIA: REDES Y COMUNICACIÓN DE DATOS GRUPO: 401 PROFESOR: CARLOS ALARCÓN ALUMNO: SÁNCHEZ CASTILLO LUIS ÁNGEL PRÁCTICA: INSTALACIÓN DE UN SERVIDOR DE VOZ
INSTALACION DE SERVIDOR DE VOZ Introducción Qué es un servidor VoIP y la Telefonía IP? La telefonía IP es la combinación de la trasmisión de voz mediante una red de datos, el proceso es trasforma la voz en datos para que esta pueda ser enviada a cualquier parte del planeta mediante una red a esto se le denomina telefonía IP. Este tipo de telefonía corre sobre servidores especializados llamados servidores VoIP. Un servidor VoIP es un ordenador de mayores prestaciones de memoria, procesamiento y almacenamiento de disco duro, encargado de correr y ejecutar la plataforma encargada para la telefonía IP. Características de los servidores VoIP: Gran capacidad de memoria RAM para poder ejecutar múltiples llamadas IP. Poder de procesamiento. Protocolos VoIP. Para qué sirve un servidor VoIP? La función principal de un servidor VoIP es la realización y control de llamadas IP, el servidor será el encargado de convertir las señales de voz a datos mediante diferentes protocolos para posteriormente ser enviados dentro de una red IP. El proceso de convertir el audio en paquetes de datos se denomina VoIP, una vez que se convierte la voz en datos, la información viaja mediante una red IP a cualquier persona pueda establecer una llamada IP. Los protocolos más importantes de VoIP son: SIP (Session Initiation Protocol) protocolo que utiliza la red de internet, utiliza web voip, los servidores que ejecutan este protocolo son llamados servidor SIP. IAX (inter Asterisk Vo IPeXchange) o Asterix voip, su principal características es que se pude utilizar y modificar libremente. H.323 protocolo para realizar videollamadas IP, soporta videoconferencia y es uno de los protocolas más complejos. Estas son las funciones que cumple un servidor de esta clase, además de que controla la cantidad de llamadas y el tráfico enviado y recibido. Desarrollo Para el desarrollo de esta práctica necesitamos de un servidor de voz, usaremos Asterisk, el cual provee este servicio y es compatible con SIP. Asterisk funciona sobre Linux, una vez instalado es necesario configurarlo para crear las cuentas que se utilizarán. Necesitaremos también de un servidor apache, el cual será instalado también. Y adicionalmente instalaremos también un servidor SSH para accesar al equipo desde otro equipo. Para facilitar el manejo de Asterisk existe una aplicación llamada FreePBX el cual necesita de base de datos para funciona, por lo tanto requiere de un servidor MySQL. FreePBX provee en su sitio una Imagen (.iso) la cual viene preparada donde solo elige unas opciones y se instala completamente todo lo que se necesita (servidor apache, asterisk, mysql, ssh y freepbx). De modo que solo quedaría crear las cuentas que utilizarás y ajustar los puertos por donde funcionará tu servidor. Entonces procedemos a descargar la imagen que proporciona FreePBX desde el sitio http://schmoozecom.com/distro-download.php. Una vez descargada la grabamos en un CD o la
hacemos booteable desde una memoria USB y seguimos con el proceso de instalación. 1. Iniciamos el equipo desde el CD o USB. Y no mostrará una pantalla donde elegimos qué versión de asterisk queremos. En nuestro caso elegimos la opcion con Asterisk 11 (Full Install). 2. Nos preguntará si queremos configurar manualmente la IP o lo haremos mediante el servidor DHCP, nosotros elegimos DHCP. Y damos OK.
3. Ahora nos pide que elijamos la zona donde nos encontramos. Elegimos America/Mazatlan. 4. Ahora nos pide que proporcionemos el password para el usuario root.
5. Esperamos a que termine todo el proceso y ya tendremos todo instalado. Para acceder al servidor basta con accesar en otro equipo desde el navegador con la IP del equipo. 6. La primera vez que accedemos nos pedirá que creemos una cuenta. Proporcionan los datos y crean la cuenta.
7. Una vez creada la cuenta damos click sobre FreePBX Administrativo y nos pedirá que nos identifiquemos (con los datos de nuestra cuenta). Una vez que nos identificamos nos dará acceso a la administración del servidor Asterisk mediante una interfaz amigable desde donde podemos configurar cada una de las opciones de asterisk sin necesidad de ir a modificar directamente los archivos de configuración. 8. Ahora, a nosotros nos interesa crear usuarios para usar mediante SIP, para eso nos vamos al menu Applications y damos click sobre la opcion Extensions.
9. En la siguiente opcion nos pide que elijamos que tipo de cuenta deseamos crear, elegimos la que ya está seleccionada (SIP) y damos en Submit. 10. En el siguiente formulario llenamos los datos de User Extension (el cual es el nombre de usuario para accesar), Display Name (el nombre para mostrar).
11. Nos desplazamos hacia abajo hasta llegar al campo Secret (el cual es la contraseña para el usuario). 12. Nos desplazamos hasta el final y damos click en Submit. Ahora nos regresará a la ventana donde elegimos la tipo de cuenta que deseamos agregar pero adicionalmente en la parte superior muestra un botón que dice Apply Config, damos click sobre él para aplicar los cambios y se reinicia el servidor con los nuevos datos.
13. Con eso ya tenemos listo nuestro servidor Asterisk con SIP para poder hablar entre usuarios en una red local. Basta con añadir tantas cuentas como deseemos y accesar desde alguna aplicación SIP.
Ya tenemos instalado Asterisk para que funcione dentro de una red local, pero necesitamos que funcione para accesar desde internet. Para eso hay que abrir el puerto en nuestro Modem para que permita el acceso hacia ese equipo. Para eso accedemos a la configuración de nuestro modem y hacemos lo siguiente: 1. En este caso utilizamos un Modem Thompson de TELMEX, una vez accedemos al modem nos vamos a la opcion Herramientas y damos click sobre Uso compartido de juegos y aplicaciones. 2. Ahora en la parte de abajo damos click sobre Crear un nuevo juego o aplicación. Y nos mandará a un formulario donde especificamos el nombre y marcamos la opción Entrada manual de mapa de puertos. 3. En el siguiente formulario especificamos qué puertos deseamos abrir. Nosotros necesiamos abrir los puertos 80 (apache), 5060 (SIP), 22 (SSH). Los indicamos y guardamos los cambios. 4. Ahora en la parte de abajo nos aparece la opción Asignar un juego o aplicación a un
dispositivo de red local, damos click sobre esa opción. En el siguiente formulario elegimos el juego o aplicación que acabamos de crear y en la otra opción seleccionamos a cual equipo deseamos transferir las conexiones (puedes elegirlo de la lista o indicarle la IP). 5. Presionamos en agregar y con esto ya quedará listo para accesar desde internet. Ahora tenemos nuestro servidor Asterisk con soporte SIP y podemos realizar llamadas ya sea desde la red local y también accediendo desde internet indicando la IP y puerto. Pero es muy difícil recordar una IP para eso usaremos un servicio que provee http://www.noip.com/ en donde nos registramos y creamos un nombre de dominio el cual podrá ser utilizado y redireccionado a la ip de nuestro equipo. El registro es un proceso sencillo, basta con proporcionar los datos de nuestra cuenta y seleccionar un nombre de dominio. Una vez que nos registramos podemos bajar el cliente para que haga actualizaciones continuas al dominio checando cada cierto tiempo cual es la IP que tiene nuestro equipo, de esta manera el dominio siempre estará actualizado y funcionando nuestro servidor con el dominio que indicamos. Una vez que nos registramos ya podemos utilizar el dominio que elegimos en lugar de la IP pública de nuestro equipo y podemos acceder fácilmente. Clientes para SIP: Existen muchos clientes en la red que sirven para conectarnos a los servidores SIP, por mencionar uno que funciona sobre Windows, Linux y Mac OS es Yate Client el cual lo pueden descargar desde este enlace http://yate.ro/pmwiki/index.php?n=main.download. También existen aplicaciones para Android como puede ser CsipSimple, el cual se puede buscar en la Google Play o desde el siguente enlace https://play.google.com/store/apps/details?id=com.csipsimple&feature=nav_result. En estas aplicaciones solo hay que indicar el nombre de servidor, puerto, usuario y contraseña y pueden acceder a su cuenta de SIP y hablar con los usuarios.
Conclusión: Desarrollar esta práctica me pareció muy buena porque sinceramente yo no tenia ni la mas mínima idea de como es que funcionan los servidores de VoIP y con esto me doy cuenta que realmente cualquier persona puede tener un servidor de VoIP o simplemente una empresa para uso exclusivo de sus empleados y así no depender de nadie mas. He aprendido muchas cosas, entre ellas el como abrir puertos ya que nunca había hecho esto y todo esto fue relativamente sencillo, claro que antes de empezar tuve que informarme sobre qué aplicaciones me permiten realizar esto y de cual es la mejor opción. Así fue como llegué a FreePBX y me di cuenta de que era la mejor opción porque te provee las herramientas necesarias para realizar la instalación y configuración de un servidor sin necesidad de que tu hagas muchas modificaciones. Aprendí muchas cosas y es lo que me gusta, aprender y mas si es sobre Linux. :D