turnserver安装(TURN/STUN)
- 阿里云服务器 / ContOS7
进入文件夹
cd /usr/local/
下载依赖
yum install -y make gcc cc gcc-c++ wget openssl-devel libevent libevent-devel mysql-devel
获取安装包
wget https://coturn.net/turnserver/v4.5.0.8/turnserver-4.5.0.8.tar.gz
解压并进入目录
tar -zxvf turnserver-4.5.0.8.tar.gz
进入文件夹
cd turnserver-4.5.0.8/
# 编译,默认目录在/usr/local/bin/ ,指定安装的目录
./configure --prefix=/usr/local/turnserver
make && make install
设置环境变量
vim /etc/profile
export TURNSERVER_HOME=/usr/local/turnserver
export PATH=$PATH:$TURNSERVER_HOME/bin
source /etc/profile
生成证书,疯狂回车即可,证书储存位置:/usr/local/turnserver/turn_server_cert.pem
openssl req -x509 -newkey rsa:2048 -keyout /usr/local/turnserver/turn_server_pkey.pem -out /usr/local/turnserver/turn_server_cert.pem -days 99999 -nodes
进入文件夹
cd /usr/local/turnserver/
内网和公网可以从你们购买的那里可以看到的,每个购买的应该都会给你这两个地址的,编写配置文件
vim turnserver.conf
#与前ifconfig查到的网卡名称一致
listening-device=eth0
listening-port=3478
tls-listening-port=5349
#内网IP
listening-ip=172.26.70.93
relay-ip=172.26.70.93
#公网IP
external-ip=39.108.184.79
min-port=49152
max-port=65535
#用户名密码,创建IceServer时用
user=user:123456
cert=/usr/local/turnserver/turn_server_cert.pem
pkey=/usr/local/turnserver/turn_server_pkey.pem
#不开启会报CONFIG ERROR: Empty cli-password, and so telnet cli interface is disabled! Please set a non empty cli-password!错误
cli-password=qwerty
启动与检测,-o 参数后台启动,
turnserver -a -o -c /usr/local/turnserver/turnserver.conf
测试:公网IP:3478
测试:进入此网站 ice检测网站
## 参数说明 > 针对TURN/STUN服务进程turnserver.exe的使用参数说明
参数 | 说明 |
---|---|
-L | 监听的IP地址 |
-p | 监听的IP地址 |
-E | 中继IP |
-X | 公网/内网 映射配置 |
–no-loopback-peers | 不使用127.x.x.x,::1回路IP地址 |
-m | 当前连接上的线程数,默认CPU个数 |
–min-port | 起始用的最小端口 |
–max-port | 最大端口号 |
-o | 以守护进程模式运行(后台运行) |
-f | 使用指纹 |
-a | 长期验证机制 |
-z | 不进行验证,所有客户端均可访问 |
-u | 用户名:密码 |
-r | realm组别 |
–check-origin-consistency | 连续检测会话的属性值 |
-q, --user-quota | allocation配额 |
-Q, --total-quota | 总配额值 |
-s, --max-bps | 带宽 |
-B, --bps-capacity | 总带宽容量 |
-c | 配置文件名称 |
-b, --db, --userdb | 数据库名 |
-M, --mysql-userdb | mysql连接字符串 |
–server-name | 服务名,默认同realm |
-n | 不使用配置,全部使用命令行参数 |
–cert | PEM格式的证书 |
–pkey | PEM格式的私钥文件 |
–pky-pwd | 私钥的密码 |
–no-udp | 不提供UDP协议的服务 |
–no-tcp | 不提供TCP协议的服务 |
–no-tls | 不使用TLS服务 |
–no-udp-relay | 不使用UDP中继 |
–no-tcp-relay | 不使用TCP中继 |
-l, --log-file, | 指定日志文件 |
–no-stdout-log | 控制台不输出std-out格式的日志 |
–syslog | 使用系统日志 |
–simple-log ) | 使用建议日志记录,所有日志会覆盖之前对应日志文件的内容(日志文件同名 |
-S, --stun-only | 只使用STUN服务 |
-S, --no-stun | 不使用STUN服务 |
–mobility | 支持Mobility ICE(MICE specs)协议 |