#lo primero que se debe hacer una vez instalado zentyal y actualizado es reinstalar el entorno lxde
sudo apt-get remove pcmanfm
sudo apt-get purge pcmanfm
sudo apt-get clean pcmanfm
sudo apt-get instal lxde
sudo apt-get install lxde
sudo reboot
#Para ejecurar un programa al iniciar sesion de lxde se debe modificar el siguiente archivo ( /etc/xdg/lxsession/LXDE/autostart )
#para adicionar el programa o comando que se quiere ejecutar anteponiendo el @
#Para instalar el nomachine lo ideal es descargarlo de la pagina e instalarlo con el siguiente comando.
dpkg -i nomachine_4.2.23_1_i386.deb
# y ejecutar el servidor nxserver
/etc/init.d/nxserver start
#Para iniciar el virtualbox automaticamente se debe crear un script y ejecutarlo desde el autostart de lxde
@sh /usr/bin/script
#el contenido del script debe tener:
#!/bin/bash
# -*- ENCODING: UTF-8 -*-
VBoxManage startvm "efw" poweron
exit
#Donde efw es el nombre de la maquina virtual.
sábado, 31 de mayo de 2014
jueves, 24 de octubre de 2013
Instalación Asterisk 11.6.0 En Ubuntu Sserver 12.04
Este
es un instructivo para la instalación de Asterisk 11.6.0 el cual
esta actualizado hasta la fecha. Adicional se muestra como se realiza
la instalación FreePBX.
Lo
primero es actualizar nuestro sistema, es importante resaltar que
esta instalacion se debe realizar una vez formateado nuestro server
a UBUNTU 12.04.
sudo
-i
apt-get
update
apt-get
upgrade
Unas
vez actualizado procedemos a reiniciar el server.
init
- 6
Despues
de reiniciado el server procedemos a instalar dependencias necesarias
para la instalacion de Asterisk y Freepbx.
sudo
apt-get install -y
gpm ssh openssl
libssl-dev vim
libncurses5-dev
libnewt-dev libxml2-dev sqlite3
libsqlite3-dev
libmysqlclient15-dev
ubuntu-restricted-extras subversion mysql-server mysql-client
libmysqlclient15-dev make openssh-server
apache2 bison flex php5 php5-curl php5-cli php5-mysql php-pear
php-db php5-gd curl sox pkg-config automake libtool autoconf git
uuid uuid-dev linux-headers-`uname
-r` build-essentialSi
presentas problemas al instalar estas librerías trata de instalarlas
una por una.
Ahora
ingresamos como usuario root y nos ubicamos en la carpeta /usr/src
sudo
-i
cd
/usr/src
Descargamos
los paquetes necesarios.
wget
http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
Procedemos
ahora a descomprimir los paquetes y a compilarlos.
tar
zxvf dahdi*
cd
dahdi*
make
make install
make install
make
config
cd
..
tar
zxvf libpri*
cd
libpri*
make
&& make install
sudo make config
sudo make config
cd
..
tar
zxvf asterisk*
cd
asterisk*
./configure
./contrib/scripts/get_mp3_source.sh
####
Este comando se ejecuta si al momento de la instalación el server lo
pide.
make
menuselect
make
make install
make samples
make install
make samples
make
config
/etc/init.d/dahdi
start
/etc/init.d/asterisk
start
asterisk
-rvvvvv
tar
-xvzf dahdi-tools*
cd
dahdi-tools*
./configure
make
make
install
make
config
/etc/init.d/dahdi
restart
dahdi_genconf
dahdi_cfg
-vvvvvvvvvvvv
cd
..
sudo tar -xvzf asterisk-addons-1.6.2.4.tar.gz
cd
asterisk-addons-1.6.2.4/
./configure
make
menuselect
make
make install
make samples
make install
make samples
exit
######
INSTALACION DE FREEPBX
#####
DEPENDENCIAS DE GOOGLE VOICEcd
/usr/srcsudo
wget
https://iksemel.googlecode.com/files/iksemel-1.4.tar.gzsudo
tar
xf
iksemel-1.4.tar.gzcd
iksemel-1.4sudo
./configuresudo
makesudo
make
installexport
VER_FREEPBX=2.11cd
/usr/srcsudo
svn
co http://www.freepbx.org/v2/svn/freepbx/branches/${VER_FREEPBX}
freepbxcd
freepbx
#####
CREACION DE USUARIO ASTERISK
sudo
adduser asterisk --disabled-password --no-create-home --gecos
"Asterisk User"sudo
chown
asterisk.
/var/run/asterisksudo
chown
-R
asterisk. /etc/asterisksudo
chown
-R
asterisk. /var/{lib,log,spool}/asterisksudo
chown
-R
asterisk. /usr/lib/asterisksudo
mkdir
/var/www/htmlsudo
chown
-R
asterisk. /var/www/######
MODIFICACIONES DE APACHEsudo
sed
-i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php5/apache2/php.inisudo
cp
/etc/apache2/apache2.conf
/etc/apache2/apache2.conf_origsudo
sed
-i
's/^\(User\|Group\).*/\1 asterisk/'
/etc/apache2/apache2.confsudo
service
apache2 restart#####
CONFIGURACION DE BASE DE DATOSexport
ASTERISK_DB_PW=amp109sudo
mysqladmin
-u root create asterisk -psudo
mysqladmin
-u root create asteriskcdrdb -psudo
mysql
-u root asterisk -p < SQL/newinstall.sqlsudo
mysql
-u root asteriskcdrdb -p < SQL/cdr_mysql_table.sqlsudo
mysql
-u root -p -e "GRANT ALL PRIVILEGES ON asterisk.* TO
asteriskuser@localhost IDENTIFIED BY '${ASTERISK_DB_PW}';"sudo
mysql
-u root -p -e "GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO
asteriskuser@localhost IDENTIFIED BY '${ASTERISK_DB_PW}';"sudo
mysql
-u root -p -e "flush privileges;"sudo
./start_asterisk
startsudo
./install_amp
--webroot
/var/www/freepbx###
Si sale error al ejecutar el comando anterior prueba con el
siguiente
sudo
./install_amp --username=asteriskuser --password=$ASTERISK_DB_PW
--webroot /var/www/freepbxsudo
amportal
a ma installallsudo
amportal
a reloadln
-s
/var/lib/asterisk/moh
/var/lib/asterisk/mohmp3amportal
start
Una
vez Hecho esto!! se procede a ingresar via WEB.
Recuerda
que esos datos los configuraste al momento de la instalación de
Freepbx.
Después
de ingresar vía web aparecerá en el freepbx el siguiente error
Symlink
from modules failed
Para
corregirlo ejecutar.
cd
/etc/asteriskrm
ccss.conf
confbridge.conf features.conf sip.conf iax.conf logger.conf
extensions.conf sip_notify.conf
después
desde el freepbx en la opcion module admin, debes desinstalar ‘Camp
On’ y luego volverlo a instalar.
Listo
eso es todo.. espero les funcione.
jueves, 30 de junio de 2011
FLASH OPERATOR PANEL
sudo -i
vi /etc/asterisk/manager.conf
[usuariopanel]
secret = panelpass
deny=0.0.0.0/0.0.0.0
permit=127.0.0.1/255.255.255.0
;permit=192.168.0.0/255.255.255.0 ;SI TU PANEL NO VA ESTAR EN EL MISMO SERVER.
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user
vi /var/www/freepbx/panel/op_server.cfg
Configurar el fop server.
Editar op_server.cfg y cambiar los parámetros apropiados para su configuración.
manager_host es el nombre de host o dirección IP de su Assudo -i
vi /etc/asterisk/manager.conf
terisk. si esta en el
mismo server es 127.0.0.1.
manager_user es la definida por el usuario en manager.conf (a raíz de este ejemplo de
configuración, debe ser "usuariopanel"(sin las comillas))
manager_secret es el secret definido para el usuario (a raíz de este ejemplo de
configuración, debe ser "panelpass"(sin las comillas))
security_code es el código para desbloquear el panel.
cd /var/www/freepbx/panel/
cp flash/* /var/www/freepbx/panel/sudo -i
vi /etc/asterisk/manager.conf
despues editar en /var/www/freepbx/admin/views/panel.php
vi /var/www/freepbx/admin/views/panel.php
debe quedar son la siguiente fuente.
src="../panel/index.html"
luego ejecutar.
chmod a+x op_server.pl
amportal stop_fop
./op_server.pl
y ya se puede ver en http://x.x.x.x/freepbx/admin/panel.php
y por ultimo
amportal restart
vi /etc/asterisk/manager.conf
[usuariopanel]
secret = panelpass
deny=0.0.0.0/0.0.0.0
permit=127.0.0.1/255.255.255.0
;permit=192.168.0.0/255.255.255.0 ;SI TU PANEL NO VA ESTAR EN EL MISMO SERVER.
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user
vi /var/www/freepbx/panel/op_server.cfg
Configurar el fop server.
Editar op_server.cfg y cambiar los parámetros apropiados para su configuración.
manager_host es el nombre de host o dirección IP de su Assudo -i
vi /etc/asterisk/manager.conf
terisk. si esta en el
mismo server es 127.0.0.1.
manager_user es la definida por el usuario en manager.conf (a raíz de este ejemplo de
configuración, debe ser "usuariopanel"(sin las comillas))
manager_secret es el secret definido para el usuario (a raíz de este ejemplo de
configuración, debe ser "panelpass"(sin las comillas))
security_code es el código para desbloquear el panel.
cd /var/www/freepbx/panel/
cp flash/* /var/www/freepbx/panel/sudo -i
vi /etc/asterisk/manager.conf
despues editar en /var/www/freepbx/admin/views/panel.php
vi /var/www/freepbx/admin/views/panel.php
debe quedar son la siguiente fuente.
src="../panel/index.html"
luego ejecutar.
chmod a+x op_server.pl
amportal stop_fop
./op_server.pl
y ya se puede ver en http://x.x.x.x/freepbx/admin/panel.php
y por ultimo
amportal restart
INSTALACIÓN DE FREEPBX
cd /usr/src/
sudo wget http://mirror.freepbx.org/freepbx-2.9.0.tar.gz
sudo tar -xzvf freepbx-2.9.0.tar.gz
cd freepbx-2.9.0
Editaremos el sources.list de nuestro apt para que recoja de los repositorios de debían multimedia, ya que necesitamos el paquete lame y no se encuentra en los repositorios oficiales de debían.
sudo vi /etc/apt/sources.list
Y añadimos al final del archivo las dos siguientes lineas:
deb http://oktan.ls.fi.upm.es/debian-multimedia/ stable main
deb-src http://oktan.ls.fi.upm.es/debian-multimedia/ stable main
luego actualizamos
sudo apt-get update
Nos dará error debido a que no hemos instaladola keys del repositorio, para ello instalamos debian-multimedia-keyring pasando del Aviso de autenticaión:
sudo apt-get install debian-multimedia-keyring
sudo apt-get update
sudo apt-get install libxml2-dev apache2 libapache2-mod-php5 php5 php-pear php5-mysql php5-gd bison libncurses5-dev libaudiofile-dev curl sox php-db lame libssl-dev
Editaremos el archivo /etc/php5/apache2/php.ini
sudo vi /etc/php5/apache2/php.ini
y buscaremos la linea
upload_max_filesize = 2M
y la cambiaremos por
upload_max_filesize =40M
Tambien dejaremos a Off en este archivo la opción magic_quotes_gpc
magic_quotes_gpc = Off
Crearemos un grupo y un usuario llamados asterisk con los siguientes comandos:
sudo groupadd asterisk
sudo useradd -c "asterisk PBX" -d /var/lib/asterisk -g asterisk asterisk
Crearemos el directorio /var/run/asterisk:
sudo mkdir /var/run/asterisk
Ahora editaremos la configuración de asterisk para que utilice el directorio que acabamos de crear como directorio de ejecución:
sudo vi /etc/asterisk/asterisk.conf
La linea a cambiar es la que dice
astrundir => /var/run
y la debemos dejar así:
astrundir => /var/run/asterisk
Ahora instalremos unos cuantos paquetes perl necesarios para FreePBX y Asterisk con los siguientes comandos:
sudo perl -MCPAN -e 'install +YAML'
Contesaremos a todo que si hasta que nos deje de nuevo en la consola
sudo perl -MCPAN -e "install IPC::Signal"
sudo perl -MCPAN -e "install Net::Telnet"
sudo perl -MCPAN -e "install Proc::WaitStat"
Ahora crearemos las bases de datos necesarias para que FreePBX vaya llenando las tablas con nuestras configuraciones y luego pase a los archivos de asterisk lo necesario para su funcionamiento, recordad que los passwords que pedirán estos comandos son los que pusimos en la instalación de mysql-server
sudo mysqladmin create asteriskcdrdb -p
sudo mysql --user=root --password=TU_PASSWORD asteriskcdrdb < /usr/src/freepbx-2.9.0/SQL/cdr_mysql_table.sql
sudo mysqladmin create asterisk -p
sudo mysql --user root -p asterisk < /usr/src/freepbx-2.9.0/SQL/newinstall.sql
sudo mysql --user root -p
mysql> GRANT ALL PRIVILEGES on asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'TU_PASSWORD_ASTERISK';
mysql> GRANT ALL PRIVILEGES on asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'TU_PASSWORD_ASTERISK';
mysql> FLUSH PRIVILEGES;
mysql> quit
Perfecto ya tenemos creadas las bases de datos con sus tablas y sus datos, ahora debemos decirle a apache2 que se ejecute como el usuario que creamos llamado asterisk y que pertenezca al grupo llamado tambien asterisk, para ello editaremos el archivo /etc/apache2/envvars y sustituiremos www-data por asterisk.
sudo vi /etc/apache2/envvars
Lo dejaremos así:
# envvars - default environment variables for apache2ctl
# Since there is no sane way to get the parsed apache2 config in scripts, some
# settings are defined via environment variables and then used in apache2ctl,
# /etc/init.d/apache2, /etc/logrotate.d/apache2, etc.
export APACHE_RUN_USER=asterisk
export APACHE_RUN_GROUP=asterisk
export APACHE_PID_FILE=/var/run/apache2.pid
Reinciamos apache2:
sudo /etc/init.d/apache2 restart
Luego nos aparecerá el siguiente error
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
Para corregir este problema, necesitas editar el archivo httpd.conf
sudo vi /etc/apache2/httpd.conf
Por defecto el archivo httpd.conf esta en vacío, simplemente escribe lo siguiente.
ServerName localhost
Guarda el archivo y cierra el editor, y finalmente reinicias el servidor.
sudo /etc/init.d/apache2 restart
Antes de lanzar la instalación de FreePBX, debemos asegurarnos que asterisk está funcionando:
sudo kill -9 `pidof asterisk`
sudo asterisk
sudo ./install_amp
Nos debe aparecer algo como esto:
Checking for PEAR DB..OK
Checking for PEAR Console::Getopt..OK
Checking user..OK
Checking if Asterisk is running..running with PID: 29968..OK
Checking for /etc/amportal.conf../etc/amportal.conf does not exist, copying default
Creating new /etc/amportal.conf
Enter your USERNAME to connect to the 'asterisk' database:
[asteriskuser]
Enter your PASSWORD to connect to the 'asterisk' database:
[amp109] TU_PASSWORD
Enter the hostname of the 'asterisk' database:
[localhost]
Enter a USERNAME to connect to the Asterisk Manager interface:
[admin]
Enter a PASSWORD to connect to the Asterisk Manager interface:
[amp111] TU_PASSWORD
Enter the path to use for your AMP web root:
[/var/www/html]
/var/www/freepbx
Created /var/www/freepbx
Enter the IP ADDRESS or hostname used to access the AMP web-admin:
[xx.xx.xx.xx]
Enter a PASSWORD to perform call transfers with the Flash Operator Panel:
[passw0rd] TU_PASSWORD
Use simple Extensions [extensions] admin or separate Devices and Users [deviceanduser]?
[extensions]
Enter directory in which to store AMP executable scripts:
[/var/lib/asterisk/bin]
Created /var/lib/asterisk/bin
Enter directory in which to store super-user scripts:
[/usr/local/sbin]
Si llegado el caso nos aparece este error:
Checking for PEAR DB..FAILED
[FATAL] PEAR must be installed (requires DB.php). Include path: .:/usr/share/php:/usr/share/pear
entonces la solución es ejecutar en la consola
sudo pear install DB
y nuevamente ejecutar sudo ./install_amp
Después reiniciamos amportal
sudo amportal restart
Podemos comprobar visitando la página web de nuestra nueva centralita abriendo un navegador y entrando en la dirección http://xxx.xxx.xxx.xxx/freepbx
Aprovecharemos y actualizaremos FreePBX, entrad en FreePBX Administration de ahí os moveis a Module Admin, pulsad en Check for updates Online, y luego pinchad en Download All y Upgrade All y luego Process, repetir el proceso varias veces veces hasta que no quede nada por actualizar.
Para que podamos sacar llamadas por los canales Dahdi necesitaremos editar el archivo /etc/amportal.conf
sudo vi /etc/amportal.conf
Buscamos la linea comentada que pone
# ZAP2DAHDICOMPAT=true|false
La cual debe quedar asi:
ZAP2DAHDICOMPAT=true
De esta forma FreePBX sabrá configurar Asterisk para que utilize los canales Dahdi con la nueva nomenclatura y no con la antigua.
Reiniciad amportal:
sudo amportal restart
Para que Asterisk y FreePBX se inicien cuando encendamos el equipo tendremos que realizar lo siguiente:
sudo vi /etc/init.d/inicia_asterisk.sh
Y añadiremos lo siguiente:
#!/bin/bash
/usr/local/sbin/amportal start
Demosle permisos de ejecución:
sudo chmod a+x /etc/init.d/inicia_asterisk.sh
Ahora crearemos un enlace simbólico para que al inicio del sistema llame al script que acabamos de crear:
sudo ln -s /etc/init.d/inicia_asterisk.sh /etc/rc2.d/S92inicia_asterisk
OK ESO ES TODO!!!
sudo wget http://mirror.freepbx.org/freepbx-2.9.0.tar.gz
sudo tar -xzvf freepbx-2.9.0.tar.gz
cd freepbx-2.9.0
Editaremos el sources.list de nuestro apt para que recoja de los repositorios de debían multimedia, ya que necesitamos el paquete lame y no se encuentra en los repositorios oficiales de debían.
sudo vi /etc/apt/sources.list
Y añadimos al final del archivo las dos siguientes lineas:
deb http://oktan.ls.fi.upm.es/debian-multimedia/ stable main
deb-src http://oktan.ls.fi.upm.es/debian-multimedia/ stable main
luego actualizamos
sudo apt-get update
Nos dará error debido a que no hemos instaladola keys del repositorio, para ello instalamos debian-multimedia-keyring pasando del Aviso de autenticaión:
sudo apt-get install debian-multimedia-keyring
sudo apt-get update
sudo apt-get install libxml2-dev apache2 libapache2-mod-php5 php5 php-pear php5-mysql php5-gd bison libncurses5-dev libaudiofile-dev curl sox php-db lame libssl-dev
Editaremos el archivo /etc/php5/apache2/php.ini
sudo vi /etc/php5/apache2/php.ini
y buscaremos la linea
upload_max_filesize = 2M
y la cambiaremos por
upload_max_filesize =40M
Tambien dejaremos a Off en este archivo la opción magic_quotes_gpc
magic_quotes_gpc = Off
Crearemos un grupo y un usuario llamados asterisk con los siguientes comandos:
sudo groupadd asterisk
sudo useradd -c "asterisk PBX" -d /var/lib/asterisk -g asterisk asterisk
Crearemos el directorio /var/run/asterisk:
sudo mkdir /var/run/asterisk
Ahora editaremos la configuración de asterisk para que utilice el directorio que acabamos de crear como directorio de ejecución:
sudo vi /etc/asterisk/asterisk.conf
La linea a cambiar es la que dice
astrundir => /var/run
y la debemos dejar así:
astrundir => /var/run/asterisk
Ahora instalremos unos cuantos paquetes perl necesarios para FreePBX y Asterisk con los siguientes comandos:
sudo perl -MCPAN -e 'install +YAML'
Contesaremos a todo que si hasta que nos deje de nuevo en la consola
sudo perl -MCPAN -e "install IPC::Signal"
sudo perl -MCPAN -e "install Net::Telnet"
sudo perl -MCPAN -e "install Proc::WaitStat"
Ahora crearemos las bases de datos necesarias para que FreePBX vaya llenando las tablas con nuestras configuraciones y luego pase a los archivos de asterisk lo necesario para su funcionamiento, recordad que los passwords que pedirán estos comandos son los que pusimos en la instalación de mysql-server
sudo mysqladmin create asteriskcdrdb -p
sudo mysql --user=root --password=TU_PASSWORD asteriskcdrdb < /usr/src/freepbx-2.9.0/SQL/cdr_mysql_table.sql
sudo mysqladmin create asterisk -p
sudo mysql --user root -p asterisk < /usr/src/freepbx-2.9.0/SQL/newinstall.sql
sudo mysql --user root -p
mysql> GRANT ALL PRIVILEGES on asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'TU_PASSWORD_ASTERISK';
mysql> GRANT ALL PRIVILEGES on asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'TU_PASSWORD_ASTERISK';
mysql> FLUSH PRIVILEGES;
mysql> quit
Perfecto ya tenemos creadas las bases de datos con sus tablas y sus datos, ahora debemos decirle a apache2 que se ejecute como el usuario que creamos llamado asterisk y que pertenezca al grupo llamado tambien asterisk, para ello editaremos el archivo /etc/apache2/envvars y sustituiremos www-data por asterisk.
sudo vi /etc/apache2/envvars
Lo dejaremos así:
# envvars - default environment variables for apache2ctl
# Since there is no sane way to get the parsed apache2 config in scripts, some
# settings are defined via environment variables and then used in apache2ctl,
# /etc/init.d/apache2, /etc/logrotate.d/apache2, etc.
export APACHE_RUN_USER=asterisk
export APACHE_RUN_GROUP=asterisk
export APACHE_PID_FILE=/var/run/apache2.pid
Reinciamos apache2:
sudo /etc/init.d/apache2 restart
Luego nos aparecerá el siguiente error
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
Para corregir este problema, necesitas editar el archivo httpd.conf
sudo vi /etc/apache2/httpd.conf
Por defecto el archivo httpd.conf esta en vacío, simplemente escribe lo siguiente.
ServerName localhost
Guarda el archivo y cierra el editor, y finalmente reinicias el servidor.
sudo /etc/init.d/apache2 restart
Antes de lanzar la instalación de FreePBX, debemos asegurarnos que asterisk está funcionando:
sudo kill -9 `pidof asterisk`
sudo asterisk
sudo ./install_amp
Nos debe aparecer algo como esto:
Checking for PEAR DB..OK
Checking for PEAR Console::Getopt..OK
Checking user..OK
Checking if Asterisk is running..running with PID: 29968..OK
Checking for /etc/amportal.conf../etc/amportal.conf does not exist, copying default
Creating new /etc/amportal.conf
Enter your USERNAME to connect to the 'asterisk' database:
[asteriskuser]
Enter your PASSWORD to connect to the 'asterisk' database:
[amp109] TU_PASSWORD
Enter the hostname of the 'asterisk' database:
[localhost]
Enter a USERNAME to connect to the Asterisk Manager interface:
[admin]
Enter a PASSWORD to connect to the Asterisk Manager interface:
[amp111] TU_PASSWORD
Enter the path to use for your AMP web root:
[/var/www/html]
/var/www/freepbx
Created /var/www/freepbx
Enter the IP ADDRESS or hostname used to access the AMP web-admin:
[xx.xx.xx.xx]
Enter a PASSWORD to perform call transfers with the Flash Operator Panel:
[passw0rd] TU_PASSWORD
Use simple Extensions [extensions] admin or separate Devices and Users [deviceanduser]?
[extensions]
Enter directory in which to store AMP executable scripts:
[/var/lib/asterisk/bin]
Created /var/lib/asterisk/bin
Enter directory in which to store super-user scripts:
[/usr/local/sbin]
Si llegado el caso nos aparece este error:
Checking for PEAR DB..FAILED
[FATAL] PEAR must be installed (requires DB.php). Include path: .:/usr/share/php:/usr/share/pear
entonces la solución es ejecutar en la consola
sudo pear install DB
y nuevamente ejecutar sudo ./install_amp
Después reiniciamos amportal
sudo amportal restart
Podemos comprobar visitando la página web de nuestra nueva centralita abriendo un navegador y entrando en la dirección http://xxx.xxx.xxx.xxx/freepbx
Aprovecharemos y actualizaremos FreePBX, entrad en FreePBX Administration de ahí os moveis a Module Admin, pulsad en Check for updates Online, y luego pinchad en Download All y Upgrade All y luego Process, repetir el proceso varias veces veces hasta que no quede nada por actualizar.
Para que podamos sacar llamadas por los canales Dahdi necesitaremos editar el archivo /etc/amportal.conf
sudo vi /etc/amportal.conf
Buscamos la linea comentada que pone
# ZAP2DAHDICOMPAT=true|false
La cual debe quedar asi:
ZAP2DAHDICOMPAT=true
De esta forma FreePBX sabrá configurar Asterisk para que utilize los canales Dahdi con la nueva nomenclatura y no con la antigua.
Reiniciad amportal:
sudo amportal restart
Para que Asterisk y FreePBX se inicien cuando encendamos el equipo tendremos que realizar lo siguiente:
sudo vi /etc/init.d/inicia_asterisk.sh
Y añadiremos lo siguiente:
#!/bin/bash
/usr/local/sbin/amportal start
Demosle permisos de ejecución:
sudo chmod a+x /etc/init.d/inicia_asterisk.sh
Ahora crearemos un enlace simbólico para que al inicio del sistema llame al script que acabamos de crear:
sudo ln -s /etc/init.d/inicia_asterisk.sh /etc/rc2.d/S92inicia_asterisk
OK ESO ES TODO!!!
viernes, 20 de mayo de 2011
SERVICIO DE FAX EN ELASTIX
Primero debemos crear una extensión IAX.

Para nuestro caso elegimos la 401 y llenamos los siguientes campos.
User Extension = 401
Display Name = FAX
Secret = passwordfax
Una vez creada la extensión seleccionamos la pestaña superior que dice FAX y luego en la parte izquierda la opción New Virtual Fax. Allí introducimos los datos de nuestra extensión de Fax y el correo al cual queremos que nos lleguen los Faxes.

Recuerde que una vez creado nuestro FAX deberá aparecer con status Running and idle on ttyIAX1 de lo contrario no esta corriendo nuestro servicio de haylafax o IAXmoden en nuestra maquina. Por lo cual se debe iniciar por consola con las siguientes lineas.
# service iaxmodem start
# service hylafax start
Listo ya se puede decir que podemos recibir nuestros Faxes correctamente a nuestra maquina, pero no a nuestro correo. Para ello debemos configurar nuestro Postfix.
Configurando el servidor Postfix
La configuración de nuestro servidor postfix se encuentra en el archivo /etc/postfix/main.cf por tanto:
cd /etc/postfix
vi main.cf
Luego cambiamos las siguientes líneas:
#myhostname = host.domain.tld
#myhostname = virtual.domain.tld
Por:
myhostname = elastix.mydominio.com
#myhostname = virtual.domain.tld
Luego cambiamos:
#mydomain = domain.tld
Por:
mydomain = mydominio.com
ahora ingresamos el servidor SMTP por el cual se enviara el correo, que en nuestro caso es GMAIL.
#relayhost = $mydomain
#relayhost = [gateway.my.domain]
#relayhost = [mailserver.isp.tld]
#relayhost = uucphost
#relayhost = [an.ip.add.ress]
Por:
#relayhost = $mydomain
#relayhost = [gateway.my.domain]
relayhost = smtp.gmail.com:587
#relayhost = uucphost
#relayhost = [an.ip.add.ress]
Guardamos los cambios realizados a main.cf, luego recargamos la configuración de POSTFIX.
postfix reload
Luego necesitas modificar otra vez el archivo main.cf con los siguientes cambios, estos estan al final del archivo.
################################
#Ingresado por yb-webadmin
mydomain =mydominio.com
myhostname = elastix.mydominio.local
Configurando la cuenta de correo
Creamos el archivo sasl_passwd (sin extension)
vi /etc/postfix/sasl_passwd
Dentro del archivo registramos la cuenta de correo (existente) y su respectiva clave, esta es la cuenta desde la cual se enviaran los correos.
smtp.gmail.com:587 usuario@gmail.com:miclavedegmail
Grabamos el archive sasl_passwd.
Luego lo ciframos:
postmap hash:/etc/postfix/sasl_passwd
Luego editamos el archive main.cf
vi /etc/postfix/main.cf
Agregamos las siguientes lineas al final
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
grabamos el archivo y recargamos la configuracion del POSTFIX.
postfix reload
Como gmail usa SSL, necesitamos un certificado SSL, así que creamos uno propio, el cual será usado por el TLS
mkdir /etc/postfix/tls
cd /etc/postfix/tls
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024
Dejar el 'challenge password' vacio:
openssl req -new -key smtpd.key -out smtpd.csr
openssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crt
openssl rsa -in smtpd.key -out smtpd.key.unencrypted
mv -f smtpd.key.unencrypted smtpd.key
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650
Agregar las siguientes lineas en el archivo /etc/postfix/main.cf:
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/tls/smtpd.key
smtpd_tls_cert_file = /etc/postfix/tls/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/tls/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
tls_daemon_random_source = dev:/dev/urandom
Reiniciamos los servicios:
service saslauthd restart
service postfix restart
Para que inicien en el boot:
chkconfig postfix on
chkconfig saslauthd on
Para Revizar los logs de nuestro servicio de correo usamos:
tail -f /var/log/maillog
Abre otra consola y envia un correo para provar que esta funcionando correctamente.
mail destinatario@dominio.com
Subject: test
hello
.
Cc:
Luego de esto en el log debe salir algo parecido a esto y lo que importa es la palabra SENT:
elastix postfix/smtp[3257]: 08EAE21566: to=, relay=smtp.gmail.com[74.125.45.109]:587, delay=9.2, delays=0.21/0.06/6.8/2.1, dsn=2.0.0, status=sent (250 2.0.0 OK 1227556872 34sm10144335yxl. May 20:50:26 elastix postfix/qmgr[3250]: 08EAE21882: removed
Y Ya esta!!

Para nuestro caso elegimos la 401 y llenamos los siguientes campos.
User Extension = 401
Display Name = FAX
Secret = passwordfax
Una vez creada la extensión seleccionamos la pestaña superior que dice FAX y luego en la parte izquierda la opción New Virtual Fax. Allí introducimos los datos de nuestra extensión de Fax y el correo al cual queremos que nos lleguen los Faxes.

Recuerde que una vez creado nuestro FAX deberá aparecer con status Running and idle on ttyIAX1 de lo contrario no esta corriendo nuestro servicio de haylafax o IAXmoden en nuestra maquina. Por lo cual se debe iniciar por consola con las siguientes lineas.
# service iaxmodem start
# service hylafax start
Listo ya se puede decir que podemos recibir nuestros Faxes correctamente a nuestra maquina, pero no a nuestro correo. Para ello debemos configurar nuestro Postfix.
Configurando el servidor Postfix
La configuración de nuestro servidor postfix se encuentra en el archivo /etc/postfix/main.cf por tanto:
cd /etc/postfix
vi main.cf
Luego cambiamos las siguientes líneas:
#myhostname = host.domain.tld
#myhostname = virtual.domain.tld
Por:
myhostname = elastix.mydominio.com
#myhostname = virtual.domain.tld
Luego cambiamos:
#mydomain = domain.tld
Por:
mydomain = mydominio.com
ahora ingresamos el servidor SMTP por el cual se enviara el correo, que en nuestro caso es GMAIL.
#relayhost = $mydomain
#relayhost = [gateway.my.domain]
#relayhost = [mailserver.isp.tld]
#relayhost = uucphost
#relayhost = [an.ip.add.ress]
Por:
#relayhost = $mydomain
#relayhost = [gateway.my.domain]
relayhost = smtp.gmail.com:587
#relayhost = uucphost
#relayhost = [an.ip.add.ress]
Guardamos los cambios realizados a main.cf, luego recargamos la configuración de POSTFIX.
postfix reload
Luego necesitas modificar otra vez el archivo main.cf con los siguientes cambios, estos estan al final del archivo.
################################
#Ingresado por yb-webadmin
mydomain =mydominio.com
myhostname = elastix.mydominio.local
Configurando la cuenta de correo
Creamos el archivo sasl_passwd (sin extension)
vi /etc/postfix/sasl_passwd
Dentro del archivo registramos la cuenta de correo (existente) y su respectiva clave, esta es la cuenta desde la cual se enviaran los correos.
smtp.gmail.com:587 usuario@gmail.com:miclavedegmail
Grabamos el archive sasl_passwd.
Luego lo ciframos:
postmap hash:/etc/postfix/sasl_passwd
Luego editamos el archive main.cf
vi /etc/postfix/main.cf
Agregamos las siguientes lineas al final
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
grabamos el archivo y recargamos la configuracion del POSTFIX.
postfix reload
Como gmail usa SSL, necesitamos un certificado SSL, así que creamos uno propio, el cual será usado por el TLS
mkdir /etc/postfix/tls
cd /etc/postfix/tls
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024
Dejar el 'challenge password' vacio:
openssl req -new -key smtpd.key -out smtpd.csr
openssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crt
openssl rsa -in smtpd.key -out smtpd.key.unencrypted
mv -f smtpd.key.unencrypted smtpd.key
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650
Agregar las siguientes lineas en el archivo /etc/postfix/main.cf:
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/tls/smtpd.key
smtpd_tls_cert_file = /etc/postfix/tls/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/tls/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
tls_daemon_random_source = dev:/dev/urandom
Reiniciamos los servicios:
service saslauthd restart
service postfix restart
Para que inicien en el boot:
chkconfig postfix on
chkconfig saslauthd on
Para Revizar los logs de nuestro servicio de correo usamos:
tail -f /var/log/maillog
Abre otra consola y envia un correo para provar que esta funcionando correctamente.
mail destinatario@dominio.com
Subject: test
hello
.
Cc:
Luego de esto en el log debe salir algo parecido a esto y lo que importa es la palabra SENT:
elastix postfix/smtp[3257]: 08EAE21566: to=
Y Ya esta!!
miércoles, 4 de mayo de 2011
Problema del NAT en Asterisk
Hace un tiempo me encontre con el siguiente problema en una de mis instalaciones donde el cliente solicitaba una extensión por fuera de la red Local.
estaba usando X-lite mediante una cuenta SIP. La extensión se registraba OK.
Luego intentaba hacer una llamada y al establecerce no se escuchaba nada, al cabo de un rato la llamada se colgaba sola.
En un principio, todo parece ir bien, se inicia la llamada, se escucha el tono, y suena el teléfono de destino. El problema viene al descolgar, es decir, cuando el audio se establece entre los participantes de la conversación. En este punto, pueden pasar 2 cosas: que el llamante lo escuche a su interlocutor o que no haya audio en absoluto.
El protocolo SIP solo lleva la señalización de la llamada, mientras que el tráfico de audio (RTP) se intenta llevar a cabo de extremo a extremo. El problema viene por que el puerto al que se manda el audio es aleatorio. El router es capaz de dirigir correctamente la señalización, pero es incapaz de saber si el tráfico RTP es de esa llamada, y no sabe a donde mandarlo (debería mandárselo al mismo que la señalización). Como consecuencia, el audio no fluye correctamente entre los 2 interlocutores.
La solucion es Simple..
Instalé el Softphone Zoiper Mediante una Cuenta IAX y problema solucionado.
estaba usando X-lite mediante una cuenta SIP. La extensión se registraba OK.
Luego intentaba hacer una llamada y al establecerce no se escuchaba nada, al cabo de un rato la llamada se colgaba sola.
En un principio, todo parece ir bien, se inicia la llamada, se escucha el tono, y suena el teléfono de destino. El problema viene al descolgar, es decir, cuando el audio se establece entre los participantes de la conversación. En este punto, pueden pasar 2 cosas: que el llamante lo escuche a su interlocutor o que no haya audio en absoluto.
El protocolo SIP solo lleva la señalización de la llamada, mientras que el tráfico de audio (RTP) se intenta llevar a cabo de extremo a extremo. El problema viene por que el puerto al que se manda el audio es aleatorio. El router es capaz de dirigir correctamente la señalización, pero es incapaz de saber si el tráfico RTP es de esa llamada, y no sabe a donde mandarlo (debería mandárselo al mismo que la señalización). Como consecuencia, el audio no fluye correctamente entre los 2 interlocutores.
La solucion es Simple..
Instalé el Softphone Zoiper Mediante una Cuenta IAX y problema solucionado.
jueves, 14 de abril de 2011
Personaliza Tu ChanSpy para escuchar una extension en particular
Hola..
Asterisk cuenta con una aplicación llamada chanspy la cual se encuentra en la ruta /etc/asterisk/extension_additional.conf y por default viene así:
[app-chanspy]
include => app-chanspy-custom
exten => 555,1,Macro(user-callerid,)
exten => 555,n,Answer
exten => 555,n,Wait(1)
exten => 555,n,ChanSpy()
exten => 555,n,Hangup
; end of [app-chanspy]
Esto nos permite realizar escucha de llamadas al azar de las extensiones registradas en nuestro asterisk.
Pero si lo que queremos es monitorear una extensión en particular lo que debemos hacer es incluir en /etc/asterisk/extension_custom.conf lo siguiente:
[app-chanspy-custom]
exten => _*51xx,1,ChanSpy(SIP/${EXTEN:2},q)
Recuerda que el número 2 que esta seguido de la palabra EXTEN lo que hace es eliminar *5 de tus extensiones 1XX
Es solo un ejemplo. Espero Les Sirva!!
Asterisk cuenta con una aplicación llamada chanspy la cual se encuentra en la ruta /etc/asterisk/extension_additional.conf y por default viene así:
[app-chanspy]
include => app-chanspy-custom
exten => 555,1,Macro(user-callerid,)
exten => 555,n,Answer
exten => 555,n,Wait(1)
exten => 555,n,ChanSpy()
exten => 555,n,Hangup
; end of [app-chanspy]
Esto nos permite realizar escucha de llamadas al azar de las extensiones registradas en nuestro asterisk.
Pero si lo que queremos es monitorear una extensión en particular lo que debemos hacer es incluir en /etc/asterisk/extension_custom.conf lo siguiente:
[app-chanspy-custom]
exten => _*51xx,1,ChanSpy(SIP/${EXTEN:2},q)
Recuerda que el número 2 que esta seguido de la palabra EXTEN lo que hace es eliminar *5 de tus extensiones 1XX
Es solo un ejemplo. Espero Les Sirva!!
Suscribirse a:
Entradas (Atom)