Ubuntu18.04 安装Asterisk16.10 + FreePBX15.0

1.首先需要先更新一下ubuntu的apt源

cp /etc/apt/sources.list /etc/apt/sources.list.bak
echo > /etc/apt/sources.list
vim /etc/apt/sources.list
#然后将下面的内容粘贴到sources.list文件中
deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe

还需要添加ppa源,因为在第二步安装依赖的时候需要安装php5.6,如果不添加的话apt-get install的时候会提示找不到该包。

apt-get install -y language-pack-en-base
LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php
add-apt-repository ppa:ondrej/php

执行更新镜像列表.

apt update

2.安装依赖包

apt-get install -y build-essential linux-headers-`uname -r` openssh-server apache2 mysql-server mysql-client bison flex php5.6 php5.6-curl php5.6-cli php5.6-xml php5.6-mysql php-pear php5.6-gd libapache2-mod-php5.6 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 libicu-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp0-dev libspandsp-dev sudo subversion libtool-bin python-dev

在安装mysql的时候会有几次提示设置密码的窗口弹出,在这里我们直接回车即可,默认设置空密码,避免后续安装asterisk的时候出现问题
在安装php5.6、php-pear、libssl-dev、libxml2-dev、libicu-dev、libneon27-dev这几个包的时候下载速度会比较的慢

安装完了之后,将php切换到php5.6。

sudo a2dismod php7.1
sudo a2enmod php5.6
sudo service apache2 restart
sudo update-alternatives --set php /usr/bin/php5.6

3.安装nodejs

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

4.安装及配置Asterisk

下载源码包

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-16-current.tar.gz

编译安装dahdi

tar -zxvf dahdi-linux-complete-current.tar.gz
cd dahdi-linux-complete*
make all
make install
make config
tar -zxvf tar -zxvf libpri-current.tar.gz
cd libpri*
make
make install

编译安装Asterisk

tar -zxvf asterisk-16-current.tar.gz
cd asterisk*
contrib/scripts/get_mp3_source.sh
contrib/scripts/install_prereq install
#这里有个弹窗需要用户填入国家的电话代码,中国为86
./configure  --with-pjproject-bundled --with-jansson-bundled
make menuselect
#这里会出现一个弹窗,会询问你需要启用哪些模块,按回车则启用对应模块,默认即可
make
make install
make config
ldconfig
update-rc.d -f asterisk remove

5.安装和配置FreePBX

创建Asterisk用户并设置基本文件权限

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/html

修改apache2配置文件

sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php/5.6/apache2/php.ini
cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
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

配置ODBC

#编辑/etc/odbcinst.ini并添加以下内容。
[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#编辑或创建/etc/odbc.ini并添加以下部分。
[MySQL-asteriskcdrdb]
Description=MySQL connection to 'asteriskcdrdb' database
driver=MySQL
server=localhost
database=asteriskcdrdb
Port=3306
Socket=/var/run/mysqld/mysqld.sock
option=3

正式编译安装FreePBX

cd /usr/src
wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-15.0-latest.tgz
tar vxfz freepbx-15.0-latest.tgz
cd freepbx
touch /etc/asterisk/ari.conf
./start_asterisk start
./install -n

重新启动apache

a2enmod rewrite
service apache2 restart

6.最后在浏览器输入freepbx服务器的ip地址就可以看到后台界面了

Ubuntu18.04 安装Asterisk16.10 + FreePBX15.0相关推荐

  1. Ubuntu18.04 安装搭建 hadoop-3.3.0 集群

    Ubuntu18.04 安装搭建 hadoop-3.3.0 集群 参考博文:https://blog.csdn.net/sunxiaoju/article/details/85222290?ops_r ...

  2. Linux系列讲解 —— Ubuntu18.04安装gcc 9.1.0(C++17)

    目录 1. 下载gcc 9.1.0源码压缩包 2. 解压缩包 3. 检查并配置源码编译的环境 5. 编译gcc源码 6. 安装gcc 7. 使用update-alternatives管理本地多个版本的 ...

  3. Ubuntu18.04 安装opencv 3.2.0 ,opencv3.4.15

    1. 源码 https://github.com/opencv/opencv 2. 安装依赖 sudo apt-get install build-essential sudo apt-get ins ...

  4. Ubuntu18.04安装配置OpenCv4.1.0

    1. 安装依赖项 请确保ubuntu已经安装了g++, cmake, make, wget, unzip,vim若没有安装,则使用以下命令安装依次执行: sudo apt install -y g++ ...

  5. ubuntu18.04 安装 CARLA0.9.10

    ubuntu18.04 安装 CARLA0.9.10 https://carla.readthedocs.io/en/0.9.10/build_linux/ 方法1 :Debian 安装 1. Set ...

  6. Ubuntu18.04安装Dlib-19.19.0成功

    VMware内Ubuntu18.04安装Dlib-19.19.0成功 本人第一篇博客,如果哪里写的不好还请多多包涵. 说明一下,我是通过pip去安装的所有库,除了Cmake.因为Dlib需要C++环境 ...

  7. VMware linux 虚拟机(ubuntu18.04) 安装TL-WDN5200H 2.0网卡驱动 完美使用(适用于vmware无法桥接网络使用此方法)

    VMware linux 虚拟机(ubuntu18.04) 安装TL-WDN5200H 2.0网卡驱动 完美使用(适用于vmware无法桥接网络使用此方法) # 以下操作均已root用户操作 # 安装 ...

  8. Ubuntu18.04安装OpenCV4.3.0和环境配置(支持编译CUDA并安装配置python-opencv)

    Ubuntu18.04安装OpenCV4.3.0和环境配置 下载源文件 安装依赖 编译安装 环境配置 动态库配置 配置OpenCV的`PKG-CONFIG`环境 Python-OpenCV环境[如果安 ...

  9. Ubuntu18.04安装python3.7.7和tensorflow-gpu 2.2.0

    Ubuntu18.04安装python3.7.7和tensorflow-gpu 2.2.0 前言 安装python3.7.7与环境变量设置 使用pip3安装tensorflow-gpu 2.2.0 测 ...

最新文章

  1. 开会迟到,代码不规范,晚上八点半去健身,跟leader坐电梯自己先出去!某新入行程序员被疯狂吐槽!...
  2. 挖掘机实现“无人驾驶”!协作机器人“魔法之手”取代人工操作
  3. win10如何使用pip下载适合自己python版本的matplotlib?(亲测有效)
  4. LINUX ulimit命令
  5. SpringBoot的端口配置server.port没办法设置成Linux的环境变量
  6. 使用Java消费API的一个错误消息PKIX path building failed以及解决方案
  7. 【C语言进阶深度学习记录】十一 C语言中enum,sizeof,typedef分析
  8. layer ajax 用法,layer加载遮罩层使用 Ajax Loading Demo
  9. 使用js函数实现的通过输入框中数据的长度来控制光标聚焦位置
  10. 企业级Java开发树结构数据封装(开发必用)
  11. oracle not in 数组,慎用Oracle的not in (轉)
  12. 动态编程语言静态编程语言_什么是动态编程?
  13. Android开源项目:微信打飞机游戏源代码
  14. 硬盘 : ATA、ATAPI的含义
  15. POJ 3764 The Xor-longest Path 题解
  16. thinkphp 5 验证码错误,可能与session保存路径不同有关
  17. 扑克洗牌java_java扑克牌洗牌发牌问题
  18. 垂杨柳中学2021年高考成绩查询时间,2021年北京中考各学校分数线,历年北京中考分数线...
  19. mysql数据库增加一行_在数据库中添加一行的SQL语句怎么写?
  20. 聊聊Hibernate和Mybatis的区别

热门文章

  1. oracle的cte,sql – 在Oracle中创建CTE
  2. 弘辽科技:淘宝平台如何处理商家sku作弊问题?有哪些处罚?
  3. 电子信息工程水声考研去向_各位大神。小弟今年考研考到中科院声学所,水声工程中心实验室。不知道这个实验室怎么样,有毕业的师兄师...
  4. 解决浏览器直接get能获取数据而ajax post却不能
  5. 华为的“3个数字化”:对象数字化、过程数字化、规则数字化
  6. Arduino--音乐频谱
  7. 后羿 03 ‖ 逢蒙
  8. IPTV系统搭建选择Linux系统的四大优势
  9. rtthread工业使用_rtthread使用总结
  10. rtthread 串口dma接收_rtthread 添加串口 (uart3)