Asterisk 是最流行和广泛采用的开源 PBX 平台,为 IP PBX 系统、会议服务器和 VoIP 网关提供支持。它被世界各地的个人、小型企业、大型企业和政府使用。
Asterisk 功能包括语音邮件、等待音乐、电话会议、呼叫排队、通话录音、交互式语音应答等等。
本教程将指导您完成在 Ubuntu 18.04 上安装 Asterisk 18 所需的步骤。
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
目录是放置源文件的公共位置,更改为该目录:
cd /usr/src/
使用以下命令下载最新版本的 Asterisk 18wget命令
:
sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-18-current.tar.gz
下载完成后提取压缩包
with:
sudo tar zxf asterisk-18-current.tar.gz
在继续执行后续步骤之前,请确保通过键入以下命令更改到 Asterisk 源目录:
cd asterisk-18.*/
安装星号依赖项#
以下脚本将下载构建 MP3 模块并在 Asterisk 上使用 MP3 文件所需的 MP3 源:
sudo contrib/scripts/get_mp3_source.sh
Use the install_prereq
脚本来解决 Ubuntu 系统上的所有依赖项:
sudo contrib/scripts/install_prereq install
该脚本将安装所有必需的软件包,成功完成后,它将打印以下消息:
#############################################
## install completed successfully
#############################################
安装星号#
The configure
脚本将执行许多检查,以确保系统上的所有依赖项都存在,通过键入以下内容启动脚本:
sudo ./configure
成功完成后,您将看到以下输出:
下一步是选择要编译和安装的模块。通过键入以下内容访问 Menuselect 系统:
sudo make menuselect
我们已经下载了 MP3 源文件,现在我们需要告诉 Asterisk 通过选择来构建 MP3 模块format_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/默认/星号
AST_USER="asterisk"
AST_GROUP="asterisk"
Add the asterisk
用户到dialout
and audio
groups:
sudo usermod -a -G dialout,audio asterisk
我们还需要改变所有权
and 权限所有 asterisk 文件和目录的目录,以便用户 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 服务:
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 的更多信息。
如果您遇到问题或有反馈,请在下面发表评论。