当前位置: 代码迷 >> PB >> Ubuntu 下安装Asterisk, FreePBX 构建自己的电话局
  详细解决方案

Ubuntu 下安装Asterisk, FreePBX 构建自己的电话局

热度:249   发布时间:2016-04-29 07:59:12.0
Ubuntu 上安装Asterisk, FreePBX 构建自己的电话局

记得20年前家里刚装电话时,一线需要两三千块(RMB),后来装电话越来越便宜直到免费。现在借助于Asterisk, FreePBX,可以在家构建自己的电话局,如果你在海外,通过自己的电话局可以非常方便的和国内或其他地方的亲朋好友联系。

下面给出在Ubuntu 12.04 上安装Asterisk,FreePBX的基本步骤。

1. 首先是更新系统(可选)

在命令行中输入

sudo apt-get updatesudo apt-get upgrade2. 安装LAMP (Apache2+MySQL+PHP)  在命令行输入sudo tasksel 选择 LAMP Server    3. 添加额外的PHP 软件包       sudo apt-get install php5-gd php-pear php-db sox curl   4. 安装phpmyadmin (可选)        sudo apt-get install phpmyadmin   5. 安装asterisk        sudo apt-get install asterisk asterisk-mysql asterisk-mp3    6. 安装Freepbx准备工作      在安装Freepbx我们先要想好将Freepbx 安装在哪个目录下,FreePBX 为asterisk 的Web管理应用,可以帮助用户配置Asterisk等。      1) Ubuntu 的Web根目录为/var/www, 因此我们可以把FreePBX安装到/var/www/freepbx 目录下,为便于管理,创建三个子目录
  • conf 设置文件
  • log 存放日志
  • public WEB应用。
        sudo mkdir /var/www/freepbx/        sudo mkdir /var/www/freepbx/conf        sudo mkdir /var/www/freepbx/logsudo mkdir /var/www/freepbx/public

2) 创建设置文件 /var/www/freepbx/conf/vhost.conf
sudo vim /var/www/freepbx/conf/vhost.conf
输入以下内容

<VirtualHost *:80>   ServerName freepbx   ServerAlias freepbx   ServerAdmin [email protected]   ErrorLog /var/www/freepbx/log/error.log   CustomLog /var/www/freepbx/log/access.log combined   DocumentRoot /var/www/freepbx/public   <Directory /var/www/freepbx/public>       Options Indexes FollowSymLinks MultiViews       Order allow,deny       AllowOverride All       Allow from all   </Directory>   <Directory /var/www/freepbx/public/admin>       AuthType Basic       AuthName "Restricted Area"       AuthUserFile freepbx-passwd       Require user admin   </Directory></VirtualHost>

修改 ServerAdmin 到你自己的Email地址。
3) 将vhost 添加到 Apache的sites-enabled目录下

sudo ln -s /var/www/freepbx/conf/vhost.conf /etc/apache2/sites-available/freepbx
cd /etc/apache2/sites-enabled/
sudo ln -s ../sites-available/freepbx

4) 创建 用户和密码来验证合法用户可以来配置FreePBX (有权限访问该网页)

sudo htpasswd -c /etc/apache2/freepbx-passwd admin

5) 重启Apache

sudo /etc/init.d/apache2 restart  有了这些准备工作后,就可以开始安装FreePBX了7. 安装FreePBX  1) 下载FreePBX安装包cd /tmpwget http://mirror.freepbx.org/freepbx-2.8.1.tar.gzcd /usr/srcsudo tar xvzf /tmp/freepbx-2.8.1.tar.gzcd freepbx-2.8.1/  2) 创建数据库mysqladmin create asterisk -u root -pmysqladmin create asteriskcdrdb -u root -pmysql -u root -p asterisk < SQL/newinstall.sqlmysql -u root -p asteriskcdrdb < SQL/cdr_mysql_table.sql 3) 创建数据库用户mysql -u root -p在SQL命令行输入

GRANT ALL PRIVILEGES ON asterisk.* TO [email protected] IDENTIFIED BY ‘badasspassword’;
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO [email protected] IDENTIFIED BY ‘badasspassword’;
flush privileges;
quit;

注意将badasspassword 换成你自己选择的密码。

4) 备份modules.conf , FreePBX安装时会修改Apache的配置文件

sudo cp /etc/asterisk/modules.conf ~/asterisk-modules.conf

5) 安装FreePBX

sudo ./install_amp

输入对应的参数

Enter your USERNAME to connect to the 'asterisk' database: [asteriskuser] asteriskEnter your PASSWORD to connect to the 'asterisk' database: [amp109] badasspasswordEnter 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]Enter the path to use for your AMP web root: [/var/www/html]/var/www/freepbx/publicEnter the IP ADDRESS or hostname used to access the AMP web-admin: [xx.xx.xx.xx] freepbxEnter a PASSWORD to perform call transfers with the Flash Operator Panel: [passw0rd] passwordUse simple Extensions [extensions] admin or separate Devices and Users [deviceanduser]? [extensions]Enter directory in which to store AMP executable scripts: [/var/lib/asterisk/bin] 

6)恢复asterisk-modules.conf

sudo cp ~/asterisk-modules.conf /etc/asterisk/modules.conf

7) 添加asterisk用户

sudo adduser www-data asterisk

修改权限/etc/amportal.conf 中添加

AMPASTERISKUSER=www-dataAMPASTERISKGROUP=asteriskAMPASTERISKWEBUSER=www-dataAMPASTERISKWEBGROUP=asterisk   重启amportalsudo amportal start8) 使用amport 启动Asterisksudo update-rc.d -f asterisk removesudo sed -e s/BACKGROUND=0/BACKGROUND=1/ -i /usr/sbin/safe_asterisk修改/etc/rc.local在exit 0 前添加/usr/local/sbin/amportal start9) 重启Ubuntu, 可以登录到 http://your web address/freepbx/public到此为止就安装好FreePBX,下面就是配置FreePBX,后面有时间在写配置部分。配置好Trunk, Extension, OutboundRoutes 等之后,你的电话局就建好了,可以通过Extension分配电话好码,如过需要外线可以通过配置Trunk和OutboundRoutes。 配置好首页会显示当前在线用户数目和可用外线。现在就可以开始打电话了 :-) .
 



  相关解决方案