跳至主要內容

linux安装webrtc的stun/turn服务器

deploycoturnstunturnwebrtc大约 2 分钟约 455 字

linux安装webrtc的stun/turn服务器

  • 阿里云环境
  • 安装、验证 coturn 服务

1. 安装

// 相关依赖会自动安装
yum -y install coturn

1.1. 依赖库

如果没有,可以自行安装

1 安装gcc环境,通过 which gcc 检测是否安装了gcc环境

2 安装openssl,yum -y install openssl-devel

3 安装libevent

通过 https://libevent.orgopen in new window 下载最新版的 libevent

  tar -zxvf libevent-2.1.12-stable.tar.gz
  
  cd libevent-2.1.12-stable
  
  ./configure
  
  make
  
  make install

2. 配置

1 生成签名文件到 /etc 目录

openssl req -x509 -newkey rsa:2048 -keyout /etc/turn_server_pkey.pem -out /etc/turn_server_cert.pem -days 99999 -nodes

2 生成用户

turnadmin -a -u root -p password -r stun.daidaibenben.top,用户名称:wjc,密码:123456,realm:wjc.com

3 修改配置文件

按照下面参数修改配置文件

  cd /usr/local/etc
  
  cp turnserver.conf.default turnserver.conf
  
 #与前ifconfig查到的网卡名称一致
 relay-device=eth0
 #内网IP
 listening-ip=0.0.0.0
 #公网IP
 external-ip=0.0.0.0
 #用户名密码,创建IceServer时用
 user=wjc:123456
 #一般与turnadmin创建用户时指定的realm一致
 realm=wjc.com
 #端口号
 listening-port=3478
 #不开启会报CONFIG ERROR: Empty cli-password, and so telnet cli interface is disabled! Please set a non empty cli-password!错误
 cli-password=qwerty

 cert=/etc/turn_server_cert.pem
 pkey=/etc/turn_server_pkey.pem

2.1. 服务器配置

特别是防火墙的设置

1 服务器安全组打开 3478/udp,3478/tcp,49152-65535/udp,49152-65535/tcp

2 防火墙打开 3478/udp,3478/tcp,49152-65535/udp,49152-65535/tcp

  firewall-cmd --zone=public --add-port=3478/udp --permanent
  firewall-cmd --zone=public --add-port=3478/tcp --permanent
  firewall-cmd --zone=public --add-port=49152-65535/udp --permanent
  firewall-cmd --zone=public --add-port=49152-65535/tcp --permanent
  
  firewall-cmd --reload
  
  # 查看端口是否开放
  
    firewall-cmd --zone=public --query-port=3478/tcp  
    firewall-cmd --zone=public --query-port=3478/udp

3. 测试turn服务器

https://webrtc.github.io/samples/src/content/peerconnection/trickle-iceopen in new window

出现 relay 877558997 udp 114.115.244.15(服务器IP) 63262 表示成功

# 开启服务. 也可以直接使用 systemctl 启动

  turnserver -a -f -r wjc.com
  
  turnserver -a -o -f -r wjc.com  使用 -o 参数后台启动