Asterisk是最流行和广泛采用的开源PBX平台,为IP PBX系统,会议服务器和VoIP网关提供动力。全球各地的个人,小型企业,大型企业和政府都使用它。

Asterisk功能包括语音邮件,保留的音乐,电话会议,呼叫排队,呼叫记录,交互式语音响应等等。

本教程将指导您完成在Ubuntu 18.04上安装Asterisk 15所需的步骤。

Ubuntu软件存储库中提供了较旧版本的Asterisk(版本13),可以通过apt install asterisk轻松安装。

先决条件

在继续学习本教程之前,请确保您以位具有sudo权限的用户身份登录。

更新您的Ubuntu系统,并安装以下软件包,这些软件包是下载和构建Asterisk所必需的:


sudo apt update && sudo apt upgrade sudo apt install wget build-essential subversion

下载Asterisk

我们将在/usr/src目录中下载Asterisk源代码,该目录是放置源文件的常用位置,请使用以下命令转到目录:

cd /usr/src/

使用以下 wget命令下载最新版本的Asterisk 15:

sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz

下载完成后使用以下工具提取压缩包

sudo tar zxf asterisk-15-current.tar.gz

在继续下一步之前,请确保您通过键入以下内容更改为Asterisk源目录:

cd asterisk-15.*/

安装Asterisk依赖项

以下脚本将下载构建MP3模块并在Asterisk上使用MP3文件所需的MP3源:

sudo contrib/scripts/get_mp3_source.sh

使用install_prereq脚本解析Ubuntu系统上的所有依赖项:

sudo contrib/scripts/install_prereq install

该脚本将安装所有必需的软件包,并且在成功完成后,将打印以下消息:

#############################################
## install completed successfully
#############################################

安装Asterisk

configure脚本将执行许多检查,以确保系统上存在所有依赖项,请键入以下内容以启动脚本:

sudo ./configure

成功完成后,您会看到以下输出:

下一步是选择要编译和安装的模块。通过键入以下内容来访问Menuselect系统:

sudo make menuselect

我们已经下载了MP3源文件,现在我们需要告诉Asterisk通过选择format_mp3 ,来构建MP3模块。完成后,按F12保存并退出,或切换到Save and Exit按钮并按Enter。现在,我们可以使用make命令开始编译过程:

sudo make -j2

编译可能需要一些时间,具体取决于您的系统。您可以根据处理器的内核数修改-j标志。

构建过程完成后,将向您显示以下消息:

如以上消息所述,下一步是通过键入以下内容来安装Asterisk及其模块:

sudo make install

安装完成后,脚本将显示以下消息:

现在,我们已经安装了Asterisk,我们需要安装示例配置文件。

通过键入以下内容来安装通用配置文件和参考文档:

sudo make samples

或安装基本的PBX配置文件:

sudo make basic-pbx

最后一步是通过键入以下内容来安装Asterisk初始化脚本:

sudo make config

运行ldconfig更新共享库缓存也是一个好主意:

sudo ldconfig

创建Asterisk用户

默认情况下,星号以root用户身份运行。出于安全原因,我们将创建一个新的系统用户,并将Asterisk配置为以新创建的用户身份运行。

要创建名为asterisk的新系统用户,请运行以下命令:

sudo adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk

​​要配置Asterisk以asterisk用户身份运行,请打开/etc/default/asterisk文件并取消注释以下两行:

/ etc / default / asterisk

AST_USER="asterisk"
AST_GROUP="asterisk"

asterisk用户添加到dialoutaudio组中:

sudo usermod -a -G dialout,audio asterisk

我们还需要更改所有星号文件和目录的所有权权限,以便用户星号可以访问这些文件:

sudo chown -R asterisk: /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk
sudo chmod -R 750 /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk

Asterisk开始

现在我们已经完成设置,我们可以使用以下命令启动Asterisk服务:

sudo systemctl start asterisk

要验证Asterisk是否正在运行,请输入以下内容以连接到Asterisk命令行界面(CLI):

sudo asterisk -vvvr

您会看到默认的Asterisk CLI提示符:

最后一步是启用Asterisk服务,以便在启动时启动:

sudo systemctl enable asterisk

配置防火墙

防火墙将保护您的服务器免受不必要的流量的侵害。

如果您的服务器上未配置防火墙,则可以查看我们的指南,以了解关于如何在ubuntu上使用ufw设置防火墙的信息

默认情况下,SIP使用UDP端口5060打开端口运行:

sudo ufw allow 5060/udp

如果启用了实时协议(RTP),则还需要打开以下端口范围:

sudo ufw allow 10000:20000/udp

根据您的需要随意调整防火墙。

结论

在本指南中,我们向您展示了如何在Ubuntu系统上从源代码安装最新的Asterisk版本。

您现在应该查看 Asterisk文档,并详细了解如何配置和使用Asterisk。

如果您遇到问题或有反馈,请在下面发表评论。