INSTALACION DE ASTERISK 1.4 EN UNA MAQUINA CON UBUNTU-SERVER


image
1. Lo primero que vamos a hacer es la actualización del sistema:
#sudo apt-get update
#sudo apt-get upgrade
#sudo apt-get autoremove //para limpiar los ficheros
2. Ahora que ya tenemos actualizado nuestro sistema vamos a instalar las dependencias necesarias para la compilación de los módulos de Asterisk.
#sudo apt-get install bison libssl-dev zlib1g-dev libnewt-dev make libtool libgtk2.0-dev
#sudo apt-get install libncurses5-dev libvorbis-dev automake mysql-server mysql-client mysql-admin libmysqlclient15-dev
#sudo apt-get install php5 php5-cli php5-common php5-dev curl libgnutls13 libgnutls-dev libtiff4-dev
#sudo apt-get install linux-kernel-devel libasound2-dev libportaudio-dev libportaudio2 jackd
#sudo apt-get install unixodbc unixodbc-bin unixodbc-dev speex libspeex-dev
Ahora vamos instalar los kernels necesarios, para ello tenemos que saber cuál es nuestra versión de nuestro sistema: uname –r y con esto nos muestra por pantalla la versión que estamos utilizando, en my caso 2.6.24-19-41-server
#sudo apt-get install linux-headers-2.6.24-19-41-server build-essential
Ah y si no tenemos instalados los compiladores ya que la distribución los instala por defecto lo tenemos que instalar porque Asterisk está programado en C, C++, entre otros lenguajes de programación.
#sudo apt-get install gcc gcc-c++
También instalaremos algunas dependencias para cuando instalemos FreePBX ya no las instalemos:
#sudo apt-get install libxml2-utils libxml2-dev libtiff4 libtiff4-dev lame liblame0 liblame-dev mysql-client libmysqlclient15-dev mysql-server php5 php-pear php5-gd php5-mysql php5-cli perl libaudiofile-dev curl sox sox-dev
Si tienes algún problema al instalar todas de una sola vez instálala de una en una
3. Descarga de modulos Asterisk 1.4
Aquí tenemos que crear una nuevo directorio que cuelgue del directorio raíz, donde descargaremos todos los módulos de Asterisk 1.4: /asterisk
Situados en el directorio /Asterisk comenzamos a descargar los modulos:
· Asterisk-1.4
#sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-1.4.26.2.tar.gz


· Dahdi-linux-2.2 (antes llamado Zaptel)
#sudo wget http://downloads.asterisk.org/pub/telephony/dahdi-linux/dahdi-linux-2.2.0.2.tar.gz
· Dahdi-tools-2.2.0
#sudo wget http://downloads.asterisk.org/pub/telephony/dahdi-tools/dahdi-tools-2.2.0.tar.gz
· Libpri 1.4.10
#sudo wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4.10.1.tar.gz
· Asterisk-Addons 1.4
# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-addons-1.4.9.tar.gz
· Asterisk GUI 2.0.4
#wget http://downloads.asterisk.org/pub/telephony/asterisk-gui/releases/asterisk-gui-2.0.4.tar.gz
4. Descomprimir los modulos descargados
Una vez tenemos todos los módulos de Asterisk descargados los vamos a descomprimir. No os preocupéis por donde los guarda Ubuntu ya que todos los encontraremos en el directorio /etc/Asterisk. Yo recomiendo seguir este orden para que carguen todos los módulos y no quede nada sin instalar
Para descomprimir usamos: #tar xvfz modulo_especifico situados en la misma carpeta de la descarga.
4.1 Para Asterisk-1.4
#sudo tar xvfz asterisk-1.4.26.2.tar.gz
#cd asterisk-1.4.26.1
Desde aquí podemos configurar las voces de Asterisk para que se escuchen en español.
Dentro de la carpeta asterisk-1.4.21.1 está la carpeta sounds, en la cual están comprimidas las voces en español….
image
Acá podemos ver las carpetas que tenemos que descomprimir para luego configurar las voces en español.
image
Ejecutamos….
#tar xvfz asterisk-core-sounds-en-gsm-1.4.14.tar.gz
#tar xfvz asterisk-moh-freeplay-wav.tzr.gz
Hecho esto salimos de la carpeta sounds ejecutando #cd ..
Después ejecutamos…..
#./configure
Para personalizar los componentes que se van a instalar..
#make menuselect
En el apartado Core Sound Packages con la tecla espacio se abre una nueva ventana y quitamos los asteriscos de todas las carpetas que contengan EN y marcamos todas las que contengan ES, situándonos en ellos y con la tecla espacio quitamos o marcamos, quedaría algo asi:
image
image
Y finalmente ejecutamos..
#make
#make install
Una vez instalado el sistema podemos ejecutar make samples para generar los ficheros de configuración del sistema (Ej: sip.conf; extensión.conf)
#make samples
Y de forma opcional si queremos generar documentación adicional sobre Asterisk ejecutamos
#make progdocs
4.2 Para Dahdi-linux-2.2.0.2 (antes llamado Zaptel)
#sudo tar xvfz dahdi-linux-2.2.0.2.tar.gz
#cd dahdi-linux-2.2.0.2
#make
#make install
4.3Para Dahdi-tools-2.2.0
#sudo tar xvfz dadhi-tools-2.2.0.tar.g
#cd dahdi-tool-2.2.0
#./configure
#make menuselect
#make
#make install
#make config
Si tenemos algún hardware instalado mediante este ultimo comando generamos algunos scripts de inicialización
4.4 Para Libpri 1.4.10.1
#sudo tar xvfz libpri-1.4.10.1.tar.gz
#cd libpri-1.4.10.1
#make
#make install
4.5 Para Asterisk-Addons 1.4.9
#sudo tar xvfz Asterisk-addons-1.4.9.tar.gz
#cd asterisk-addons-1.4.9
#./configure
Si queremos personalizar los componentes que vamos a instalar
#make menuselect
#make install
#make samples

5. Estructura de directories

# /etc/asterisk: Contiene los ficheros de configuración. Si al compilar ejecutamos “make samples”, tendremos ejemplos en este directorio.
# /usr/lib/asterisk/modules: Contiene los módulos de Asterisk que hemos compilado
# /var/lib/asterisk: Contiene diferentes librerías de Asterisk
# /var/lib/asterisk/agi-bin: Directorio para contener los AGI
# /var/spool/asterisk: Directorio par archivos que genera Asterisk (voicemail,etc)
# /var/log/asterisk: Aquí se guardan los log de Asterisk
6. Ejecutando Asterisk

Hay que ser root
Para lanzar Asterisk en segundo plano: #asterisk
Para lanzar Asterisk en primer plano: #asterisk –vvvvvvvvvvvc
Para conectarnos a la consola si Asterisk está en segundo plano: #asterisk -vvvvvvvvvvvvr

Instalacion y configuracion de Asterisk GUI 2.0

 image

GUI es la Interfaz grafica para Asterisk creada por Digium, es un plataforma para poder configurar Asterisk de forma grafica y remota al mismo tiempo.

Lo primero que haremos será descargarnos los repositorios SVN de digium, nos los descargamos en la carpeta de descargas que creamos cuando instalamos Asterisk 1.4., que cuelga de la carpeta raiz

/asterisk#

Ejecutamos la descarga……

#sudo wget http://downloads.asterisk.org/pub/telephony/asterisk-gui/releases/asterisk-gui-2.0.4.tar.gz

Seleccionamos la versión 2.0 porque es la última versión más estable para Asterisk.

Descomprimimos el fichero con:

#tar zxvf asterisk.gui-2.0.4.tar.gz

#cd asterisk-gui-2.0.4

#make

#make install

Ya tenemos instalado la GUI para Asterisk …..Ahora tenemos que configurar dos ficheros que se encuentran en /etc/asterisk

Algunas ya existen y solo hay que quitarles el “;” para des comentarlas

Primero editamos el fichero manager.conf  para que quede asi:

  •  manager.cong

[general]

displaysystemname = yes

enabled = yes

webenabled = yes

port = 5038

bindaddr = 0.0.0.0

[root] (Este será nuestro usuario para entrar a la GUI)

secret = 1234 (Esta será nuestra contraseña para entrar a la GUI)

read = system,call,log,verbose,command,agent,user,config

write = system,call,log,verbose,command,agent,user,config

Luego editamos el fichero http.conf para que quede asi:

  • http.conf

[general]

enabled = yes

enablestatic = yes

bindaddr = 0.0.0.0

bindport = 8088

Una vez compilado Asterisk-GUI, podemos comprobar si todo esta correcto ejecutando (en el directorio 2.0)

#make checkconfig

Si todo ha ido bien , nos mostrara un mensaje de que ya podemos acceder mediante la dirección:

http://192.168.2.3:8088/asterisk/static/config/index.html

Y accederemos con el login que hemos creado en manager.conf que en y caso es “root” y la contraseña “1234”

image

Desde esta ventana es posible configurar Asterisk de manera bastante intuitiva pero por ahora no vamos a explicar el funcionamiento de la GUI de Asterisk ya que no es este la meta de este tutorial.

Instalar las X en Ubuntu Server

 

Todos sabemos que un Servidor Linux siempre ha sido en modo texto.

Pero muchas veces es mas fácil configurar algunas cosas desde el entorno gráfico pero nos encontramos que Ubuntu Server no lo instala. Podemos instalar el entorno gráfico haciendo

#sudo apt-get install ubuntu-desktop

pero esto nos instalaría un escritorio completo con openoffice y otros programas que nunca vamos a utilizar en el server.

La opción que nos queda es instalar un entorno gráfico mínimo y a partir de ese personalizarlo según lo que necesitemos.

Para instalar Gnome hacemos lo siguiente:

#sudo apt-get install x-window-system-core gnome-core

Nota: en el caso que usen 8.04 server deben poner: #sudo apt-get install xorg gnome-core

Luego de instalado, ejecutamos

#startx

y ya tenemos nuestro escritorio mínimo. Todo lo que incluye el menú es: “Accesorios” (con editor de texto y terminal) e “Internet” (con Firefox) y nada más.
Ya que es una instalación mínima, queda todo en inglés. Para instalar los paquetes de idiomas en español hacemos:

#sudo apt-get install language-pack-es
#sudo apt-get install language-pack-es-base
#sudo apt-get install language-pack-gnome-es
#sudo apt-get install language-pack-gnome-es-base
#sudo apt-get install language-selector
#sudo apt-get install language-support-es

Finalmente es necesario instalar gksu para que funcionen correctamente los menús:

#sudo apt-get install gksu

Para que instale Herramientas de red hacemos

#sudo apt-get install gnome-system-tools gnome-nettool

y listo… nos queda instalado Gnome con lo mínimo necesario…

Espero que les sea de ayuda para a los que mas les guste un entorno grafico…….

Instalación de VNC Server en equipo con Ubuntu Server

 

Configurar acceso a equipo VNC Server mediante Cliente/servidor

Todos los Administradores alguna ves tenemos la necesidad de Controlar nuestros equipo de forma remota y que mas fácil hacerlos con VNC, ya que es la forma de administrar remotamente y con un entorno grafico basado en una estructura cliente/servidor , y por eso he decidido hacer este tutorial para aquellos que necesiten tomar el control de un PC remotamente ya sea en una plataforma Linux o Windows

En primer lugar abriremos una ventana de terminal en GNU Linux Ubuntu

Escribiremos el siguiente comando GNU Linux para instalar los paquetes necesarios para VNC Server (x11vnc y vnc-java):

#sudo apt-get install x11vnc vnc-java

Ejecutaremos ahora el siguiente comando GNU Linux para añadir las utilidades necesarias para la configuración de VNC Server (como por ejemplo vncpasswd):

#sudo apt-get install vnc-common

Hay dos formas para establecer la contraseña de VNC, pero esta es la mas facil: vncpasswd

A continuación estableceremos la contraseña para las conexiones de los clientes al servidor VNC (equipo con GNU Linux Ubuntu ), para ello ejecutaremos el comando GNU Linux:

#sudo vncpasswd ~/.vnc/passwd

En realidad, "~/.vnc/passwd" es la carpeta y nombre del fichero donde se alojará la contraseña de VNC encriptada. Se le pone la cerilla delante para que esté "oculta" por seguridad, aunque no sería necesario.

Nos pedirá una contraseña, que será la que nos pida cuando nos conectemos por VNC Client desde otro equipo a este. La contraseña debe tener seis o más caracteres, si intentamos introducir una contraseña más corta nos mostrará un mensaje:

                           Password must be at least 6 characters - try again

Deberemos introducir la contraseña dos veces:

image

Cuando hayamos establecido la contraseña para VNC (mediante alguno de los métodos anteriores), crearemos el fichero "sharex11vnc" (o el nombre que queramos) en la ubicación "/usr/local/bin", con el comando:

#sudo nano /usr/local/bin/sharex11vnc

 

image

Y le añadiremos el siguiente contenido:

x11vnc -nap -bg -many -rfbauth ~/.vnc/passwd

 

image

A continuación estableceremos los permisos apropiados al fichero sharex11vnc para que pueda ejecutarse, para ello ejecutaremos el comando GNU Linux:

#sudo chmod 755 /usr/local/bin/sharex11vnc

Para que el script anterior se ejecute cada vez que el usuario inicia la sesión accederemos al menú "Sistema" - "Preferencias" - "Aplicaciones al inicio":

image

En la ventana de "Preferencia de las aplicaciones al inicio" pulsaremos el botón "Añadir":

image

En la ventana de "Añadir programa al inicio" introduciremos los siguientes datos:

  • Nombre: nombre identificativo del programa de inicio, por ejemplo "VNC".
  • Orde: ruta y nombre del fichero de script ejecutable, en nuestro caso " /usr/local/bin/sharex11vnc".
  • Comentario: observación (descripción) del programa a iniciar, por ejemplo "VNC Server".

Tras introducir los datos pulsaremos "Añadir":

image

Por ultimo reiniciamos nuestro equiopo:

Tras el reinicio, podremos comprobar si el servicio x11vnc se ha iniciado correctamente, desde el menú "Sistema" - "Administración" - "Monitor del sistema":

image

En la pestaña "Procesos" de la ventana de "Monitor del sistema", deberá haber un proceso con el nombre "x11vnc":

image

Para probar VNC Server, descargaremos VNC Viewer en un equipo con Windows XP (o cualquier otro sistema operativo) de nuestra red. VNC Viewer es gratuito y está disponible en:

http://www.realvnc.com/cgi-bin/download.cgi?product=free4/vncviewer/win

Ejecutaremos el fichero descargado "vnc-4_1_3-x86_win32_viewer.exe", nos pedirá la IP o nombre de host (hostname) del equipo con VNC Server al que queremos conectarnos y hacer control remoto, la introduciremos en "Server" y pulsaremos "OK":

image

VNC Viewer nos mostrará la ventana de Authentication para que introduzcamos la contraseña en "Password". Introduciremos la contraseña establecida anteriormente en la configuración de VNC Server y pulsaremos "OK":

image

Y ya tendremos acceso desde un equipo con Windows a otro con GNU Linux mediante VNC Server. Podremos controlar el equipo Linux como si estuviésemos con él desde el equipo Windows.

Configurar acceso a equipo VNC Server mediante HTTP (navegador)

Para configurar el equipo con GNU Linux Ubuntu  y VNC Server para permitir acceso por control remoto mediante el navegador web, en primer lugar seguiremos todos los pasos anteriores (instalación de paquetes, asignación de contraseña y demás configuraciones). Y después abriremos una ventana de terminal y ejecutaremos los siguientes comandos:

  • Por un lado abriemos el puerto 5800 en el cortafuegos de GNU Linux (iptables) con el siguiente comando:

    #sudo iptables -A INPUT -p tcp -i eth0 --dport 5800 -j ACCEPT

  • Por otro lado ejecutaremos el siguiente comando que inciará el servicio de VNC Server vía http:

    #sudo x11vnc -forever -usepw -httpdir /usr/share/vnc-java/ -httpport 5800

 

image

 

Si todo es correcto se iniciará el servicio (demonio) de VNC Server, indicando el nombre del desktop (en nuestro caso "pcubuntu:1") y el URL que hay que poner en los navegadores clientes para conectar y hacer control remoto al equipo con VNC Server (en nuestro caso http://pcubuntu:5800):

image

Desde un equipo con Windows o GNU Linux abriremos un navegador web (por ejemplo Mozilla Firefox) y escribiremos la siguiente URL:

http://192.168.1.103:5800

Donde:

  • 192.168.1.103: será la IP del equipo con GNU Linux y VNC Server instalado, al que le queramos hacer control remoto.
  • 5800: será el puerto establecido para la conexión mediante http a VNC Server.

Si todo es correcto nos mostrará una ventana con "VNC Authentication", en "Password" introduciremos la contraseña y pulsaremos "OK":

image

Y ya podremos controlar el equipo con GNU Linux desde nuestro equipo con Windows sin necesidad de instalar ningún software adicional (sólo con el navegador web)