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
jueves, 30 de junio de 2011
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!!!
Suscribirse a:
Entradas (Atom)