opensips作为一款强大的多功能sip服务器,本人感觉应该十分火爆,但是在搜索中发现中文教程实在少的可怜,官网部署及配置教程及其简陋,本人安装中遇到了大量的坑,这里整理了详细了部署教程及一些必要配置说明,和大家分享下,希望大家少走弯路:
1.首先安装核心依赖环境
yum -y install gcc make flex bison ncurses libncurses-dev ncurses-devel pcre-devel libmicrohttpd
#pcre-devel 要是用dialplan必须要装这个,之前折腾了太久资料才查到这
#安装mi_json需要httpd模块,而httpd模块支持libmicrohttpd库支持,现在安装httpd还是有问题httpd_proc.c:41:24: error: microhttpd.h: No such file or directory
MySQL-shared-5.6.37-1.el6.x86_64.rpm
MySQL-devel-5.6.37-1.el6.x86_64.rpm
要安装否则安装mysql有问题
2.开始安装mysql(5.6)
rpm -ivh http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
yum -y install mysql mysql-server mysql-libs mysql-devel
数据库改位置
mysql_install_db --user=mysql --basedir=/usr/ --datadir=/home/
设置MySQL安全选项
mysql_secure_installation
3.开始安装opensips
wget http://opensips.org/pub/opensips/latest/opensips-2.3.1.tar.gz
tar zxf opensips-2.3.1.tar.gz
cd opensips-2.3.1
make all
make menuconfig (勾选db_mysql,其他不用动) 进去后左右键选择
Configure Compile Options->Configure Excluded Modules->db_mysql 和dialplan(选中)
(保存报错说mysql和diaplan依赖不存在,无法保存,不要紧,继续下一步操作)
菜单里选"Compile And Install Opensips"
退出menuconfig
vim /usr/local/etc/opensips/opensipsctlrc
SIP_DOMAIN=127.0.0.1 改成域名或本地IP
4.创建mysql数据库表
cd /usr/local/lib64/opensips/opensipsctl
cp /home/opensips/opensips-2.3.1/scripts/opensipsdbctl.mysql ./
mkdir mysql
cp /home/opensips/opensips-2.3.1/scripts/mysql/*.sql ./mysql
cd /usr/local/lib64/opensips/opensipsctl #因为下边执行的时候要用到./mysql相对录径所以执行前要先到这个目录来
/usr/local/sbin/opensipsdbctl create #创建数据库和表
5.检查配置是否有报错
/usr/local/sbin/opensipsctl -c
6.生成初始化可以用的cfg配置文件
osipsconfig
根据需要勾上自己所需的功能
7.用生成的替换原始的cfg配置文件
cp /usr/local//etc/opensips/opensips_residential_2018-3-21_09:43:12.cfg /usr/local/etc/opensips/opensips.cfg
vi /usr/local/etc/opensips/opensips.cfg (改listen地址和mpath,后者一般是/usr/lib/opensips/modules)
listen=udp:192.168.31.223:5060 # CUSTOMIZE ME
#listen=tcp:192.168.31.223:5060 # CUSTOMIZE ME (用UDP)
8.修改各模块的mysql地址
9.启动opensips
/usr/local/sbin/opensipsctl start
创建测试用户:
opensipsctl add 101 101
查看注册查看在线:
opensipsctl ul show
opensipsctl online
具体配置内容参考官网:https://github.com/OpenSIPS/opensips-cp