Linux下WebRTC搭建私有turn/stun服务

Linux下WebRTC搭建私有turn/stun服务

coturn是一个免费的开源的TURN/STUN服务器。coturn 服务器完整的实现了STUN/TURN/ICE协议,支持P2P穿透防火墙。

STUN 服务器用于获取设备的外部网络地址。

TURN 服务器是在点对点失败后用于通信中继。

WebRTC 建立连接的步骤大概是这样的:

客户端(浏览器)直接尝试直连;

如果如果直连则通过 STUN 服务器进行穿透;

如果无法穿透则通过 TURN 服务器进行中转。

提前下载好资源如下:

1、安装前准备

http://libevent.org/ 下载 libevent-2.1.12-stable.tar.gz

wget https://github.com/coturn/coturn/archive/4.5.1.1.tar.gz 下载 conturn-4.5.1.1.tar.gz 稳定版本

如果undefined reference to `SSL_CTX_up_ref'的错误换用稳定版本就好了。

2、安装libevent2

1.在http://libevent.org/下载libevent-2.1.8-stable.tar.gz

2.tar -zxvf libevent-2.1.8-stable.tar.gz

3.cd libevent-2.1.8-stable

4./configure --prefix=/usr --libdir=/usr/lib64 (如果报错试试这个方式:./configure --prefix=/usr/local/coturn)

5.make

6.make install

成功没有出现报错信息

3、安装gcc

yum install gcc-c++

4、安装openssl-devel 

yum -y install openssl-devel

5、安装conturn-4.5.1.1

tar -zxvf 4.5.1.1.tar.gz

cd coturn-4.5.1.1

./configure

make

make install

成功如下图:

可以通过which turnserver验证。如果出现路径即为成功,默认路径为:

6、配置文件和签名

然后进入文件夹:
cd /usr/local/etc/ 会看到一个叫做 turnserver.conf.default的配置文件。将它备份:

cp turnserver.conf.default turnserver.conf

7、在当前文件夹生成签名:

openssl req -x509 -newkey rsa:2048 -keyout /usr/local/etc/turn_server_pkey.pem -out /usr/local/etc/turn_server_cert.pem -days 99999 -nodes

8、修改配置文件

Vim turnserver.conf  参考如下

relay-device=eth0

listening-ip=#内网IP

listening-port=3478

tls-listening-port=5349

relay-ip=#内网IP

external-ip=#公网IP

relay-threads=50

lt-cred-mech

min-port=49152

max-port=65535

cert=/usr/local/etc/turn_server_cert.pem

pkey=/usr/local/etc/turn_server_pkey.pem

pidfile=”/var/run/turnserver.pid”

user=admin:123456

cli-password=123456

将配置文件更新如上。

   请一定要设置cli-password这一项,不设置会报错。

   注意检查cert和pkey的路径和名称。检查内网ip和公网ip是否填写准确。

   注意文本格式准确。

9、启动turnserver

turnserver -o -a -f -user=zhanghao:mima-c /usr/local/etc/turnserver.conf -r xiamen

-o 是让程序在后台启动

-r 后面填个地区就行。

-user 一定要和配置文件中一样。

如果出现下图,则成功:

ps -ef|grep turnserver 指令查看是否启动服务,如果有

10、验证

Trickle ICE

1、stun:+公网IP+端口,测试出现公网IP则代表部署成功

2、turn:+公网IP+端口,测试出现公网IP则代表部署成功

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刺-客

如果对您有点帮助,请给点支持~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值