bookworm上的kamailio很新,5.6.2版本
1. 先安装MariaDB
apt install default-mysql-server
2. 切换到root用户, 执行
# mysql -u root -p
然后在 mysql 的shell里修改 mysql数据库的root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
因为配置Kamailio时,要用到mysql 的root用户密码
3. 安装 Kamailio
apt install kamailio kamailio-mysql-modules
4. 配置
配置文件 在 /etc/kamailio/ 目录下,有两个
一个是 /etc/kamailio/kamctlrc, 里面的配置信息,主要供 kamctl 和 kamdbctl 这两个工具命令使用
SIP_DOMAIN= DBENGINE=MYSQL DBRWUSER= DBRWPW= CHARSET="latin1" ---上面5个必须修改---- DBROUSER= DBROPW= DBHOST= DBPORT=
SIP_DOMAIN可以是域名 或者 IP地址
另外一个是 /etc/kamailio/kamailio.cfg, 是供 kamailio 主程序使用的, 里面有很多 脚本
#!define WITH_MYSQL #!define WITH_AUTH #!define WITH_USRLOCDB #!define DBURL "mysql://kamailio:_NEW_DBRWPW_@localhost/kamailio"
这四个选项必须修改
如果设置了SIP_DOMAIN为域名,但这个域名没有在DNS中解析, 还必须在 kamailio.cfg 设置一个选项
alias=""
5. 初始化数据库和用户
kamdbctl create
这个时候会要求输入mysql的root密码
6. 开启停止服务
systemctl start kamailio systemctl stop kamailio systemctl restart kamailio
7. 添加用户
kamctl add userid password 比如 kamctl add softsimuser softsimpassword
8. 监听 IPV6地址
listen=udp:10.0.0.10:5060 listen=[proto]:[localip]:[lport] advertise [publicip]:[pport]
如果不设置,只监听本地 ipv4地址
或者使用
auto_bind_ipv6=1
选项
9. 常用管理命令
查看用户 /usr/sbin/kamctl db show subscriber 添加用户 /usr/sbin/kamctl add softsimuser softsimpassword 修改用户密码 /usr/sbin/kamctl passwd username passwd 显示在线用户 /usr/sbin/kamctl online 删除用户 /usr/sbin/kamctl rm username 启动Kamalio /usr/sbin/kamctl start 重启Kamalio /usr/sbin/kamctl restart 停止Kamalio /usr/sbin/kamctl stop