您当前的位置是:  首页 > 资讯 > 文章精选 >
 首页 > 资讯 > 文章精选 >

完整详解基于云部署的Ribbon SBC安装配置对接云IPPBX-企业电话系统SIP电话

--实现基于SBC的云电话办公系统

2021-04-19 09:16:17   作者:james.zhu    来源:Asterisk开源派   评论:0  点击:


  企业通信云部署方式是必然趋势。如果企业通信系统部署在阿里云,腾讯云和百度云时,为了电话系统的安全,SBC是必须配置的一个安全防护机制。通过SBC保证其通信平台的安全。为了帮助用户能够快速了解世界级Ribbon SBC(Sonus更名为Ribbon)和企业电话系统的部署对接,我们今天给大家完整介绍如何安装云SBC部署,如何配置IPPBX对接,以及如何通过SBC对接IPPBX,并且实现外网的SIP终端可以注册和实现分机之间的呼叫。
  关于SBC(会话边界控制器的详细说明和技术架构,应用场景),读者可以查阅笔者的历史文档做进一步学习。
  基于CPU和GPU的超大并发会话边界控制器(SBC)的编码转换实现讨论以及测试对比测试结果
  会话边界控制器(SBC)/SIP路由以及相关业务问题浅析
  图解边界会话控制器(SBC)的20个最常用功能
  边界会话控制器-SBC部署协议-RFC5853
  SIP系列讲座-边界会话控制器-SBC全面剖析
  实现拓扑图如下,通过SIP trunk/Teams/IMS对接云SBC,SBC对接IPPBX。
  阿里云部署的Ribbon SBC对接IPPBX
  安装完成后,用户实例的部署环境,笔者把Ribbon SBC和FreePBX部署在了同一区域网络环境中。
  
  阿里云已配置好的实例
  Ribbon SBC和IPPBX都部署在同一阿里云的区域内。Ribbon SBC可以提供目前所有的SBC部署场景,特别针对微软的Teams 提供了SBC的运营服务。这里,我们仅介绍SBC对接IPPBX的最常见的应用场景。通过SBC对接IPPBX(示例使用FreePBX),实现了企业网络的隐藏,保证了外网SIP分机注册不会暴露IPPBX公网的功能。除了SBC对接IPPBX的基本功能以外,Ribbon SBC可以支持更多超大并发(2W以上)和IPPBX均衡负载的解决方案,高可靠性HA解决方案,基于SIP trunk的智能路由呼叫,基于软硬件的语音编码转换,微软Teams SBC运营等运营级的产品服务。
  1. 阿里云安装Ribbon SBC
  2. 我们主要通过几个步骤来实现Ribbon SBC和云IPPBX的对接方式,具体流程包括:
  3. 阿里云安装Ribbon SBC
  4. 阿里云配置FreePBX-开源免费的IPPBX电话系统,配置分机账号
  5. 通过Ribbon SBC快速部署方式实现对接IPPBX
  通过外网SIP分机注册到企业IPPBX,并且实现SIP分机之间的呼叫
  通过Ribbon SBC 监控工具,测试工具排查SIP注册,呼叫的问题
  首先说明,笔者介绍的步骤有可以适用于腾讯云平台,百度云平台和华为云平台的安装。
  开始实施前需要准备好如下工具环境:
  1. 阿里云帐号
  2. Ribbon SBC SWe 8.1版本的qcow2文件,可以从Ribbon官网申请下载,文件名为SBCSWeLite-disk.qcow2
  以下指南步骤为全新环境建立,如果计划在已经运作的客户环境内部署Lite,请和云管理员协商建立网络和安全组相关的策略。
  实施步骤概览:
  1. 建立一个专有网络
  2. 在这个专有网络下建立两个交换机(因为Lite最少需要两块网卡,所以需要两个交换机)
  3. 建立一个安全组
  4. 开通对象存储服务,创建存储桶bucket
  5. 上传qcow2镜像到bucket,并获取镜像文件的URL
  6. 导入自定义镜像
  7. 建立一个支持两块网卡实例,选择基于刚才导入的自定义镜像,并使用用户数据来初始化Lite
  8. 启动SBC,并把公网IP转换为弹性IP
  9. 把弹性IP绑定到第二块网卡
  10. 启动并登录SBC
  以下是详细安装Ribbon SBC的步骤。如果用户比较熟悉阿里云通过存储桶安装的话,可以大概参考以下步骤。最主要的是关于公网IP地址设置,如果用户使用公网IP,不使用弹性公网IP的话,也可以自己设置。
  1)首先创建一个专有网络,现在地址段
 
  2)建立两个交换机,IPv4在不同的网段,注意交换机命名,方便后续使用方便,包括了管理口和业务口。
  3)然后创建一个安全组,在入方向开放必要的端口,包括5060,RTP端口,80端口,443端口等。
  4)开通对象存储,为了系统文件上传存储做准备。
  5)上传qcow2文件到存储桶内。用户需要通过下载文件获得qcow2文件格式,然后上传到存储桶中。
  请点击输入图片描述(最多18字)
  
  6)  上传好的文件状态:
  7)点击详情,获取文件的URL链接(将来安装系统时需要这个URL)。
 
  请点击输入图片描述(最多18字)
  8) 设置系统镜像,点击镜像
 
  9)导入镜像文件,这里我们使用存储桶中的URL
 
  10)然后选择创建实例,从镜像列表中选择我们刚才导入的SBC系统镜像。
 
  11)这里,我们需要支持两块弹性网卡的机器,所以这里选择4vCPU和4G内存的实例,注意镜像的选择:
  12) 选择好相关的交换机和安全组,并添加第二块网卡放在pkt的交换机上:
 
  13) 登录凭证选择使用镜像预设密码,同时在自定义数据处贴入后面相关的用户数据,密码和网关等参数根据实际情况来修改:
  把以下配置参数填写到自定义参数中。
  {
  "setup": {
  "admin_account": {
  "adminUserName": "admin",
  "adminUserPassword": "admin321"
  },
  "rest_account": {
  "restUserName": "rest_user",
  "restUserPassword": "rest_password"
  },
  "netconfig_account": {
  "netconfigUserPassword": "netconfig_password"
  },
  "dns": {
  "primaryDNSServerIP":"8.8.8.8",
  "secondaryDNSServerIP":"8.8.4.4",
  "hostName": "SWELite81",
  "domainName": "cutomer.com"
  },
  "ntp":{
  "Ntp1ServerName":"20.189.79.72",
  },
  "mgt0": {
  "adminDHCPSuppliedParamUsage":"1"
  },
  "pkt0": {
  "applicationDHCPSuppliedParamUsage":"0",
  "NextHopIP1":"192.168.2.253"
  }
  }
  }
  注意拷贝时一定要拷贝完整以上数据。
  14) 点击下一步进入系统配置

  编辑
  14. 点击下一步进入系统配置
  15) 勾选上服务条款,然后点击创建实例:
  16) 系统提示实例创建成功
  
  17) 把分配给SBC的公网IP更换成弹性公网IP, 这里,用户需要购买一个弹性公网IP,更加方便管理IP和数据。
  18) 然后选择弹性公网IP
  
  19) 把弹性公网IP从当前的主网卡上解绑
  20) 然后点击绑定
 
  21) 把这个弹性IP绑定到辅助弹性网卡上
 
  完成以上流程以后,用户重新启动实例,通过弹性公网IP就可以访问Ribbon SBC 界面。
  通过一系列配置以后,用户就可以通过弹性IP访问Ribbon SBC 管理界面。
  阿里云配置FreePBX-开源免费的IPPBX电话系统,配置分机账号
  这里,我们开始配置FreePBX,FreePBX是免费开源的IPPBX系统,用户可以通过源代码安装方式在阿里云,腾讯云或者百度云部署FreePBX。具体安装步骤,请读者参考链接中的网站,有完整的介绍流程。配置好FreePBX以后,用户需要在FreePBX界面创建两个SIP分机账号(我们使用的pjsip的100,101作为测试分机)。
  已经创建的分机账号:
 
  通过Ribbon SBC快速部署方式实现对接IPPBX
  完成了IPPBX界面的SIP分机创建以后,通过Ribbon SBC 快速导航配置,配置SIP 分机注册和IPPBX对接的流程。

  根据安装指导,输入IPPBX IP地址和端口,然后保存配置即可。
  根据安装指导,现在SIP 电话配置,SIP端口,一步步配置即可。
  通过monitor 可以看到注册组和IPPBX组都成功对接。
  
 
  如果使用软电话和手机app分别注册到SBC地址,通过SBC界面就可以看到SIP分机已经完全注册成功,通过Asterisk CLI 后台也可以看到SIP 分机注册成功。
  通过CLI命令查看SIP注册状态
 
  通过SBC 界面查看SIP分机注册状态
  通过外网SIP分机注册到企业IPPBX,并且实现SIP分机之间的呼叫
  确认SIP分机注册成功以后,用户就可以通过手机APP 端的软电话呼叫电脑客户端的软电话。
  
  SIP分机双方呼叫的log和状态
  请点击输入图片描述(最多18字)
  请点击输入图片描述(最多18字)
  通过Ribbon SBC 监控工具,测试工具排查SIP注册,呼叫的问题
  Ribbon SBC提供了很多的基于界面的检测工具,用户可以非常快速方便地排查和跟踪各种呼叫问题。
  通过SBC查看IPPBX和SIP分机信令系统。
  SIP录音:
  数据统计工具
  通过呼叫测试工具,可以呼叫SIP分机来检测分机注册状态是否正常。
 
  通过界面呼叫不同的两个分机,也可以呼叫内网IPPBX
 
  
  通过工具测试呼叫
  通过Sonus LX 终端工具可以检查log日志,分析错误log
  下载系统log,通过Sonus检测log日志。
  
  用户可以通过其他的log日志,ping工具和SIP抓包工具来检查其错误日志信息。
  总结
  SBC是SIP网络非常重要的安全保护机制。Ribbon SBC为企业通信提供了世界级的SBC 会话边界控制器,同时也支持了微软 Teams的对接流程。我们在云平台部署过程中需要首先安装Ribbon SBC,然后通过快速配置方式可以快速对接IPPBX。通过外网分机注册可以实现基本的呼叫。
  当然,除了以上SBC和IPPBX的基本配置以外,很多的Ribbon SBC功能还没有深入挖掘,包括编码转换功能,SIP均衡负载,逃生功能,SIP录音等功能。这些功能都是非常实用的企业通信功能,用户可以根据自己的部署场景做进一步的测试配置。
  参考资料:
  www.rbbn.com
  www.freepbx.org.cn
  www.rbbn.cn 更多SBC应用场景实例
  • 融合通信/SBC/IPPBX/FreePBX商业解决方案:www.hiastar.com
  • 最新Asterisk完整中文用户手册详解:www.asterisk.org.cn
  • Freepbx/FreeSBC技术文档: www.freepbx.org.cn
  • 关注微信公众号:asterisk-cn,获得有价值的通信行业技术分享
【免责声明】本文仅代表作者本人观点,与CTI论坛无关。CTI论坛对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

专题

CTI论坛会员企业