官方安装说明:https://github.com/matrix-org/synapse/blob/master/docs/turn-howto.md
查看安装环境
cat /etc/centos-release
下载并安装libevent-2.0
wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
tar zxvf libevent-2.0.21-stable.tar.gz
cd libevent-2.0.21-stable && ./configure
make && make install
下载编译安装coturn
git clone https://github.com/coturn/coturn
cd coturn
./configure
make
make install
查看是否安装成功
which turnserver
首先查看网卡,记录网卡名称和内网地址
ifconfig
eth0网卡名称, 172.19.176.106 为内网IP
签名证书
使用命令安装openssl
yum install openssl
cert和pkey配置的自签名证书用Openssl命令生成:
openssl req -x509 -newkey rsa:2048 -keyout /etc/turn_server_pkey.pem -out /etc/turn_server_cert.pem -days 99999 -nodes
填写相关信息随便写。 (提示:此命令会提示输入国家城市等信息,随便输入就行)
生成的两个文件在/etc/目录下,你也可以再生成密钥时候指定修改此路径
配置文件在 /usr/local/etc/
目录下有 turnserver.conf.default
,复制为 turnserver.conf
cd /usr/local/etc/
cp turnserver.conf.default turnserver.conf
修改配置信息
vi /usr/local/etc/turnserver.conf
listening-ip与relay-ip采用内网ip,external-ip是外网的ip
#与前ifconfig查到的网卡名称一致
relay-device=eth0
listening-ip=172.19.176.106
relay-ip=172.19.176.106 #relay-ip 可以不设置,默认会使用你的外网ip地址作为转发包的中继地址
listening-port=3478 #监听端口可以不设置会默认的使用3478
tls-listening-port=5349
external-ip=156.000.111.222 #注意必须使用你的外网IP地址
relay-threads=50
lt-cred-mech
cert=/etc/turn_server_cert.pem
pkey=/etc/turn_server_pkey.pem
pidfile="/var/run/turnserver.pid"
user=laofan:123456 #用户名密码,创建IceServer时用
cli-password=qwerty
userdb=/var/db/turndb #SQLite
创建用户
turnadmin -a -b turndb -u laofan -p 123456 -r laofanturn
启动服务
turnserver -o -a -f -user=laofan:123456 -r laofanturn
查看进程
ps -ef | grep turnserver
注意:一定要在你的云服务器后台的安全组规则中添加用到的端口,包括3478端口的tcp/udp,udp一定要配置
防火墙设置:
添加
firewall-cmd --zone=public --add-port=3478/udp --permanent
firewall-cmd --zone=public --add-port=3478/tcp --permanent
重新载入
firewall-cmd --reload
重启防火墙
systemctl restart firewalld
ps: 我是直接关闭了防火墙测试得
ICE测试 : https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/