asterisk使用MYSQL认证的配置方法

asterisk要使用MYSQL实时认证peers,就必须安装asterisk的realtime 和 mysql 模块,这些模块在asterisk插件包中

下载地址是:http://www.asterisk.org/downloads

下载之后./configure 然后sudo make &&sudo make install && sudo make samples

重启asterisk,确保以下多个模块被正常加载

*CLI> module show like realtime

Module                         Description                                           Use Count
pbx_realtime.so            Realtime Switch                                        0
func_realtime.so           Read/Write values from a RealTime reposi 0
app_realtime.so            Realtime Data Lookup/Rewrite                 0
3 modules loaded

*CLI> module show like mysql

Module                                Description                                          Use Count
cdr_addon_mysql.so             MySQL CDR Backend                            0
app_addon_sql_mysql.so      Simple Mysql Interface                           0
res_config_mysql.so             MySQL RealTime Configuration Driver      0

如果正常加载,我们就能开始配置asterisk 和mysql了


1.首先我们应该在数据库的某个database中建立一张表用来存储peers和users数据

表的结构如下

CREATE TABLE sip_users (

id int(11) NOT NULL auto_increment,
name varchar(80) NOT NULL default '',
host varchar(31) NOT NULL default '',
nat varchar(5) NOT NULL default 'no',
type enum('user','peer','friend') NOT NULL default 'friend',
accountcode varchar(20) default NULL,
amaflags varchar(13) default NULL,
`call-limit` smallint(5) unsigned default NULL,
callgroup varchar(10) default NULL,
callerid varchar(80) default NULL,
cancallforward char(3) default 'yes',
canreinvite char(3) default 'yes',
context varchar(80) default NULL,
defaultip varchar(15) default NULL,
dtmfmode varchar(7) default NULL,
fromuser varchar(80) default NULL,
fromdomain varchar(80) default NULL,
insecure varchar(4) default NULL,
language char(2) default NULL,
mailbox varchar(50) default NULL,
md5secret varchar(80) default NULL,
deny varchar(95) default NULL,
permit varchar(95) default NULL,
mask varchar(95) default NULL,
musiconhold varchar(100) default NULL,
pickupgroup varchar(10) default NULL,
qualify char(3) default NULL,
regexten varchar(80) default NULL,
restrictcid char(3) default NULL,
rtptimeout char(3) default NULL,
rtpholdtimeout char(3) default NULL,
secret varchar(80) default NULL,
setvar varchar(100) default NULL,
disallow varchar(100) default 'all',
allow varchar(100) default 'g729;ilbc;gsm;ulaw;alaw',
fullcontact varchar(80) NOT NULL default '',
ipaddr varchar(15) NOT NULL default '',
port smallint(5) unsigned NOT NULL default '0',
regserver varchar(100) default NULL,
regseconds int(11) NOT NULL default '0',
lastms int(11) NOT NULL default '0',
username varchar(80) NOT NULL default '',
defaultuser varchar(80) NOT NULL default '',
subscribecontext varchar(80) default NULL,
PRIMARY KEY (id),
UNIQUE KEY name (name),
KEY name_2 (name)
);

2.建立数据库用户并授权

grant select,insert,update,delete on asterisk.sip_users to username@localhost identified by 'username';

这里的username可以是你自己建立的 也可以是root 下面我以root为例

在mysql中的tirox中创建一张名为 sip_users的表


3. 编辑 /etc/asterisk/res_mysql.conf 以便asterisk访问数据库


[general]
dbhost = localhost

dbname = tirox

dbuser = root

dbpass = root

dbport = 3306
dbsock = /var/lib/mysql/mysql.sock

如果你在 /var/lib/mysql/mysql.sock 找不到 mysql.sock的话

你可以去/etc/mysql/my.cnf 找到

[client]
2port            = 3306
socket          = /var/run/mysqld/mysqld.sock


4. 编辑 /etc/asterisk/extconfig.conf

在 [settings]标签下面添加下面的内容

sippeers => mysql,tirox,sip_users
sipusers => mysql,tirox,sip_users

5. 编辑 /etc/asterisk/sip.conf

在 [general],标签下面添加下面的内容

rtcachefriends=yes

6.然后添加你的数据到sip_users表中去

例如:

insert into sip_users set name='6001',
context='video-call',
type='friend',
host='dynamic',
secret='123456',
nat='yes',
canreinvite='no',
dtmfmode='rfc2833',
disallow='all',
allow='all',
callerid='\"9001\" <9001>';


大功告成

现在如果你在asterisk终端下 使用sip show peers 无法找到对应的账号

那么之需要使用sip客户端填写账号 就能看到了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/433739.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java笔记—字符缓冲流

一、字符缓冲流构造方法简述 BufferedReader&#xff1a;从字符输入流中读取文本&#xff0c;缓冲各个字符&#xff0c;从而实现字符、 数组和行的高效读取。 可以指定缓冲区的大小&#xff0c;或者可使用默认的大小。大 多数情况下&#xff0c;默认值就足够大了。构造方法&am…

手机来电秀怎么开启_360手机卫士怎么设置来电秀 360手机卫士来电秀设置方法...

360手机卫士除了防护等安全功能外&#xff0c;它的来电秀也是比较火热的&#xff0c;很多朋友都喜欢在这里设置自己别具个性的来电秀&#xff0c;这篇文章就一起了解一下360手机卫士怎么设置来电秀。360手机卫士来电秀设置是在【隐私保护】中&#xff0c;所以很多朋友都没找到在…

SqlServer查询语句中用到的锁

前段时间**公司DBA来我们这培训。讲了一大堆MYSQL的优化。 QA环节一程序员问“SQL语句中的 with nolock 除了不锁表外,是否能读其他锁住的数据"。 讲课的人嘟嘟了半天没解释清楚&#xff08;有可能是MYSQL里没有这个机制&#xff09;&#xff0c;公司的另一程序员给出了一…

python中execute函数_Python中的函数定义与参数使用

本节知识点&#xff1a;(1)函数定义格式&#xff1b;(2)五种参数使用函数定义 基本语法格式def function_name( parameter_list ): return values函数通常为小写英语单词及其组合&#xff0c;以下划线隔开&#xff0c;例如&#xff1a;sum、mean、cost_calculat…

Java学习笔记—生产者和消费者模式

一、生产者和消费者问题 生产者消费者模式是一个十分经典的多线程协作的模式。 生产者和消费者问题包含了两类线程&#xff1a;一类是生产者线程用于生产数据&#xff0c; 一类是消费者数据用于消费数据。/*生产者消费者案例 包含一个奶箱类&#xff0c;一个生产者类&#xff…

window中搭建jenkins_Jenkins自动化部署(Windows服务器)

Jenkins自动化部署(Windows服务器)背景&#xff1a;一直部署SSM项目&#xff0c;每次都是 在tomcat的webapps目录下&#xff0c;将项目压缩成zip格式压缩包&#xff0c;拷贝的windows服务器的tomcat的webapps目录下&#xff0c;解压缩&#xff0c;覆盖&#xff0c;启动tomcat。…

C++ 堆、栈、自由存储区、全局静态存储区和常量存储区

文章来自一个论坛里的回帖&#xff0c;哪个论坛记不得了&#xff01; 在C中&#xff0c;内存分成5个区&#xff0c;他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。栈&#xff0c;就是那些由编译器在需要的时候分配&#xff0c;在不需要的时候自动清除的变量存…

内存spd规范_C语言内存泄露很严重,如何应对?

原文&#xff1a;https://blog.csdn.net/devcloud/article/details/1083359121.前言 最近部门不同产品接连出现内存泄漏导致的网上问题&#xff0c;具体表现为单板在现网运行数月以后&#xff0c;因为内存耗尽而导致单板复位现象。一方面&#xff0c;内存泄漏问题属于低级错误&…

接口测试的持续集成的工具(git代码管理工具,jenkins持续集成)

持续集成的概念&#xff1a;大白话就是持续的做一件事情&#xff0c;使其使用起来更加流畅&#xff1b;结合测试来讲就是说用工具管理好代码的同时&#xff0c;使代码运行的更加自动以及智能&#xff1b;提升测试效率。 ⽹址&#xff1a;https://git-scm.com/downloads 长这个…

Java学习笔记—UDP通信

一、UDP通信原理 UDP协议(用户数据报协议 User Datagram Protocol)是一种无连接通信协议&#xff0c; 即在数据传输时数据发送端和接收端不建立逻辑链接。因此UDP协议是一种 不可靠的网络协议&#xff0c;它在通信的两端各建立一个Socket对象&#xff0c;但是这两个 Socket只是…

qt调用import sys库_Python模块之 sys 模块

引入1.什么是 sys 模块sys 模块是与 Python 解释器交互的一个接口该模块提供对解释器使用或维护的一些变量的访问和获取它提供了许多函数和变量来处理 Python 运行时环境的不同部分一.常见用法介绍1.sys.argv实现从程序的外部向程序传递参数返回的是一个列表, 第一个元素是程序…

A20 lvds

LVDS0: 数据线 LVDS0-VP0 LVDS0-VN0 LVDS0-VP1 LVDS0-VN1 LVDS0-VP2 LVDS0-VN2 时钟线 LVDS0-VPC LVDS0-VNC 电源线 插座的1,2,3接电源&#xff0c;最终连到 LCD-PWR 背光 另外背光单独在另一个插座上&#xff0c;LVDS0和LVDS1是一致的。 4…

顺丰快递单号的规律_顺丰快递顺丰快递查询单号查询

查询快递前&#xff1a;请先点击上面蓝字” 顺风快递快件单号查询“关注&#xff0c;关注后即可免费查询快递&#xff01;顺丰快递 顺丰快递查询 顺丰快递单号查询记下货物的订单号码。打开顺丰快递的官方网站。快件追踪中写入要查询的订单号码。输入订单号、验证码…

Java学习笔记—TCP通信

一、TCP通信原理 TCP(Transmission Control Protocol)协议是面向链接的通信协议&#xff0c;即数据传输之前&#xff0c;先在发送端和接收端建立逻辑链接&#xff0c;然后再传输数据&#xff0c;它提供了两台计算机之间可靠无差错的数据传输。TCP通信中必须明确客户端和服务器端…

Python 网页编程- Pyramid 安装测试

http://docs.pylonsproject.org/projects/pyramid/en/1.4-branch/narr/install.html 是我在csdn的博客&#xff1a;http://blog.csdn.net/spaceship20008/article/details/8767884 放在cnblogs做备份 按照介绍操作。 我用的是mint13, python 3.2.3版本。 使用的是virtualenv 开…

qt能使用logback_X04Logback的配置

现如今&#xff0c;基于Java的网站开发明显过于复杂&#xff0c;远超实际工作需要。在Java领域中&#xff0c;大部分的网站开发框架也没有严格的遵循“可重用”原则。动态框架如Rails&#xff0c;Django和TurboGears等的出现&#xff0c;为Java网站开发提供了新思路&#xff0c…

A20 配置

TN92屏的显示配置&#xff1a; screen0_output_type1; screen0_output_mode5; lcd_x800; lcd_y480; lcd_swap0; lcd_dclk_freq33; lcd_hbp46; lcd_ht1055; lcd_vbp23; lcd_vt1050; lcd_lvds_ch1; lcd_lvds_mode0; lcd_lvds_bitwidth0; lcd_lvds_io_cross0; lcd_if0; N101BCG-L…

excel 2007 vba与宏完全剖析_Excel怎么保护自己的劳动成果?强制用户启用宏,再加上这一步...

知识改变命运&#xff0c;科技成就未来。当Excel工作簿中含有VBA代码时&#xff0c;用户在使用时需要启用宏&#xff0c;否则工作簿的某些功能就会失效。或者是编辑的VBA代码含有定期删除指令&#xff0c;为了保证工作簿的安全性&#xff0c;和防止他人禁用宏造成知识产权法受到…

Java学习笔记—Lambda表达式

1、Lambda表达式 Lambda表达式是Java8的新特性。 组成Lambda表达式的三个要素&#xff1a;形式参数&#xff0c;箭头操作符&#xff0c;代码块 Lambda表达式的格式&#xff1a;(形式参数) -> {代码块} //如&#xff1a;(int a, int b) -> {return a b;}形式参数&…

旅途的意义- 献给二十五岁

献给25岁你看过了许多美景你看过了许多美女你迷失在都市里每一分钟的光阴你品尝过夜的都市你看过飘着雨雪的各地你渐渐明白了书本里那些曾经不屑的道理却也在青春的激情里多出了那份胆怯的心情你看到了老板坐在办公室飘窗前&#xff0c;悠然的抽着烟你看到了以前的同学娶妻生子…