如何在Debian 9上安装

Asterisk是用于构建通信应用程序的最流行和广泛采用的开源框架。全球各地的个人,小型企业,大型企业和政府都使用它。
Asterisk功能包括电话会议,语音邮件,保留的音乐,呼叫转移,呼叫排队,呼叫记录,数据库存储/检索等等。
在本教程中,我们将向您展示如何在Debian 9上安装Asterisk15。
Debian软件存储库中提供了较旧版本的Asterisk(版本13),可以与apt install asterisk
一起安装。
先决条件
在继续学习本教程之前,请确保您以位具有sudo权限的用户身份登录。
更新您的Debian服务器并安装下载和构建Asterisk所需的软件包:
sudo apt update && sudo apt upgrade
sudo apt install wget build-essential subversion
下载Asterisk
在撰写本文时,Asterisk的最新稳定版本为版本15。
更改到/usr/src
目录,并使用以下 wget命令下载Asterisk源代码:
cd /usr/src/
sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz
下载完成后,使用 tar命令提取档案:
sudo tar zxf asterisk-15-current.tar.gz
在继续下一步之前,请确保您已更改为Asterisk源目录:
cd asterisk-15
安装Asterisk依赖项
运行以下脚本来下载构建MP3模块和使用MP3文件所需的MP3源:
sudo contrib/scripts/get_mp3_source.sh
接下来,运行install_prereq
脚本来解析Debian系统上的所有依赖项:
sudo contrib/scripts/install_prereq install
该脚本将安装所有必需的软件包,并且在成功完成后,将打印以下消息:
#############################################
## install completed successfully
#############################################
在这里,您会看到默认的ITU-T电话代码61。但是在我们这种情况下,如果您像我一样在北美,则需要将其更改为1。
安装Asterisk
运行configure
脚本,该脚本将准备好编译Asterisk代码:
sudo ./configure
成功完成后,您会看到以下输出:
下一步是选择要编译和安装的模块。通过键入以下内容来访问Menuselect系统:
sudo make menuselect
我们已经下载了MP3源文件,现在我们需要通过选择format_mp3
来告诉Asterisk构建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用户
默认情况下,Asterisk以root用户身份运行。出于安全原因,我们将创建一个新的系统用户,并将Asterisk配置为以新创建的用户身份运行。
通过发出以下命令来创建名为asterisk
的新系统用户:
sudo adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk
要配置Asterisk以asterisk
用户身份运行,请打开/etc/default/asterisk
文件
sudo nano /etc/default/asterisk
并取消注释以下两行:
/etc/default/asterisk
AST_USER="asterisk"
AST_GROUP="asterisk"
将asterisk
用户添加到dialout
和audio
组中:
sudo usermod -a -G dialout,audio asterisk
更改所有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开始
现在我们已经准备就绪,请键入以下内容来启动Asterisk服务:
sudo systemctl start asterisk
要验证Asterisk是否正在运行,请输入以下内容以连接到Asterisk命令行界面(CLI):
sudo asterisk -vvvr
您会看到默认的Asterisk CLI提示符:
键入exit
或按CTRL+C
退出Asterisk CLI。
最后一步是启用Asterisk服务以在启动时启动:
sudo systemctl enable asterisk
配置防火墙
默认情况下,SIP使用UDP端口5060打开端口运行:
iptables -A INPUT -p udp -m udp --dport 5060 -j ACCEPT
如果启用了实时协议(RTP),则还需要打开以下端口范围:
iptables -A INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT
根据您的需要随意调整防火墙。
结论
在本指南中,我们向您展示了如何在Debian系统上从源代码安装最新的Asterisk版本。
您现在应该查看 Asterisk文档,并详细了解如何配置和使用Asterisk。
如果您遇到问题或有反馈,请在下面留下评论。