1.安装coturn的依赖组件
sudo su root #先切换到root
apt-get update
apt-get upgrade
apt-get install build-essential #(可选),如果后面的./configure失败时,可先安装gcc
apt-get install openssl libssl-dev make2.下载coturn源码并编译
wget https://github.com/libevent/libevent/releases/download/release-2.1.10-stable/libevent-2.1.10-stable.tar.gz
tar -zxvf libevent-2.1.10-stable.tar.gz
cd libevent-2.1.10-stable
./configure
make & make install
apt-get install sqlite libsqlite3-dev
cd ~/
wget https://github.com/coturn/coturn/archive/4.5.1.1.tar.gz
tar -zxvf 4.5.1.1.tar.gz
cd coturn-4.5.1.1
./configure
make & make install3.创建用户并配置coturn
turnadmin -a -u yjmyzz -p yjmyzz.cnblogs.com -r cnblogs
上面的命令,将创建用户yjmyzz,密码为yjmyzz.cnblogs.com,同时指定realm为cnblogs,大家根据实际情况修改
cp /usr/local/etc/turnserver.conf.default /usr/local/etc/turnserver.conf
上面的命令,将配置模式文件复制一份到/usr/local/etc/下
vim /usr/local/etc/turnserver.conf
修改下面几个关键项:
relay-device=eth0
listening-ip=172.17.41.27
#内网IP
listening-port=3478
#默认端口号
tls-listening-port=5349
relay-ip=47.240.40.62
external-ip=47.240.40.62
#公网IP
relay-threads=50
lt-cred-mech
cert=/etc/turn_server_cert.pem
pkey=/etc/turn_server_pkey.pem
pidfile=”/var/run/turnserver.pid”
min-port=49152
#最小端口号
max-port=65535
#最大端口号
user=yjmyzz:yjmyzz.cnblogs.com
#用户名密码,创建IceServer时用
cli-password=1234564.启用coturn并验证
turnserver -o -a -f -v -r cnblogs
最后的-r cnblogs意为指定realm,要与创建用户时指定的realm一致。可用lsof -i:3478校验下是否启动成功,如果看到类似下面的输出,说明3478监听正常。
提供了一个检测ice穿透的在线工具:https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
参考下图,把stun和turn地址设置好,然后点击最下面的“Gather candidates”(收集候选链路)
如果看到最后的reply那一行,address里的ip与turn服务器的公网ip相同,说明中继成功。



评论区
还没有人评论