Interesting... Thanks.. BTW, I thought dahdi is no longer used, we quit installing it a while back ?
Regards Faisal Imtiaz Snappy Internet & Telecom 7266 SW 48 Street Miami, FL 33155 Tel: 305 663 5518 x 232 Help-desk: (305)663-5518 Option 2 or Email: [email protected] > From: "Eric Kuhnke" <[email protected]> > To: [email protected] > Sent: Thursday, January 14, 2016 11:40:54 PM > Subject: [AFMUG] Notes: Latest FreePBX+Asterisk on Debian Stretch (testing) > amd64 > For those with a lot of debian experience, many people have noticed that the > "testing" branch is actually a lot more stable than described. Debian "stable" > is very conservative and designed to have nothing break. I even know people > who > run their desktop workstation as 'sid'. > If you're adventurous enough to run 'stretch' on a VoIP server, here's some > notes on the process of manually installing the latest releases of Asterisk > and > FreePBX together on 'stretch'. If you just want something that works and is > much more conservative in the software version packaging, the same process > could apply to 'jessie' (the current stable version). > This started when I became generally dissatisfied with the FreePBX distro > which > is based on CentOS 6.x and ships with an ancient kernel. I'm not a huge fan of > CentOS as either a hypervisor or guest VM, and I needed to run FreePBX on some > very new hardware that is not happy with a 2.6.xx series Linux kernel. It was > necessary to have current kernel support for fun things like btrfs and some > new > 10GbE NICs. (Yes, I know you can install the epel-kernel repo on centos and > add > kernel v4.3.x, but that's a hack and going outside of the distro's normal repo > tree). > Here's my step by step notes file if anyone wants to try: > install debian stretch amd64 no gui > set up the test virtualbox vm to use bridged networking to the host eth0 > adapter > (not NAT) > fully update debian stretch to the latest version of everything > install and configure asterisk. instructions from freepbx website. everything > must be run as root (not sudo!) > you will want to be able to ssh into the server while doing the install > edit the sshd_config to PermitRootLogin Yes > install required dependencies: > apt-get install -y build-essential linux-headers-`uname -r` openssh-server > apache2 mysql-server\ > mysql-client bison flex php5 php5-curl php5-cli php5-mysql php-pear php5-gd > curl > sox\ > libncurses5-dev libssl-dev 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 libcurl4-openssl-dev libical-dev > libneon27-dev libsrtp0-dev\ > libspandsp-dev sudo libmyodbc subversion > choose no root password for mysql-server (yet) , this will be configured in a > later step > apt-get install sox lame ffmpeg id3tool id3v2 p7zip rsync nmap curl snmp gcc > a2enmod ssl > a2enmod rewrite > delete some things from the local apt disk cache to free up disk space > apt-get clean > apt-get autoclean > install legacy pear requirements, reference: > https://pear.php.net/package/Console_Getopt/ pear install Console_Getopt > 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-1.4-current.tar.gz > wget > http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz > wget -O jansson.tar.gz https://github.com/akheron/jansson/archive/v2.7.tar.gz > wget http://www.pjsip.org/release/2.4/pjproject-2.4.tar.bz2 we want to > manually > retrieve and install the latest versions of all these projects, from these > sources: http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/ > http://downloads.asterisk.org/pub/telephony/libpri/ > http://downloads.asterisk.org/pub/telephony/asterisk/ > http://www.digip.org/jansson/ http://www.pjsip.org/download.htm compile and > install DAHDI and libpri > cd /usr/src > tar xvfz dahdi-linux-complete-current.tar.gz > rm -f dahdi-linux-complete-current.tar.gz > cd dahdi-linux-complete-* > make all > make install > make config > cd /usr/src > tar xvfz libpri-1.4-current.tar.gz > rm -f libpri-1.4-current.tar.gz > cd libpri-* > make > make install > note: DAHDI is a kernel module so it will need to be recompiled and > reinstalled > if the kernel is upgraded > compile and install pjsip (pjproject) > cd /usr/src > tar -xjvf pjproject-2.4.tar.bz2 > rm -f pjproject-2.4.tar.bz2 > cd pjproject-2.4 > CFLAGS='-DPJ_HAS_IPV6=1' ./configure --enable-shared --disable-sound > --disable-resample --disable-video --disable-opencore-amr > make dep > make > make install > compile and install jansson > cd /usr/src > tar vxfz jansson.tar.gz > rm -f jansson.tar.gz > cd jansson-* > autoreconf -i > ./configure > make > make install > compile and install asterisk > cd /usr/src > tar xvfz asterisk-13-current.tar.gz > rm -f asterisk-13-current.tar.gz > cd asterisk-* > contrib/scripts/get_mp3_source.sh > contrib/scripts/install_prereq install > ./configure > make menuselect > choose enabled modules > make > make install > make config > ldconfig > update-rc.d -f asterisk remove > retrieve more asterisk sounds > cd /var/lib/asterisk/sounds > wget > http://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-en-wav-current.tar.gz > wget > http://downloads.asterisk.org/pub/telephony/sounds/asterisk-extra-sounds-en-wav-current.tar.gz > tar xvf asterisk-core-sounds-en-wav-current.tar.gz > rm -f asterisk-core-sounds-en-wav-current.tar.gz > tar xfz asterisk-extra-sounds-en-wav-current.tar.gz > rm -f asterisk-extra-sounds-en-wav-current.tar.gz > # Wideband Audio download > wget > http://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-en-g722-current.tar.gz > wget > http://downloads.asterisk.org/pub/telephony/sounds/asterisk-extra-sounds-en-g722-current.tar.gz > tar xfz asterisk-extra-sounds-en-g722-current.tar.gz > rm -f asterisk-extra-sounds-en-g722-current.tar.gz > tar xfz asterisk-core-sounds-en-g722-current.tar.gz > rm -f asterisk-core-sounds-en-g722-current.tar.gz > Install and Configure FreePBX > Create the Asterisk user and set base file permissions. > useradd -m asterisk > chown asterisk. /var/run/asterisk > chown -R asterisk. /etc/asterisk > chown -R asterisk. /var/{lib,log,spool}/asterisk > chown -R asterisk. /usr/lib/asterisk > rm -rf /var/www/htmlcd /et > A few small modifications to Apache. > sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php5/apache2/php.ini > cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_orig > sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf > sed -i 's/AllowOverride None/AllowOverride All/' /etc/apache2/apache2.conf > service apache2 restart > create the /etc/odbcinst.ini file with the following contents: > [MySQL] > Description = ODBC for MySQL > Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc.so > Setup = /usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so > FileUsage = 1 > ceate the /etc/odbc.ini file with the following contents: > [MySQL-asteriskcdrdb] > Description=MySQL connection to 'asteriskcdrdb' database > driver=MySQL > server=localhost > database=asteriskcdrdb > Port=3306 > Socket=/var/run/mysqld/mysqld.sock > option=3 > Download and install FreePBX. > cd /usr/src > wget > http://mirror.freepbx.org/modules/packages/freepbx/freepbx-13.0-latest.tgz > tar vxfz freepbx-13.0-latest.tgz > rm -f freepbx-13.0-latest.tgz > cd freepbx > ./start_asterisk start > ./install -n > configure freepbx from its http GUI > use the GUI to install all of the free FreePBX modules > you may need to go through module installation up to 4 times, as some things > will not install until > their dependencies are met (confereces, call recording, etc). install, check > repositories, install again, > repeat. > chown the directory /etc/dahdi/ and everything in it to the asterisk user and > asterisk group, by > running the command 'amportal chown' > edit /etc/ssh/sshd_config and disable remote root login > edit /etc/sudoers and add eric to the sudoers list > copy eric's ssh public key to the system and verify that logging in works, > sudo > works > you need to create a systemd startup script to start asterisk and other things > on boot, reference: > http://wiki.freepbx.org/display/HTGS/Example+systemd+startup+script+for+FreePBX
