Asterisk 14 Freepbx 14 su Debian Stretch 9.1

 

Asterisk 14 Freepbx 14 su Debian Stretch 9.1

Asterisk 14 Freepbx 14 su Debian Stretch 9.1

Aggiornato al 19/10/2017 su Debian 9.2

Ecco un'altra nuova guida prodotta e testata da me su come installare un centralino utilizzando  Asterisk 14 Freepbx 14 con Debian Stretch 9.1, Dopo l'ultima guida su Debian 8.8, la nuova release stable è Debian 9.1, codename Stretch, ed inevitabilmente come spesso succede, diverse cose sono cambiate. La prima cosa che si riscontra è che nei repository non si trova più php5 ma si è passati a php7.0, poi manca anche libmyodbc, quindi bisogna attrezzarsi per ottenere queste dipendenze fondamentali, dato che Freepbx non supporta ancora php7.0. I passaggi successivi saranno eseguiti come utente root e su una nuova installazione di Debian Stretch:

Aggiornare il sistema:

# apt update; apt upgrade

se viene installato un nuovo kernel riavviare.

Rimuovere php7.0 ed installare php5.6:

# apt remove --purge php7*
# apt install curl apt-transport-https net-tools -y
# curl https://packages.sury.org/php/apt.gpg | apt-key add -
# echo 'deb https://packages.sury.org/php/ stretch main' > /etc/apt/sources.list.d/deb.sury.org.list
# apt update

Scaricare le dipendenze ed i servizi necessari:

# apt install -y build-essential linux-headers-`uname -r` openssh-server apache2 bison php5.6 php5.6-mbstring php5.6-curl php5.6-fpm php5.6-cli php5.6-mysql php-pear php5.6-gd php5.6-odbc curl sox libncurses5-dev libssl-dev default-libmysqlclient-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git unixodbc-dev uuid uuid-dev libasound2-dev libogg-dev libvorbis-dev libicu-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp0-dev libspandsp-dev subversion libtool-bin python-dev php5.6-xml php5.6-gd default-mysql-client default-mysql-server default-mysql-client-core default-mysql-server-core bison flex mongodb dirmngr php5.6-cgi libapache2-mod-security2 libapache2-mod-php5.6

Installare nodejs:

# curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
# apt install -y nodejs

Reboot server:

# reboot

Scaricare: Dahdi Libpri (solo se si ha hardware pstn) Jansson, Asterisk, Freepbx

# cd /usr/src
# wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
# wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz
# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-14-current.tar.gz
# wget -O jansson.tar.gz https://github.com/akheron/jansson/archive/v2.10.tar.gz
# wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-14.0-latest.tgz

Compilare ed installare Dahdi:

# cd /usr/src
# tar xvfz dahdi-linux-complete-current.tar.gz
# rm -rf dahdi-linux-complete-current.tar.gz
# cd dahdi-linux-complete-2*
# make all
# make install
# make config
# cd /usr/src
# tar xvfz libpri-current.tar.gz
# rm -rf libpri-current.tar.gz
# cd libpri-1*
# make -j4
# make install

Installare Jansson:

# cd /usr/src
# tar vxfz jansson.tar.gz
# rm -rf jansson.tar.gz
# cd jansson-*
# autoreconf -i
# ./configure
# make -j4
# make install

Installare Asterisk 14:

# cd /usr/src
# tar xvfz asterisk-14-current.tar.gz
# rm -rf asterisk-14-current.tar.gz
# cd asterisk-14.*
# contrib/scripts/get_mp3_source.sh
# ./contrib/scripts/install_prereq install
# ./configure --with-pjproject-bundled
# make menuselect

a questo punto inserire il prefisso internazionale, nel nostro caso 39:

Asterisk 14 Freepbx 14 su Debian Stretch 9.1

Asterisk 14 Freepbx 14 su Debian Stretch 9.1

e poi abilitare  format_mp3:

Installare Asterisk 13 con Freepbx 12 su Raspberry pi 2 e Debian Jessie

Asterisk 14 Freepbx 14 su Debian Stretch 9.1

# make -j4
# make install
# make config
# ldconfig

adesso bisogna verificare che asterisk funzioni correttamente:

# /etc/init.d/asterisk start
# asterisk -rvvv

output:

Asterisk 14 Freepbx 14 su Debian Stretch 9.1

Installazione e configurazione di Apache2 e permessi:

# /etc/init.d/asterisk stop
# groupadd asterisk
# useradd -d /var/lib/asterisk -g asterisk asterisk
# chown -R asterisk:asterisk /var/spool/asterisk /var/run/asterisk /etc/asterisk /var/{lib,log,spool}/asterisk /usr/lib/asterisk /var/www
# sed -i 's/#AST_USER="asterisk"/AST_USER="asterisk"/g' /etc/default/asterisk
# sed -i 's/#AST_GROUP="asterisk"/AST_GROUP="asterisk"/g' /etc/default/asterisk
# cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_orig
# sed -i 's/AllowOverride None/AllowOverride All/'  /etc/apache2/apache2.conf
# sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf
# mv /var/www/html /var/www/html.bak

Installazione e Configurazione ODBC:

andare direttamente sul sito e scaricare mysql-connector-odbc-5.3.9-linux-debian9-x86-64bit.tar.gz, e poi copiare i driver nel giusto percorso:

# tar -xvf mysql-connector-odbc-5.3.9-linux-debian9-x86-64bit.tar.gz
# cp mysql-connector-odbc-5.3.9-linux-debian9-x86-64bit/lib/libmyodbc5* /usr/lib/x86_64-linux-gnu/odbc/

poi:

# nano /etc/odbcinst.ini

ed incollare dentro qualcosa del genere, considerando che i nomi dei due driver possono cambiare in base alla release di mysql-connector:

[MySQL]
Description = ODBC for MySQL
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc5S.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so
FileUsage = 1

poi ancora:

# nano /etc/odbc.ini

ed incollare dentro:

[MySQL-asteriskcdrdb]
Description=MySQL connection to 'asteriskcdrdb' database
driver=MySQL
server=localhost
database=asteriskcdrdb
Port=3306
Socket=/var/run/mysqld/mysqld.sock
option=3

a questo punto riavviare:

# reboot

al riavvio:

# a2enmod rewrite
# a2enconf php5.6-fpm
# a2enmod proxy_fcgi setenvif
# systemctl restart apache2

ultima modifica da fare:

# nano /etc/php/5.6/apache2/php.ini

e nel menu Resource Limits settare memory_limit = 256M, ed ancora nel menu File Uploads settare upload_max_filesize = 120M

# systemctl restart apache2

Installazione di Freepbx 14:

# cd /usr/src
# tar vxfz freepbx-14.0-latest.tgz
# rm -rf freepbx-14.0-latest.tgz
# cd freepbx
# ./start_asterisk start
# ./install -n

se tutto è andato bene il server Asterisk è raggiungibile all'indirizzo http://ip_raspberry. La prima cosa da fare è quella di scegliere nome utente, password e mail, per accedere al pannello di amministrazione. Andare poi nel menu Admin-Module Admin e scaricare ed aggiornare tutti i moduli. In caso di problemi:

# fwconsole chown
# fwconsole reload
# fwconsole ma upgrade framework
# fwconsole restart

Errori:

Nessuno, o meglio nel caso di problemi di moduli mancanti in Dahdi, bisogna ripetere di nuovo compilazione ed installazione.

Asterisk 14 Freepbx 14 su Debian Stretch 9.1

enjoy 😉

Post simili (quasi):

6 pensieri riguardo “Asterisk 14 Freepbx 14 su Debian Stretch 9.1”

  1. Firefox 54.0 Firefox 54.0 Mac OS X  10.10 Mac OS X 10.10
    Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:54.0) Gecko/20100101 Firefox/54.0

    Se su debian 9 doveste incappare in questo errore:

    Assuming you are Database Root
    Checking if SELinux is enabled…Its not (good)!
    Reading /etc/asterisk/asterisk.conf…Done
    Checking if Asterisk is running and we can talk to it as the 'asterisk' user…Error!
    Error communicating with Asterisk.  Ensure that Asterisk is properly installed and running as the asterisk user
    Asterisk appears to be running as asterisk
    Try starting Asterisk with the './start_asterisk start' command in this directory

     

    dopo avere lanciato lo script ./install -n

    potete risolvere installando sudo che di default non è installato

    apt-get install sudo

    Spero di essere stato utile.

    Max

     

     

     

     

  2. Internet Explorer 11.0 Internet Explorer 11.0 Windows 7 x64 Edition Windows 7 x64 Edition
    Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko

    Ottimo articolo. Mi stavo organizzando per avere un centralino con lo stretto necessario, purtroppo, pur avendo eseguito passo passo le istruzioni il tutto non funziona.
    Primo problema:
    nano /etc/php/5.6/apache2/php.ini, la cartella apache2 non esiste. Poco male

    secondo problema
    Digitando l’indirizzo del centralino trovo errore 505.

    Non ho molta dimistichezza con debian9, pertanto chiedo un piccolo aiuto.

    P.S. ho utilizzato una debian9.1 virtualizzata con KVM e non ho avuto nessun errore durante la compilazione dei sorgenti

    grazie

  3. Firefox 52.0 Firefox 52.0 GNU/Linux x64 GNU/Linux x64
    Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0

    controlla se veramente hai installato php 5.6 ed apache2, spulcia manualmente la cartella /etc

  4. Firefox 55.0 Firefox 55.0 Windows 7 x64 Edition Windows 7 x64 Edition
    Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0

    Grazie per la risposta.

    Php56 installato ed anche apache

    Dopo vari tentativi ho risolto

    La mia Debian era una installazione minima e non aveva installato php7.0

    Il primo passo è stato quello i installare dai reposity  php5.6 e successivamente rimuovere delle dipendenze php7

     

    Ha funzionato tutto. Perfetto

     

    Ho notato un errore nella dashboard di Freepbx "No room conference room app" ma penso non sia grave per il mio utilizzo.

     

    grazie di nuovo per l'ottima guida

  5. Google Chrome 61.0.3163.100 Google Chrome 61.0.3163.100 Windows 10 x64 Edition Windows 10 x64 Edition
    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36

    Hello,

    Please first, excuse writting in English (I'm from Spain BTW).

    I've followed your instructions and all goes well BUT freepbx CDR Report doesn't work, and asterisk console is throwing me these errors:

    [2017-10-06 18:34:53] NOTICE[6480] res_odbc.c: Registered ODBC class 'asteriskcdrdb' dsn->[MySQL-asteriskcdrdb]
    [2017-10-06 18:34:53] WARNING[6480] cdr_adaptive_odbc.c: No such connection 'asteriskcdrdb' in the 'asteriskcdrdb' section of cdr_adaptive_odbc.conf.  Check res_odbc.conf.
    [2017-10-06 18:34:56] WARNING[6480] cel_odbc.c: No such connection 'asteriskcdrdb' in the 'cel' section of cel_odbc.conf.  Check res_odbc.conf.
     

    I have checked database and table exists, my odbc.ini and odbcinst.ini files are exactly as yours and my odbc connector version is exactly the same as your version.
    I'm trying to figure out what's happening here, do you have some advice? If I find something I'll let you know

    Thanks for the great post

  6. Firefox 56.0 Firefox 56.0 GNU/Linux x64 GNU/Linux x64
    Mozilla/5.0 (X11; Linux x86_64; rv:56.0) Gecko/20100101 Firefox/56.0

     

    @jN

    if you have downloaded last mysql-connector-odbc-5.3.9-linux-glibc2.12-x86-64bit, your odbcinst.ini must be:

    [MySQL]
    Description = ODBC for MySQL
    Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc5a.so
    Setup = /usr/lib/x86_64-linux-gnu/odbc/libodbcmy5w.so
    FileUsage = 1

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *