Script de Instalacion de Asterisk

Ayer me preguntaron que había hecho con Asterisk, lo ciento es que hace tiempo que di por finalizado el desarrollo de proyectos para arquitecturas VoIP, sobre todo tras descubrir que la gente esa de Avaya lo tiene mucho mas currado. Nos obstante aquí os dejo el scritpt de instalación de hace uno pocos años, pero simplemente actualizado los repositorio podéis instalarlo en versiones mas modernas de Debian/Ubuntu

#!/bin/bash
# Instalacion de AsterisK VoIP para Debian/Ubuntu
# Autor: Balta
# Año: 2008

#Instalar con permisos de root
#Nota en Ubuntu “sudo -s” login root
##Nota en Debian “su -” passd root

## Intalando Arquitecturas ( 1 es SI, 0 es NO )
#
actualizar_repositorios=1
install_lamp=1
install_ssh=1
install_compiladores=1
install_utilidades=1
install_festival=1
install_conAste=1
install_Compresion=1
install_FreePBX=1
install_sangoma=1
install_libAsterisk=1

# Comentar esta parte dependiendo version del S.O
# Repositorios Ubunu

ECHO “deb http://us.archive.ubuntu.com/ubuntu/ dapper universe” >> /etc/apt/source.list
ECHO “deb-src http://us.archive.ubuntu.com/ubuntu/ dapper universe” >> /etc/apt/source.list

# Reposotorios Debian

ECHO “falta” >> /etc/apt/source.list
ECHO “falta” >> /etc/apt/source.list

#actualizar el sistema

actualizar_repositorios(){
apt-get update
}

## Instalar Lamp

install_lamp(){
apt-get install apache2 -y
apt-get install php5 php5-gd php5-cli -y
apt-get install mysql-server php5-mysql -y
/etc/init.d/apache2 restart
}

## Instalar librerias de acceso SSH

install_ssh() {
apt-get install openssl libssl-dev ssh -y
}

##Instalar compiladores

install_compiladores(){
apt-get install gcc make g++ -y
}

## Instalar utilidades

install_utilidades(){
apt-get install nmap lynx emacs21 -y
}

## Instalar festival para el manejo de paquetes de voz

install_festival(){
apt-get install festival festival-dev -y
}

## Instalar paquetes para usar consola de Asterisk

install_conAste(){
apt-get install ncurses-base ncurses-bin ncurses-term libncurses5 libncursesw5 libncurses5-dev libncursesw5-dev -y
}

## Install librerias de compresion

install_Compresion(){
apt-get install zlib1g zlib1g-dev -y
}

## Librerias para el servicio de web FreeDBX y librerias
install_FreeDBX(){
apt-get install bison bison-doc -y
apt-get install libxml2 libxml2-dev -y
apt-get install libtiff4 libtiff4-dev -y
apt-get install libasound2 libgsm1 libltdl3 libpq3 libspeex1 libsqlite0 libtonezone1 libaudiofile0 libaudiofile-dev -y
apt-get install libnet-telnet-perl mime-construct libipc-signal-perl libmime-types-perl libproc-waitstat-perl -y
}

## En caso de usar una tarjeta sangoma necesitaras los drivers
install_sangoma(){
apt-get install flex -y
}

## Librerias requeridas para Asterisk
install_libAsterisk(){
apt-get install subversion curl doxygen -y
}

## Instalacion y configuraciond de Asterisk

# Creamos un repositorio

mkdir ~/asterisk
cd asterisk

# Descargamos los paquetes asterisk
wget http://asterisk.gnuinter.net/files/asterisk-perl-0.08.tar.gz .

# Archivos de sonido
wget http://asterisk.gnuinter.net/files/asterisk-perl-0.08.tar.gz .
wget http://heanet.dl.sourceforge.net/sourceforge/lame/lame-3.96.1.tar.gz .

# Administrador web FreeDBX
wget http://superb-east.dl.sourceforge.net/sourceforge/amportal/freepbx-2.1.1.tar.gz .

# Archivos para Asterisk

wget http://ftp.digium.com/pub/zaptel/releases/zaptel-1.2.13.tar.gz .
wget http://ftp.digium.com/pub/libpri/releases/libpri-1.2.4.tar.gz .
wget http://ftp.digium.com/pub/asterisk/releases/asterisk-1.2.15.tar.gz .
wget http://ftp.digium.com/pub/asterisk/releases/asterisk-sounds-1.2.1.tar.gz .
wget http://ftp.digium.com/pub/asterisk/releases/asterisk-addons-1.2.5.tar.gz .

# Instalacion de editor de sonido de Asterrisk

cd /usr/src/
tar -xvzf ~/asterisk/lame-3.96.1.tar.gz
cd lame-3.96.1
./configure –prefix=/usr –sysconfdir=/etc
make && sudo make install

# Instalar el SOX

cd /usr/src/
tar -xzvf ~/asterisk/sox-12.17.9.tar.gz
cd sox-12.17.9
./configure
make
make install

# Instalamos el gateway entre Asterisk y FreePBX

cd /usr/src/
tar -xzvf ~/asterisk/asterisk-perl-0.08.tar.gz
cd asterisk-perl-0.08
perl Makefile.PL
make all
make install

# Instalamos el FreeBX Administrador web de Asterisk

cd /usr/src
tar -xzvf ~/asterisk/freepbx-2.1.1.tar.gz
/usr/src/freepbx/freepbx-2.1.1

# Creamos la bbdd
mysqladmin -u root -p”contraseña mysql” create asteriskcdrdb;
mysqladmin -u root -p”contraseña mysql” create asterisk;

# Pasamos los esquemas

mysql -u root -p”contraseña mysql” < /usr/src/freepbx/freepbx-2.1.1/SQL/newinstall.sql
mysql -u root -p”contraseña mysql” < /usr/src/freepbx/freepbx- 2.1.1/SQL/cdr_mysql_table.sql

# Creacion del usuario y grupo que manejara los procesos de asterisk

groupadd asterisk
useradd -c “PBX asterisk” -d /var/lib/asterisk -g asterisk asterisk
mkdir /var/run/asterisk
chown asterisk:asterisk /var/run/asterisk

# Creamos el directorio de Instalacion

mkdir /usr/src/asterisk
cd /usr/src/asterisk

# Intalamos librerias
tar zvxf ~/asterisk/libpri- 1.2.4.tar.gz
tar zvxf ~/asterisk/zaptel-1.2.13.tar.gz
tar zvxf ~/asterisk/asterisk-1.2.15.tar.gz
tar zvxf ~/asterisk/asterisk-addons-1.2.5.tar.gz
tar zvxf ~/asterisk/asterisk-sounds-1.2.1.tar.gz

# Compilamos una a una

cd libpri-1.2.4
make & sudo make install

cd ../zaptel-1.2.13
make clean
make linux26
make install

cd ../asterisk-1.2.15
make clean
make
make install
make samples
make progdocs

cd ../asterisk-addons-1.2.5
make
make install

cd ../asterisk-sounds-1.2.1
make
make install

# Reiniciamos el servidor Apache
/etc/init.d/apache2 restart

# Creamos el directorio /var/run

mkdir /var/run/asterisk

# Asignamos permisos

chown -R asteriks:asterisk /var/run/asterisk

# Instalamos FreePBX

cd /usr/src/freepbx/freepbx-2.1.1/
pear install db
mkdir /var/www/cgi-bin
chown asterisk:asterisk /var/www/cgi-bin
./install_amp

# Creamos la carpeta de almacenamiento de sonidos

mkdir /var/lib/asterisk/sounds/custom

# Asignamos los permisos

chown -R asterisk:asterisk /var/lib/asterisk/

# Ejecutamos amportal

/usr/sbin/amportal start

# Listo ya podemos acceder a Asterisk la url por defecto sera http://localhost/html/Admin
# El usuario por defecto es admin contraseña admin


Descargar script.


Una cosa importante si lo instaláis asi os sugiero que modifiques los archivos de configuración, por eso de la seguridad.

Así como subir

/etc/php5/apache2/php.ini

Dejando un upload de al menos 32M, que se quedara corto con el tiempo, pero para empezar es mas que suficiente

     upload_max_filesize = 32M

Y otra cosa no deis permisos al usuario asterisk para ejecución de servicios web a no ser que la maquina este dedicada.

Eso lo tenéis en el apache.conf

Y por ultimo no vendría mal mover todo a un vhost. Por eso de que las cosas queden bien, que hacerlas bien no cuesta nada. Hacer ñapas a la larga se paga.

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s