【Ubuntu24.04搭建turn服务器】

news2024/11/15 18:28:50

1.安装与启动

首先安装coturn

sudo apt-get update -y
sudo apt-get install coturn -y

在这里插入图片描述

可以看到默认的TURN服务是不启动的

#
Uncomment it if you want to have the turnserver running as
an automatic system service daemon
#
#TURNSERVER_ENABLED=1

编辑配置文件取消注释

sudo vim /etc/default/coturn
TURNSERVER_ENABLED=1

2.配置

连接数据库
创建database;
用navcat创建coturn;
执行sql文件,就是安装成功之后命令行提示的sql文件

use coturn;
source /usr/share/coturn/schema.sql;

[图片]

接下来配置coturn
首先备份一下默认的配置文件

sudo cp /etc/turnserver.conf /etc/turnserver.conf.backup

接下来编辑/etc/turnserver.conf
这里填服务域(realm)和名字

realm=antalkws.rustfisher.com
server-name=turnantalk

external-ip写你的服务器的IP地址

# IPs the TURN server listens to
listening-ip=本机IP地址
# External IP-Address of the TURN server
external-ip=公网ip地址

使用的端口我们写3478

# Main listening port
listening-port=3478
# Further ports that are open for communication
min-port=10000
max-port=20000

指定log的路径。log等级设置为verbose

# Use fingerprint in TURN message
fingerprint
# Log file path
log-file=/home/szjk/server/turn/turnserver.log
# Enable verbose logging
verbose

user那里配置账号密码,格式account:pwd,中间是冒号

# Specify the user for the TURN authentification
user=自己想的账号:自己想的密码

完整配置

listening-port=3478
realm=antalkws.rustfisher.com
server-name=turnantalk
listening-ip=192.168.1.110
external-ip=111.121.123.203
min-port=10000
max-port=20000
verbose
fingerprint
log-file=/home/szjk/server/turn/turnserver.log
mysql-userdb="host=127.0.0.1 dbname=coturn user=root password=xxxxxxx port=3306 connect_timeout=5 read_timeout=5"
lt-cred-mech
user=user1
cli-password=xxxxxx

用systemctl启动coturn服务

systemctl start coturn

防火墙允许这个端口

sudo ufw allow 3478

至此coturn服务已经启动完毕
3.验证
我们可以去WebRTC Samples Trickle ICE页面验证我们的turn服务是否可用
网络不好的时候可能需要工具打开 webrtc.github.io
URI输入 turn:IP地址:3478,以及配置好的用户名和密码。然后「Add Server」
在这里插入图片描述

然后点击「Gather candidates」按钮,可以看到结果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2034444.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【区块链+食品安全】湖南省食品行业联合会:溯链中国—基于区块链的食品安全可信追溯平台 | FISCO BCOS应用案例

食品安全追溯体系的建设,能够切实加强食品安全监管,确保人民群众饮食安全和身体健康,是创建食品安全城市必不可少的一部分。然而,中心化存储、信息孤岛、窜货是传统溯源行业最大痛点。区块链技术的快速发展, 使得防伪溯…

42.【C语言】冒泡排序

目录: 冒泡排序 *核心思想 *分析 *代码 *优化 15.冒泡排序(bubble sort) *核心思想:两两相邻的元素进行比较,满足条件则两者交换 *分析 现要求升序排序 输入: 9 8 7 6 5 4 3 2 1 0 输出:0 1 2 3 4 5 6 7 8 9 下面展示一趟冒泡排…

NLP从零开始------9文本进阶处理之文本相似度计算

1.文本相似度计算简介 在自然语言处理中,经常会涉及度量两个文本相似度的问题。在诸如对话系统和信息减速等中,度量句子或短语之间的相似度尤为重要。在新闻学传媒中应用文本相似度可以帮助读者快速检索到想要了解的报道。 文本相似度的定义式如下所示&a…

江协科技STM32学习笔记(第08章 USART串口)

第08章 USART串口 8.1 USART串口协议 8.1.1 通信接口 在STM32中,集成了很多用于通信的外设模块,比如下表所列。 通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统。 针对STM32内部没有的功能,比如蓝牙无…

04创建型设计模式——建造者模式

一、建造者模式简介 建造者模式(Builder Pattern)又被称为生成器模式。它旨在构建一个复杂对象的各个部分,而不需要指定该对象的具体类。该模式特别适用于对象的构建过程复杂且需要多个步骤的情况。建造者模式是一种对象创建型模式之一&…

【Mysql】mysql三种安装方式(二进制、yum、docker)

一、环境信息 centos7.6_x86、glib2.17 mysql官网下载地址:MySQL :: Download MySQL Community Server 二、 二进制安装 #下载解压安装包 [roothadoop03 ~]# wget -c https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.39-linux-glibc2.17-x86_64.tar.xz [ro…

PX4二次开发快速入门

文章目录 前言一、概述二、二次开发基础(自定义工作队列,自定义uorb)三、自定义串口驱动(添加一个毫米波雷达并定高)四、自定义I2C驱动(驱动一个oled显示屏)五、自定义参数六、自定义日志七、自…

机器学习笔记:编码器与解码器

目录 介绍 组成结构 代码实现 编码器 解码器 合并编码器-解码器 思考 介绍 在机器翻译中,输入的序列与输出的序列经常是长度不相等的序列,此时,像自然语言处理这种直接使用循环神经网络或是门控循环单元的方法就行不通了。因此&#x…

Qt 窗口:菜单、工具与状态栏的应用

目录 引言: 1. 菜单栏 1.1 创建菜单栏 1.2 在菜单栏中添加菜单 1.3 创建菜单项 1.4 在菜单项之间添加分割线 1.5 综合示例 2.工具栏 2.1 创建工具栏 2.2 设置停靠位置 2.3 设置浮动属性 2.4 设置移动属性 3. 状态栏 3.1 状态栏的创建 3.2 在状态栏中显…

Pytorch_cuda版本的在线安装命令

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 运行效果如下: 这个方法是直接从pytorch官网进行在线下载和安装。 cu121,表示当前您安装的cuda版本是12.1

java基础概念15-字符串

public static void main(String[] args) {String name "张三";name "李四";System.out.println(name);// 李四} name变量是一个引用变量,它存储的是对字符串对象的引用(即内存地址),而不是字符串对象本身的…

【Git】远程仓库新建分支后,拉到本地开发

1. 在远程仓库上创建分支 2. git fetch origin:在本地同步远程仓库的分支(获取远程仓库所有分支的所有修改) 3. git remote -a:查看所有分支(远程+本地) 4. git checkout -b 本地名 远程仓库…

华夏erp2.3代码审计

1 sql注入代码 该项目使用的是Mybits的数据库,直接在*.xml文件中全局搜索 ${我们选一个比较有可能有注入的 UserMapperEx.xml 进行查 看 回溯到UserMapperEx.java。 继续回溯到UserService.java。 继续回溯可以看到UserComponent.java中userName的值是从search中获取的。 在s…

CodeWave--创建实体与枚举

一、实体的创建 可视化开发左侧边栏选择数据模块,在实体菜单下,选择2处的“” ,即可创建一个默认的实体类,修改3处的实体名称,再在实体页签中,添加所需的字段即可。 注:id是自动生成的主键&…

域名是什么?1分钟快速了解

任何一个互联网上的设备,包括服务器或我们的个人电脑设备,都有一个对应的地址,即IP地址,(比如,192.168.1.1)。所有设备,都通过这个独立唯一的IP地址来互相访问。 由于IP地址不容易被记忆&#…

仅需三步,轻松制作电脑系统安装盘!

系统安装在现在可谓是必不可少的技能。自己系统坏了,不用到电脑安装,省了不少大洋,在朋友面前也可以装装大神,百利无一害呀,还不赶快学起来! 按照以前常规方式,每个电脑系统都会配有一个光盘,然后放到光驱里面读取安装,但随着笔记本越做越薄,光驱慢慢被取消了。所以…

广州网站建设运营团队

广州是中国南部的一座国际化大都市,拥有众多创新科技企业和互联网公司。随着数字经济的快速发展,网站建设和运营已经成为企业发展和推广的重要手段。作为一支专业的网站建设运营团队,我们深知在这个信息化时代,拥有一个优质的网站…

React 学习——react项目中加入echarts图

实现的代码如下: import * as echarts from echarts import { useEffect, useRef } from react; const Home ()>{const chartRef useRef(null);useEffect(()>{// const chartDom document.getElementById(main);//使用id获取节点const chartDom chartRef…

Linux系统驱动(十六)platform驱动

文章目录 一、简介(一)device、bus、driver模型(二)platform驱动原理 二、platform总线驱动的API(一)设备信息端(二)设备驱动端(三)驱动中获取设备信息函数&a…

【子豪兄】精讲CS231N斯坦福计算机视觉公开课学习笔记

wx 搜索 gzh 司南锤,回复 子豪兄231笔记 可获取笔记文件(pdfdoc) 文章目录 学习链接:- 斯坦福大学公开课- 计算机视觉发展历史- 图像分类算法- 线性分类、损失函数与梯度下降- 神经网络与反向传播- 卷积神经网络- 可视化卷积神经网络- 训练神经网络 &…