Linux 下部署 syncthing 中继服务器

来自🥬🐶程序员 Truraly | 田园 的博客,最新文章首发于:田园幻想乡 | 原文链接 | github (欢迎关注)

文章目录

    • 安装
      • apt 安装(Ubuntu/Debian)
    • syncthing 配置
    • 发现服务器和中继服务器


Syncthing 是一个连续的文件同步程序,用于在多个设备之间同步文件夹,对于备份或者同步来说非常好用。

安装

有多种安装方式,使用 github 的 release 下载二进制文件,或者使用包管理器,或者使用 docker 安装

安卓端可以在 google play 上下载

PC 推荐推荐 docker 或者 apt 安装,这样后台运行不用自己去管理

syncthing 的发现服务器(syncthing-discosrv)和中继服务器(syncthing-relaysrv)也可以使用上述方法安装,发现服务器和中继服务器需要装在有公网 IP 的服务器上

apt 安装(Ubuntu/Debian)

# 添加release PGP keys
sudo mkdir -p /etc/apt/keyrings
sudo curl -L -o /etc/apt/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg# 添加稳定版本
echo "deb [signed-by=/etc/apt/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list# 添加候选版本
# echo "deb [signed-by=/etc/apt/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing candidate" | sudo tee /etc/apt/sources.list.d/syncthing.list# 更新
sudo apt-get update
# 安装syncthing
sudo apt-get install syncthing
# 安装中继服务器和发现服务器
sudo apt-get install syncthing-relaysrv
sudo apt-get install syncthing-discosrv

参考资料:

  • Syncthing 官网
  • Syncthing Docker
  • Syncthing Github | github
  • 官方 docker 版本使用指南 | github
  • 【玩转 Lighthouse】docker 自建 Syncthing 的发现服务器和中继服务器-腾讯云开发者社区-腾讯云
  • 搭建和配置 Syncthing 发现和中继服务器
  • 不知道谁自己搞的 docker | github

syncthing 配置

略,网上教程繁多

发现服务器和中继服务器

比较逆天的是官方基本没给 发现服务器和中继服务器 的使用教程,所有示例链接都指向 syncthing,乐

所以配置方面是自己踩着坑过来的

发现服务器需要开放端口 8443,中继服务器需要开放端口 22067 和 22070(可选)

我这边使用 apt 来下载和运行,所以相关的配置未见在 /etc/default/syncthing-discosrv/etc/default/syncthing-relaysrv

discosrv 的默认配置可以直接用,不用修改,relaysrv 为了不加入官方的中继服务器列表需要加上-pool 或者 -token参数,案例如下

# Default settings for syncthing-relaysrv (strelaysrv).
NAT=true## Add Options here:
RELAYSRV_OPTS="-token \"1919810\""

然后将relay://<host name|IP>[:port]/?id=<relay device ID>&token=mySecretToken添加到本地 syncthing 的中继服务器配置中

https://<host name|IP>:[:port]/v2/?id=<relay device ID>添加到本地 syncthing 的发现服务器配置中

eg:

relay://11.45.1.4:22067/?id=QWERTYUIOPASDFGHJKLZXCVBNM&token=1919810
https://11.45.1.4:8443/v2/?id=PLOKIJUHYGTFRDESWAQZXC

注意:中继服务器和发现服务器的 ID 是不同的

参考资料:

  • 官方中继服务器教程
  • 官方 Discovery Server 教程
  • 论多设备同步文件,它说第二,没人敢说第一:Syncthing 使用笔记
  • discosrv 的 Dockerfile | github
  • 【原创】Syncthing 搭建自己的中继服务和发现服务_syncthing 中继服务器 | CSDN

————————————————

版权声明:本文为 田园幻想乡 的原创文章,遵循 CC 4.0 BY-NA-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:http://truraly.fun/学习笔记/ubuntu桌面版/syncthing.html

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

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

相关文章

解答word图标变白

把WPS卸载了之后就变成白色了&#xff0c;然后在注册表中把word的地址改成office word的地址之后图标变成这样了&#xff0c;怎么办 1.winR打开命令提示符 2.输入regedit&#xff0c;打开注册表编辑器 3.找到下面这个路径 计算机\HKEY_CLASSES_ROOT\Word.Document.8\Defaul…

【C#】已知有三个坐标点:P0、P1、P2,当满足P3和P4连成的一条直线 与 P0和P1连成一条直线平行且长度一致,该如何计算P3、P4?

问题描述 已知有三个坐标点&#xff1a;P0、P1、P2&#xff0c;当满足P3和P4连成的一条直线 与 P0和P1连成一条直线平行且长度一致&#xff0c;该如何计算P3、P4&#xff1f; 解决办法 思路一&#xff1a;斜率及点斜式方程 # 示例坐标 x0, y0 1, 1 # P0坐标 x1, y1 4, 4 # …

跟ChatGPT学习go语言--time.Sleep 方法 单位是什么

在 Go 语言中&#xff0c;time.Sleep 方法用于让当前的 Goroutine 休眠一段时间。time.Sleep 方法的参数是一个 time.Duration 类型&#xff0c;表示休眠的时间长度。time.Duration 是一个以纳秒为单位的整数类型。 使用示例 以下是一个简单的示例&#xff0c;展示如何使用 tim…

自适应键盘,自带隐藏键盘的输入框(UITextField)

引言 在iOS开发中&#xff0c;输入框占据着举足轻重的地位。与安卓不同&#xff0c;iOS输入框经常面临键盘遮挡的问题&#xff0c;或者无法方便地取消键盘。为了解决这些问题&#xff0c;有许多针对iOS键盘管理的库&#xff0c;如IQKeyboardManager、TPKeyboardAvoiding和Keyb…

一个PCIe设备可以既是主设备也是从设备吗?主设备与根节点的关系?

PCIe设备也可以既是主设备&#xff08;Master&#xff09;又是从设备&#xff08;Slave&#xff09;&#xff0c;这是因为PCIe总线的设计允许设备在不同的事务中扮演不同的角色&#xff0c;具体取决于设备的功能和总线控制器的支持。以下是几个主要的原因&#xff1a; 灵活性和…

分库分表 [ 技术 ] 指南 ✨

目录 ✨探索 技术 分库分表✨ 数据库分库分表指南 一、什么是分库分表 二、分库分表策略 三、分库分表的实现 四、分库分表的常见问题及解决方案 五、总结 相关面试题目 1. 解释什么是数据库分库分表&#xff0c;以及它的主要目的是什么&#xff1f; 2. 描述垂直分库…

STM32学习(1)--STM32介绍

STM32介绍 1.STM32简介2.ARM3.STM32F103C8T64.外设5.命名规则6.系统结构7.引脚定义8.启动配置9.最小系统电路10.新建工程步骤11.工程架构 课程知识及代码来源均来自b站 江协科技&#xff0c;下学期即将做毕设&#xff0c;需要用到STM32单片机&#xff0c;在这个假期我将持续学…

Python热门面试题(六)

请解释Python中的map()函数和filter()函数及其应用场景 在Python中&#xff0c;map()函数和filter()函数是两个非常有用的内置高阶函数&#xff0c;它们允许你以函数式编程的方式处理可迭代对象&#xff08;如列表、元组等&#xff09;。下面分别解释这两个函数的工作原理及其…

摸鱼大数据——Spark Structured Steaming——新零售数据分析案例

1、数据源介绍 数据内容 字段说明 2、分析需求 数据清洗需求 清洗需求&#xff1a;1) 将客户id&#xff08;CustomerID&#xff09;不为0的数据保留下来: CustomerID ! 02) 将商品描述&#xff08;Description&#xff09;不为空的数据保留下来: Description !3) 将日期&#…

gds-linkqueue:泛型链式队列

类似于C的queue的泛型容器&#xff0c;初始化、销毁、清空、入队、出队、取队首/尾、队空。 ​​​​​​​ ​​​​​​​

对某次应急响应中webshell的分析

文章前言 在之前处理一起应急事件时发现攻击者在WEB应用目录下上传了webshell&#xff0c;但是webshell似乎使用了某种加密混淆手法&#xff0c;无法直观的看到其中的木马连接密码&#xff0c;而客户非要让我们连接webshell来证实此文件为后门文件且可执行和利用(也是很恼火&a…

fMATLAB中fill函数填充不同区域

只需获取填充区域的边缘信息&#xff0c;函数边缘越详细越好&#xff0c;然后调用fill函数。 fill函数能够根据指定的顶点坐标和填充颜色来绘制多边形或曲线形状&#xff0c;并在其内部填充指定的颜色。这使得在MATLAB中创建具有视觉吸引力的图形变得简单而高效。 fill函数的…

《0基础》学习Python——第二十讲__网路爬虫/<3>

一、用post请求爬取网页 同样与上一节课的get强求的内容差不多&#xff0c;即将requests.get(url,headershead)代码更换成requests.post(url,headershead),其余的即打印获取的内容&#xff0c;如果content-typejson类型的&#xff0c;打印上述代码的请求&#xff0c;则用一个命…

笔记:现代卷积神经网络之VGG

本文为李沐老师《动手学深度学习》笔记小结&#xff0c;用于个人复习并记录学习历程&#xff0c;适用于初学者 神经网络架构设计的模块化 然AlexNet证明深层神经网络卓有成效&#xff0c;但它没有提供一个通用的模板来指导后续的研究人员设计新的网络。 在下面的几个章节中&a…

【Vue】`v-if` 指令详解:条件渲染的高效实现

文章目录 一、v-if 指令概述二、v-if 的基本用法1. 基本用法2. 使用 v-else3. 使用 v-else-if 三、v-if 指令的高级用法1. 与 v-for 一起使用2. v-if 的性能优化 四、v-if 的常见应用场景1. 表单验证2. 弹窗控制 五、v-if 指令的注意事项 Vue.js 是一个用于构建用户界面的渐进式…

Flink调优详解:案例解析(第42天)

系列文章目录 一、Flink-任务参数配置 二、Flink-SQL调优 三、阿里云Flink调优 文章目录 系列文章目录前言一、Flink-任务参数配置1.1 运行时参数1.2 优化器参数1.3 表参数 二、Flink-SQL调优2.1 mini-batch聚合2.2 两阶段聚合2.3 分桶2.4 filter去重&#xff08;了解&#xf…

[React]利用Webcomponent封装React组件

[React]利用Webcomponent封装React组件 为什么这么做 我个人认为&#xff0c;最重要的点是可以很方便地跨框架挂载和卸载wc元素&#xff08;至少我在项目里是这么玩的&#xff09;&#xff0c;此外&#xff0c;基于wc的css沙箱以及它的shadowRoot机制&#xff0c;可以提供一套…

ChatGPT:SpringBoot 响应请求是串行还是并行?

ChatGPT&#xff1a;SpringBoot 响应请求是串行还是并行&#xff1f; 使用springboot相应前端的接口&#xff0c;10个请求进来是并行响应还是串行响应 在Spring Boot中&#xff0c;默认情况下&#xff0c;处理HTTP请求是并行的。Spring Boot应用使用内置的Tomcat服务器&#x…

【中项】系统集成项目管理工程师-第3章 信息技术服务-3.4服务标准化

前言&#xff1a;系统集成项目管理工程师专业&#xff0c;现分享一些教材知识点。觉得文章还不错的喜欢点赞收藏的同时帮忙点点关注。 软考同样是国家人社部和工信部组织的国家级考试&#xff0c;全称为“全国计算机与软件专业技术资格&#xff08;水平&#xff09;考试”&…

持续集成02--Linux环境更新/安装Java新版本

前言 在持续集成/持续部署&#xff08;CI/CD&#xff09;的旅程中&#xff0c;确保开发环境的一致性至关重要。本篇“持续集成02--Linux环境更新/安装Java新版本”将聚焦于如何在Linux环境下高效地更新或安装Java新版本。Java作为广泛应用的编程语言&#xff0c;其版本的更新对…