第一种方法是直接安装在服务器里
macOS 登录远程服务器命令:
sudo ssh -i hostwinds.key root@192.119.71.144
输入系统密码及远程密码即可登录。
Linux系统:Ubuntu 18.04
1.安装coturn
sudo apt-get -y update
sudo apt-get install coturn
systemctl stop coturn
2.启用coturn
nano /etc/default/coturn
# 取消注释:
TURNSERVER_ENABLED=1
3.备份和创建配置文件
mv /etc/turnserver.conf /etc/turnserver.conf.original
nano /etc/turnserver.conf
添加以下配置:
realm=turn.b5eda0a74558a342cf659187f06f746f.tk
server-name=turn.b5eda0a74558a342cf659187f06f746f.tk
listening-ip=192.119.71.144
relay-ip=192.119.71.144
external-ip=192.119.71.144
listening-port=3478
tls-listening-port=5349
min-port=40000
max-port=65535
fingerprint
log-file=/etc/turnserver.log
verbose
user=authors:test110
proc-user=turnserver
proc-group=turnserver
lt-cred-mech
cli-password=test110
注意:有些服务器没有在NAT内,只有一个IP,那么配置中的内网IP就使用这个IP。 端口范围默认是注释掉的,也就是任何端口都有可能,这时就需要开放所有UDP端口;可以指定范围,然后服务器要开放这个范围udp入访权限,同时3478端口的udp和tcp都要开放
运行
turnserver -v -r 192.119.71.144:3478 -a -o -c /etc/turnserver.conf
最后测试连通性
https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
Time Component Type Foundation Protocol Address Port Priority Mid MLine Index Username Fragment
0.002 rtp host 2458163306 udp 192.168.0.156 56813 126 | 32542 | 255 0 0 RQqI
0.122 rtp host 3691472026 tcp 192.168.0.156 9 90 | 32542 | 255 0 0 RQqI
0.274 rtp srflx 332177118 udp 61.157.29.190 55044 100 | 32542 | 255 0 0 RQqI
0.584 rtp relay 854857832 udp 192.119.71.144 52190 2 | 32542 | 255 0 0 RQqI
0.584 Done
0.586
第二种方法是用docker容器安装
Docker install cotton
1.docker官网https://docs.docker.com/engine/install/centos/,centos安装
sudo yum-config-manager
--add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 如果提示有依赖不行,就用下面的方法,安装特定版本,
yum list docker-ce --showduplicates | sort -r
# 从列表中选择一个版本进行安装,我选择了18.6.centos版本,成功了
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-compose-plugin
# <VERSION_STRING>替换成具体版本号
sudo systemctl start docker
sudo docker run hello-world
如果hello word成功了,就说明docker安装成功了
接下来就可以安装coturn了
https://hub.docker.com/r/coturn/coturn
sudo docker pull coturn/coturn
# 然后去服务器路径 /etc下面新建一个配置文件,
cd /etc
sudo vim turnserver.conf
# 按i
# 输入如下配置文件:
realm=turn2.b5eda0a74558a342cf659187f06f746f.tk
server-name=turn2.b5eda0a74558a342cf659187f06f746f.tk
listening-ip=192.119.71.144
relay-ip=192.119.71.144
external-ip=192.119.71.144
listening-port=3478
tls-listening-port=5349
min-port=40000
max-port=65535
fingerprint
syslog
verbose
user=authors:test110
#proc-user=turnserver
#proc-group=turnserver
lt-cred-mech
cli-password=test110
# 按esc,输入:wq 回车保存
sudo docker run -d --network=host -v /etc/turnserver.conf:/etc/turnserver.conf coturn/coturn -c /etc/turnserver.conf
# 执行挂载配置文件并启动coturn容器,
sudo docker ps
# 查看是否启动成功
# 如果需要修改配置文件,执行sudo docker kill <pid>上面ps查看到的进程pid,关掉进程,
# 再执行修改 sudo vi /etc/turnserver.conf
# ……
# 保存后,再重新执行
sudo docker run -d --network=host -v /etc/turunserver.conf:/etc/turnserver.conf coturn/coturn -c /etc/turnserver.conf
最后测试连通性是否正常:https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
对了,记得打开防火墙端口3478,40000-65535
一切顺利