ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

coturn配合redis使用

2022-06-15 01:01:40  阅读:199  来源: 互联网

标签:mydomain redis 配合 port turn xx allocate sent0 coturn


最近搭建coturn服务踩了许多坑,分享给大家,纯干货!

环境:ubuntu-server 18.04

1.安装redis
sudo apt install redis
2.安装coturn
sudo apt install coturn
3.配置coturn
sudo vim /etc/default/coturn
TURNSERVER_ENABLED=1 (去掉打头的#号)

sudo vim /etc/turnserver.conf
listening-device=enp1s0
listening-port=3478
tls-listening-port=5349
listening-ip=192.168.1.2
relay-device=enp1s0
relay-ip=192.168.1.2
external-ip=xx.xx.xx.xx
min-port=40000
max-port=50000
lt-cred-mech
server-name=turn.mydomain.com
realm=turn.mydomain.com
redis-userdb="ip=127.0.0.1 dbname=2 port=6379 connect_timeout=30"
redis-statsdb="ip=127.0.0.1 dbname=3 port=6379 connect_timeout=30"
cert=/etc/turn_server_cert.pem
pkey=/etc/turn_server_pkey.pem
allow-loopback-peers
cli-ip=127.0.0.1
cli-port=5766

重启coturn服务
sudo service coturn restart

4.redis中添加coturn用户
turnadmin -a -N "ip=127.0.0.1 dbname=2 port=6379 connect_timeout=30" -u user1 -r turn.mydomain.com -p password1

验证数据库中是否添加成功,方法1:
turnadmin -l --redis-userdb="ip=127.0.0.1 dbname=2 port=6379 connect_timeout=30"
0: log file opened: /var/tmp/turn_28375_2022-06-14.log
0: Redis DB sync connection success: ip=127.0.0.1 dbname=2 port=6379 connect_timeout=30
user1[turn.mydomain.com]

验证数据库中是否添加成功,方法2:
redis-cli
select 2
keys *
1) "turn/realm/turn.mydomain.com/user/user1/key"

也可手动添加
turnadmin -k -u user1 -r turn.mydomain.com -p password1
0xedeb8dc3c867171d1fcd1a64eada558c
redis-cli
select 2
set turn/realm/turn.mydomain.com/user/user1/key edeb8dc3c867171d1fcd1a64eada558c (不需要0x打头)

5.客户端登陆连接测试
turnutils_uclient -v -u user1 -w password1 turn.mydomain.com
0: IPv4. Connected from: 192.168.1.105:44006
0: IPv4. Connected to: xx.xx.xx.xx:3478
0: allocate sent
0: allocate response received:
0: allocate sent
0: allocate response received:
0: success
0: IPv4. Received relay addr: xx.xx.xx.xx:45686
0: clnet_allocate: rtv=16164354831909234861
0: refresh sent
0: refresh response received:
0: success
0: IPv4. Connected from: 192.168.1.105:40997
0: IPv4. Connected to: xx.xx.xx.xx:3478
0: IPv4. Connected from: 192.168.1.105:58754
0: IPv4. Connected to: xx.xx.xx.xx:3478
0: allocate sent
0: allocate response received:
0: allocate sent
0: allocate response received:
0: success
0: IPv4. Received relay addr: xx.xx.xx.xx:45687
0: clnet_allocate: rtv=0
0: refresh sent
0: refresh response received:
0: success
0: allocate sent
0: allocate response received:
0: allocate sent
0: allocate response received:
0: success
0: IPv4. Received relay addr: xx.xx.xx.xx:46390
0: clnet_allocate: rtv=15065301322524967146
0: refresh sent
0: refresh response received:
0: success
0: channel bind sent
0: cb response received:
0: channel bind: error 403 (Forbidden IP)
说明用户验证连接成功。
服务器端redis也可查看状态日志:
127.0.0.1:6379[3]> keys *
1) "turn/realm/turn.mydomain.com/user/user1/allocation/012000000000000001/status"
2) "turn/realm/turn.mydomain.com/user/user1/allocation/022000000000000001/status"
3) "turn/realm/turn.mydomain.com/user/user1/allocation/009000000000000001/status"

标签:mydomain,redis,配合,port,turn,xx,allocate,sent0,coturn
来源: https://www.cnblogs.com/fairychild/p/16376965.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有