Instalando o Asterisk no CentOS 5.3
Criada por: Frederico Madeira, última modificação em: Mon 31 of Aug, 2009 (01:52 UTC)
Sumário
Este tutorial tem por finalidade orientar o leitor durante a instalação e preparação de um servidor para rodar um PBX IP completo através do Asterisk, que por sua vez já estará pronto e com suporte a placas TDM (E1, FXS, FXO) através de placas que podem ser instaladas em seu computador.
Embora este tutorial tenha sido preparado com foco na distribuição CentOS, seus procedimentos se aplicam a todas as outras distribuições.
1. Etapas Iniciais
Vamos criar o diretório onde iremos baixar os arquivos necessários para a instalação.
mkdir -p /diversos/Asterisk
cd /diversos/Asterisk
Para instalar os pacotes, usaremos o diretório /usr/local/src
2. Download de Pacotes
No momento de escrita deste tutorial, estas eram as versões atuais. Você pode livremente substituir por versões mais novas, para tanto confira no site oficial do Asterisk
wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.0.10.tar.gz
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux/releases/dahdi-linux-2.1.0.4.tar.gz
wget http://downloads.asterisk.org/pub/telephony/dahdi-tools/releases/dahdi-tools-2.1.0.2.tar.gz
wget http://downloads.asterisk.org/pub/telephony/libpri/releases/libpri-1.4.10.tar.gz
wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-addons-1.6.0.2.tar.gz
3. Instalando os Pacotes
3.1 - dahdi-linux
Como anunciado em 2008, Digium renomeu o projeto de interface de telefonia Zaptel para DAHDI (Digium Asterisk Hardware Device Interface - Interface de Hardware para Asterisk da Digium) para acomodar os desejos dos proprietários da marca Zaptel para fins de telefonia.
[root@matheus ~]# cd /usr/local/src/
[root@matheus src]# tar xvfz /home/diversos/Apps/Network/VoIP/Asterisk/dahdi-linux-2.1.0.4.tar.gz
[root@matheus src]# cd dahdi-linux-2.1.0.4/
[root@matheus dahdi-linux-2.1.0.4]# make
[root@matheus dahdi-linux-2.1.0.4]# make install
Durante este passo, o instalador ira baixar da internet alguns firmwares para que sejam utilizados na com placas TDM.
Se esta etapa for finalizada com sucesso, você devera ver a tela abaixo:
###################################################
###
### DAHDI installed successfully.
### If you have not done so before, install the package
### dahdi-tools.
###
###################################################
3.2 - dahdi-tools
Este é um pacote de ferramentas para gerenciar, detectar e configurar as placas de telefonia instaladas em seu PBX IP.
[root@matheus dahdi-linux-2.1.0.4]# cd ..
[root@matheus src]# tar xvfz /home/diversos/Apps/Network/VoIP/Asterisk/dahdi-tools-2.1.0.2.tar.gz
[root@matheus src]# cd dahdi-tools-2.1.0.2/
[root@matheus dahdi-tools-2.1.0.2]# ./configure
configure: *** dahdi-tools build successfully configured ***
[root@matheus dahdi-tools-2.1.0.2]# make
[root@matheus dahdi-tools-2.1.0.2]# make install
Se tudo tiver dado certo, a mensagem abaixo será exibida.
###################################################
###
### DAHDI tools installed successfully.
### If you have not done so before, install init scripts with:
###
### make config
###
###################################################
[root@matheus dahdi-tools-2.1.0.2]# make config
I think that the DAHDI hardware you have on your system is:
pci:0000:01:05.0 wcfxo- 1057:5608 Wildcard X100P
[root@matheus dahdi-tools-2.1.0.2]#
No meu caso, possuo uma X100P instalada, o comando acima mostra a correta detecção da mesma.
3.3 - Libpri
Este pacote tem por finalidade instalar bibliotecas para suportar interfaces T1/E1/J1 PRI(Primary Rate) ISDN.
[root@matheus dahdi-tools-2.1.0.2]# cd ..
[root@matheus src]# tar xvfz /home/diversos/Apps/Network/VoIP/Asterisk/libpri-1.4.10.tar.gz
[root@matheus src]# cd libpri-1.4.10/
[root@matheus libpri-1.4.10]# make
[root@matheus libpri-1.4.10]# make install
3.4 - Asterisk
Este é o pacote que irá instalar o software do Asterisk.
[root@matheus libpri-1.4.10]# cd ..
[root@matheus src]# tar xvfz /home/diversos/Apps/Network/VoIP/Asterisk/asterisk-1.6.0.10.tar.gz
[root@matheus src]# cd asterisk-1.6.0.10/
[root@matheus asterisk-1.6.0.10]# ./configure
Se a verificação for concluída com sucesso, a tela a ser vista devera ser:
configure: creating ./config.status
config.status: creating build_tools/menuselect-deps
config.status: creating makeopts
config.status: creating channels/h323/Makefile
config.status: creating include/asterisk/autoconfig.h
.$$$$$$$$$$$$$$$=..
.$7$7.. .7$$7:.
.$$:. ,$7.7
.$7. 7$$$$ .$$77
..$$. $$$$$ .$$$7
..7$ .?. $$$$$ .?. 7$$$.
$.$. .$$$7. $$$$7 .7$$$. .$$$.
.777. .$$$$$$77$$$77$$$$$7. $$$,
$$$~ .7$$$$$$$$$$$$$7. .$$$.
.$$7 .7$$$$$$$7: ?$$$.
$$$ ?7$$$$$$$$$$I .$$$7
$$$ .7$$$$$$$$$$$$$$$$ :$$$.
$$$ $$$$$$7$$$$$$$$$$$$ .$$$.
$$$ $$$ 7$$$7 .$$$ .$$$.
$$$$ $$$$7 .$$$.
7$$$7 7$$$$ 7$$$
$$$$$ $$$
$$$$7. $$ (TM)
$$$$$$$. .7$$$$$$ $$
$$$$$$$$$$$$7$$$$$$$$$.$$$$$$
$$$$$$$$$$$$$$$$.
configure: Package configured for:
configure: OS type : linux-gnu
configure: Host CPU : i686
configure: build-cpu:vendor:os: i686 : pc : linux-gnu :
configure: host-cpu:vendor:os: i686 : pc : linux-gnu :
[root@matheus asterisk-1.6.0.10]# make
+--------- Asterisk Build Complete ---------+
+ Asterisk has successfully been built, and +
+ can be installed by running: +
+ +
+ make install +
+-------------------------------------------+
[root@matheus asterisk-1.6.0.10]# make install
+---- Asterisk Installation Complete -------+
+ +
+ YOU MUST READ THE SECURITY DOCUMENT +
+ +
+ Asterisk has successfully been installed. +
+ If you would like to install the sample +
+ configuration files (overwriting any +
+ existing config files), run: +
+ +
+ make samples +
+ +
+----------------- or ---------------------+
+ +
+ You can go ahead and install the asterisk +
+ program documentation now or later run: +
+ +
+ make progdocs +
+ +
+ **Note** This requires that you have +
+ doxygen installed on your local system +
+-------------------------------------------+
Caso você esteja fazendo uma nova instalação e deseje que sejam instalados arquivos de exemplo, rode o comando abaixo. Caso você esteja apenas atualizando o seu Asterisk, o comando abaixo não será necessário.
[root@matheus asterisk-1.6.0.10]# make samples
3.5 - Asterisk-addons
Este pacote possui módulos adicionais para o Asterisk, que por alguma razão, não foram incluídos na distribuição base do Asterisk. Neste módulo, destaco o suporte a gravação de CDR's diretamente no mysql.
[root@matheus asterisk-1.6.0.10]# cd ..
[root@matheus src]# tar xvfz /home/diversos/Apps/Network/VoIP/Asterisk/asterisk-addons-1.6.0.2.tar.gz
[root@matheus src]# cd asterisk-addons-1.6.0.2/
[root@matheus asterisk-addons-1.6.0.2]# ./configure
[root@matheus asterisk-addons-1.6.0.2]# make
[root@matheus asterisk-addons-1.6.0.2]# make install
[root@matheus asterisk-addons-1.6.0.2]# make samples
4. Configurações finais
Configurar o script para gerenciar o daemon do asterisk. Basta copia-lo da pasta contrib (instalacao do asterisk) para a pasta /etc/init.d
[root@matheus asterisk-addons-1.6.0.2]# cd ..
[root@matheus src]# cd asterisk-1.6.0.10/contrib/init.d/
[root@matheus init.d]# cp rc.redhat.asterisk /etc/init.d/asterisk
Carregando os modulos DAHDI para detecção de placas TDM
[root@matheus init.d]# /etc/init.d/dahdi start
Loading DAHDI hardware modules:
wct4xxp: [ OK ]
wcte12xp: [ OK ]
wct1xxp: [ OK ]
wcte11xp: [ OK ]
wctdm24xxp: [ OK ]
wcfxo: [ OK ]
wctdm: [ OK ]
wcb4xxp: [ OK ]
wctc4xxp: [ OK ]
xpp_usb: [ OK ]
No hardware timing source found in /proc/dahdi, loading dahdi_dummy
Running dahdi_cfg: [ OK ]
[root@matheus init.d]#
Vamos iniciar o asterisk
[root@matheus init.d]# /etc/init.d/asterisk start
Starting asterisk: [ OK ]
[root@matheus init.d]#
Agora podemos nos conectar a console do asterisk e verificar a correta deteccão da placa FXO.
[root@matheus init.d]# asterisk -rvvv
matheus*CLI>
matheus*CLI> dahdi show status
Description Alarms IRQ bpviol CRC4 Fra Codi Options LBO
Wildcard X100P Board 1 OK 0 0 0 CAS Unk YEL 0 db (CSU)/0-133 feet (DSX-1)
Vamos configurar o asterisk para que seja carregado durante o Boot. O DAHDI ja vem por padrao configurado para iniciar nos runlevels 3, 4 e 5 automaticamente:
[root@matheus init.d]# chkconfig --level 35 asterisk on
[root@matheus ~]# chkconfig --list | grep dahdi
dahdi 0:não 1:não 2:sim 3:sim 4:sim 5:sim 6:não
Em um próximo tutorial explicaremos como configurar o Asterisk.
Comentários
Obrigado