Un Asterisk con FreePBX para dos TDM2400 sobre CentOS

  • 14 Oct 2010
  • Asterisk

Ingredientes

  • 1 PC. En este caso es un Pentium 4 con 1GB de RAM y dos discos SATA de 250GB
  • 2 placas TDM2400
  • DVD CentOS 5.5

Preparación

Instalar CentOS

En la instalación, hacemos un RAID1 con los dos discos. Seleccionamos los paquetes DNS server, MySQL server, WEB server, Mail server y Development Tools.

El el primer booteo, cuando entra al setup, deshabilitar el firewall y SELinux.

yum -y update
...

Ponerle un nombre a una estrella

Se va a llamar lepbx

vi /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=lepbx
reboot 

Configurar Apache para FreePBX

Editar el archivo /etc/httpd/conf/httpd.conf y hacer dos cambios

  1. Cambiar el usuario y grupo de apache a asterisk
  2. Cambiar cada AllowOverride None por AllowOverride All

Instalar dependencias

yum install e2fsprogs-devel keyutils-libs-devel krb5-devel libogg libselinux-devel libsepol-devel libxml2-devel libtiff-devel gmp php-pear php-pear-DB php-gd php-mysql php-pdo kernel-devel ncurses-devel audiofile-devel libogg-devel openssl-devel mysql-devel zlib-devel perl-DateManip sendmail-cf sox 

Instalar Asterisk

vi /etc/yum.repos.d/CentOS-Asterisk.repo
[asterisk-tested]
name=CentOS-$releasever - Asterisk - Tested
baseurl=http://packages.asterisk.org/centos/$releasever/tested/$basearch/
enabled=0
gpgcheck=0
#gpgkey=http://packages.asterisk.org/RPM-GPG-KEY-Digium

[asterisk-current]
name=CentOS-$releasever - Asterisk - Current
baseurl=http://packages.asterisk.org/centos/$releasever/current/$basearch/
enabled=1
gpgcheck=0
#gpgkey=http://packages.asterisk.org/RPM-GPG-KEY-Digium
vi /etc/yum.repos.d/CentOS-Digium.repo
[digium-tested]
name=CentOS-$releasever - Digium - Tested
baseurl=http://packages.digium.com/centos/$releasever/tested/$basearch/
enabled=0
gpgcheck=0
#gpgkey=http://packages.digium.com/RPM-GPG-KEY-Digium

[digium-current]
name=CentOS-$releasever - Digium - Current
baseurl=http://packages.digium.com/centos/$releasever/current/$basearch/
enabled=1
gpgcheck=0
#gpgkey=http://packages.digium.com/RPM-GPG-KEY-Digium
yum install asterisk16 asterisk16-addons asterisk16-configs asterisk16-voicemail dahdi-linux dahdi-tools libpri

Instalar FreePBX

cd /usr/src/freepbx 
wget http://mirror.freepbx.org/freepbx-2.8.0.tar.gz
...
tar zxvf freepbx-2.8.0.tar.gz
/etc/init.d/mysqld start
chkconfig mysqld on 
cd /usr/src/freepbx-2.8.0
mysqladmin create asterisk 
mysqladmin create asteriskcdrdb 
mysql asterisk < SQL/newinstall.sql 
mysql asteriskcdrdb < SQL/cdr_mysql_table.sql 
mysql 
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'SOMEPASSWORD';
GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'SOMEPASSWORD';
flush privileges;
\q
mysqladmin -u root password 'SOMEPASSWORD' 
yum install php-pear-DB 
yum install php-mysql 
./install_amp --username=asteriskuser --password=SOMEPASSWORD

Los presento... Asterisk, Dahdi...

dahdi_scan 
dahdi_genconf 
dahdi_cfg -vv 
vi /etc/dahdi/modules

Comentar todos los modelos de digium excepto los que usemos. En este caso wctdm24xxp

vi /etc/amportal.conf 

Agregar el parámetro ZAP2DAHDICOMPAT=true

vi /etc/asterisk/chan_dahdi.conf
[channels]
#include dahdi-channels.conf 
#include chan_dahdi_additional.conf 
amportal restart