【MatrixSynapseChat】安装教程(二)基于centOS7.* coturn穿透服务器搭建

官方安装说明: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/
打开上面的测试地址,输入地址,用户名密码,

点击 add server
再点击 Gather candidates

只有relay地址回来的是你的ip才算穿透成功。

完整图示

  • 注意!注意!注意! : 搭建成功时候,通讯什么的都是可以的,但是在 跨网络 进行 视频 音频时候 无法链接, 解决办法是: 加大带宽
posted @ 2020-03-03 16:58  依然范儿特西  阅读(1357)  评论(0编辑  收藏  举报