Ubuntu下载安装coturn,启动TURN服务¶
更新日期: 2022-7-20
- 2022-7-20 更新格式
- 2022-5-16 创建文档
运行环境
Ubuntu(或者其他Linux)服务器,有公网地址
WebRTC使用点对点连接来传输数据。当2个客户端(例如PC)不在同一个网络,或是被防火墙阻止时,直接连接会遇到问题。
TURN(Traversal Using Relays around NAT)用来解决节点不能直接连接的问题。
本文讲述如何在服务器上安装和使用TURN服务。
1.安装与启动¶
首先安装coturn
安装完毕后,先查看默认的配置
可以看到默认的TURN服务是不启动的
#
# Uncomment it if you want to have the turnserver running as
# an automatic system service daemon
#
#TURNSERVER_ENABLED=1
编辑配置文件取消注释
用systemctl
启动coturn服务
$ systemctl start coturn
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
Authentication is required to start 'coturn.service'.
Authenticating as: ubuntu,,, (ubuntu)
Password:
==== AUTHENTICATION COMPLETE ===
防火墙允许这个端口
至此coturn
服务已经启动完毕
2.配置¶
接下来配置coturn
首先备份一下默认的配置文件
接下来编辑/etc/turnserver.conf
这里填服务域(realm)和名字
external-ip
写你的服务器的IP地址
# IPs the TURN server listens to
listening-ip=0.0.0.0
# External IP-Address of the TURN server
external-ip=你的服务器的IP地址
使用的端口我们写3478
# Main listening port
listening-port=3478
# Further ports that are open for communication
min-port=10000
max-port=20000
指定log的路径。log等级设置为verbose
# Use fingerprint in TURN message
fingerprint
# Log file path
log-file=/home/ubuntu/server/turn/turnserver.log
# Enable verbose logging
verbose
user那里配置账号密码,格式account:pwd
,中间是冒号
完整的配置文件如下
完整turnserver.conf
#Turn server name and realm
realm=antalkws.rustfisher.com
server-name=turnantalk
# Use fingerprint in TURN message
fingerprint
# IPs the TURN server listens to
listening-ip=0.0.0.0
# External IP-Address of the TURN server
external-ip=xxx.xxx.xxx.xxx
# Main listening port
listening-port=3478
# Further ports that are open for communication
min-port=10000
max-port=20000
# Log file path
log-file=/home/ubuntu/server/turn/turnserver.log
# Enable verbose logging
verbose
# Specify the user for the TURN authentification
user=<你的用户名:自己设的密码>
# Enable long-term credential mechanism
lt-cred-mech
# If running coturn version older than 4.5.2, uncomment these rules and ensure
# that you have listening-ip set to ipv4 addresses only.
# Prevent Loopback bypass https://github.com/coturn/coturn/security/advisories/GHSA-6g6j-r9rf-cm7p
#denied-peer-ip=0.0.0.0-0.255.255.255
#denied-peer-ip=127.0.0.0-127.255.255.255
#denied-peer-ip=::1
保存好这个配置文件。
重启服务
3.验证¶
我们可以去WebRTC Samples Trickle ICE页面验证我们的turn服务是否可用
网络不好的时候可能需要工具打开 webrtc.github.io
URI输入 turn:IP地址:3478
,以及配置好的用户名和密码。然后「Add Server」
然后点击「Gather candidates」按钮,可以看到结果
至此TURN服务已经运行起来了。
参考¶
本站说明
一起在知识的海洋里呛水吧。广告内容与本站无关。如果喜欢本站内容,欢迎投喂作者,谢谢支持服务器。如有疑问和建议,欢迎在下方评论~