视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Ubuntu下使用Opensips搭建sip服务器
2025-10-02 15:03:01 责编:小OO
文档
  Ubuntu下使用Opensips搭建sip服务器

1. 概述

  是一个开源的SIP代理/服务器进行语音、视频、即时通讯,和任何其他SIP扩展。OpenSIPS是一种多功能,多用途信号SIP服务器——它可以作为SIP路由器/交换机,SIP注册应用程序服务器,重定向服务器,负载均衡器/分配器,背靠背的用户代理,业务服务器,IM服务器会话边界控制器,SIP前端,NAT遍历(遍历)服务器、IP网关(短信,XMPP)和其他人-看到全部功能。

本文档使用的是Opensips1.10.2,下载地址:www.opensips.org/Downloads/Downloads

2. 运行环境

本文档使用的开发环境为Ubuntu14.04,下载地址: www.ubuntu.com/download/desktop

3. 安装

3.1 安装前准备

使用终端执行命令sudo su获取权限,使用mysql数据库,安装Opensips1.10之前需安装mysql库文件。使用终端执行命令:

apt-get install myql-client

apt-get install libmysqlclient-dev

为方便对Opensips进行操作,定义一个文件夹安装Opensips,使用终端执行命令:

mkdir -p /usr/local/opensips_proxy

3.2 安装

解压下载的Opensips,使用终端进入到opensips文件夹,执行以下命令:

make (这时可能会提示缺少一些库文件,执行sudo apt-get intsall + 对应的名称 就可以解决了)

make执行完后执行 make menuconfig进入安装配置界面:

使用“↑”、“↓”、“←”、“→”进行操作。

选择Cofigure Compile Options → Configure Excluded Modules

选中db_mysql按空格确定,返回上级菜单,选择Configure Install Prefix

输入安装目录,回车确认

然后选中Save Changes 回车确认

返回上级菜单,选中Compile And Install OpenSIPS,回车确认。

待命令执行完毕后,执行命令

make install即刻完成Opensips服务器的安装

4. 配置Opensips

4.1 配置opensipsctlrc

使用终端进入目录:/usr/local/opensips_proxy/etc/opensips

执行命令:gedit opensipsctlrc

将部分注释去掉,修改SIP_DOMIN为你当前系统的地址,修改完成后保存

4.2 配置opensips.cfg

执行命令:gedit opensips.cfg

将listen=udp内ip地址修改为当前系统的地址,修改完成后保存

5. 启动opensips服务器

使用终端进入目录:/usr/local/opensips_proxy/sbin

执行命令:./opensipsdbctl create

完成数据库的建立后,执行命令 ./opensips start即可启动opensips服务器。(使用./opensipsctl -c查看命令帮助)

6. Opensips用户认证配置

6.1配置数据库

cd /usr/local/opensips_proxy/etc/opensips

使用root权限用户执行命令:gedit opensips.cfg

添加内容:

####MySQL

loadmodule “db_mysql.so”

6.2配置

增加配置

####auth

loadmodule "auth.so"

loadmodule "auth_db.so"

modparam("auth_db", "db_url", "mysql://opensips:opensipsrw@localhost/opensips")

modparam("auth_db", "calculate_ha1", 1)

modparam("auth_db", "load_credentials", "$avp(cred)=rpid;email_address")

modparam("auth_db", "password_column", "password")

修改Routing Logic中route的内容

将if ( !(is_method("REGISTER")  ) )中的内容修改为:

# auth

  

    

   

   

  

  

   

        sl_send_reply("403

    

   

  

将if (is_method("REGISTER"))中的内容修改为:

if (!www_authorize("", "subscriber")) {

    

   

   

  

  

   

        sl_send_reply("403

    

   

  

  

   

   

  

   下载本文

显示全文
专题