前言
想要实现 P2P RTC 通信 NAT 打通是必不可少的,当遇到 NAT 之间无法打通的情况时,WebRTC 会使用 TURN 协议通过中转的方式实现端与端之间的通信。目前比较流行的STUN/TURN 服务器是 Google 开源的 coturn 服务器,本文将具体介绍如何在 CentOS 中搭建一个 coturn 服务器。
一、前提准备,安装 git
yum install git
安装完后可以通过 git version 查看是否安装成功 及 git 的版本
二、下载 coturn
2.1、先进入到安装的指定路径
cd /usr/local
2.2、下载 coturn
git clone https://github.com/coturn/coturn
三、安装 coturn
3.1、进入到下载的 coturn文件夹下
cd coturn
3.2、配置 coturn
./configure
3.3、安装 coturn
make
sudo make install
4、修改 coturn 配置文件
4.1、修改配置文件
找到 coturn 的配置文件: turnserver.conf, 文件路径在:/usr/local/etc/turnserver.conf
因为 turnserver.conf 中的配置都被注释了,所以我们可以找到 #relay-device=eth1
然后直接把下面的配置直接复制进去
relay-device=eth0
listening-ip=172.16.0.3 # 内网 ip
listening-port=3478
tls-listening-port=5349
relay-ip=172.16.0.3
external-ip=129.204.30.247 # 外网 ip
relay-threads=50
lt-cred-mech
cert=/usr/local/https_certificate/xxx.pem # 填写自己的 ssl 证书中的 pem url
pkey=/usr/local/https_certificate/xxx.key # 填写自己的 ssl 证书中的 key url
pidfile="/var/run/turnserver.pid"
min-port=49152
max-port=65535
user=username:password # 用户名和密码
如果不知道内网 IP 的可以通过 ifconfig 命令查看
设置完了配置文件以后在配置文件中继续搜索 #no-cli,打开 #no-cli 的注释
4.2、运行 coturn
turnserver -o -a -f --user=username:password -r Guangdong