1. coturn 服务器完整的实现了 STUN/TURN/ICE 协议,支持 P2P 穿透防火墙。主要用于 webrtc 等点对点视频音频通话。coturn 支持 tcp, udp, tls, dtls 连接。
GitHub - coturn/coturn: coturn TURN server project
git clone https://github.com/coturn/coturn
cd coturn
./configure
make
sudo make install
2. ERROR: Libevent2 development libraries are not installed properly in required location.
wget https://github.com/libevent/libevent/releases/download/release-2.1.11-stable/libevent-2.1.11-stable.tar.gz
tar -zxvf libevent-2.1.11-stable.tar.gz
cd libevent-2.1.11-stable
./configure
make
make install
3. 查看是否安装成功
which turnserver
4. 生成签名
cd /usr/local/etc/
openssl req -x509 -newkey rsa:2048 -keyout turn_server_pkey.pem -out turn_server_cert.pem -days 99999 -nodes
5. 配置turnserver.conf
cp turnserver.conf.default turnserver.conf
vim turnserver.conf
#ifconfig查到的网卡名称和IP
relay-device=enp0s31f6
listening-ip=10.86.21.71
listening-port=3478
tls-listening-port=5349
#同listening-ip
relay-ip=10.86.21.71
#公网IP
external-ip=116.31.233.190
relay-threads=50
lt-cred-mech
#生成的签名文件路径
cert=/usr/local/etc/turn_server_cert.pem
pkey=/usr/local/etc/turn_server_pkey.pem
pidfile="/var/run/turnserver.pid"
min-port=49152
max-port=65535
Verbose
fingerprint
no-stdout-log
syslog
no-tcp
no-tls
no-tcp-relay
stun-only
#用户名密码,创建IceServer时用
user=lynx:123456
cli-password=qwerty
6. 启动turnserver
turnserver
7. 测试地址:Trickle ICE
注:也可以通过 apt install coturn 直接安装