专栏首页恩蓝脚本使用Syncthing自建私有同步盘

使用Syncthing自建私有同步盘

syncthing应该是目前开源界人气最高的一款了,这个主打私有,真的完全私有。。。没有公开分享的功能,并且同步必须要两端相互添加对方许可才行。

毕竟是基于GO开发的,搭建都很简单,并且官方提供了二进制文件,下载即用:

wget https://github.com/syncthing/syncthing/releases/download/v1.0.0/syncthing-linux-amd64-v1.0.0.tar.gz
tar -xzvf syncthing-linux-amd64-v1.0.0.tar.gz
cd syncthing-linux-amd64-v1.0.0
cp syncthing /usr/bin

这里我还是按照自己的习惯把配置成systemd的服务:

vi /etc/systemd/system/syncthing.service

写入:

[Unit]
Description=Syncthing - Open Source Continuous File Synchronization
After=network.target

[Service]
User=root
ExecStart=/usr/bin/syncthing -no-restart -logflags=0
Restart=on-failure
SuccessExitStatus=3 4
RestartForceExitStatus=3 4
ProtectSystem=full
PrivateTmp=true
SystemCallArchitectures=native
MemoryDenyWriteExecute=true
NoNewPrivileges=true

[Install]
WantedBy=default.target

然后运行:

systemctl start syncthing

设置开机启动:

systemctl enable syncthing

因为syncthing默认只监听本地,所以我们要用做一下,但是syncthing新版本加入了一个主机头检测的功能,这个要关闭,不然无法进行反代:

vi ~/.config/syncthing/config.xml

在GUI设置的下面加入:

<insecureSkipHostcheck true</insecureSkipHostcheck

如图所示:

然后重启:

systemctl restart syncthing

安装:

yum -y install nginx

新建一个站点配置文件:

vi /etc/nginx/conf.d/syncthing.conf

写入:

server {
    listen       5862;
    client_max_body_size 100000m;
    server_name  example.com;

location /syncthing/ {
    proxy_set_header        Host $host;
    proxy_set_header        X-Real-IP $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header        X-Forwarded-Proto $scheme;

    proxy_pass              http://127.0.0.1:8384/;

    proxy_read_timeout      600s;
    proxy_send_timeout      600s;
    }
}

这里我把syncthing监听在了5862端口,不是常规端口,因为这个WEBUI初次启动的时候是没有密码验证的,为防止滥用建议监听一个高位端口,后续我们登录进去设置了密码再修改回80都可以的。

现在启动以及设置开机启动:

systemctl start nginx
systemctl enable nginx

现在打开你的站点:

http://你的地址:5862/syncthing

应该可以访问到这个的首页:

现在你应该立即给这个WEBUI设置密码:

客户端的话,我个人推荐这个:://github./canton7/SyncTrayzor

下载:://github./canton7/SyncTrayzor/releases/download/v1.1.22/SyncTrayzorSetup-x64.exe

测试了一下功能,可以正常同步:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Apache虚拟目录配置及vue-cli反向代理的设置方法

    配置需求来自于前后端分离。后台由于使用PHP或者Java,但是前端使用vue,React这些框架时怎么和后端有效的数据通信。反向代理是个很好的选择,虽然json...

    砸漏
  • jupyter notebook中新建cell的方法与快捷键操作

    jupyter notebook中,你可能需要在当前cell的上面或下面添加新的cell,通过菜单栏、工具栏和快捷键可以实现

    砸漏
  • Python使用jupyter notebook查看ipynb文件过程解析

    砸漏
  • Syncthing就是我要的同步备份软件

    最开始的时候,我在路由器上开启 Samba,每次编辑完项目就手动拷贝到路由器硬盘里,麻烦程度可想而知,后来又用了 Google Drive/One Drive,...

    气象学家
  • 不定高多行溢出文本省略

    大家应该都知道用text-overflow:ellipsis属性来实现单行文本的溢出显示省略号(…)。当然部分浏览器还需要加宽度width属性。

    空空云
  • 企业面试题: JavaScript中如何对一个对象进行深度clone

    (1)原始类型包括:数值、字符串、布尔值、null、undefined(后两个是特殊的原始值,这里不做详细的说明,我的上一篇博客有谈到过一些)

    舒克
  • 讲述:一个月薪12000的北京程序员的真实生活

    “ 每个人都有自己的亲身经历,每个人都有一条生活道路。千万人,千万条,各不相同,各有特点。但是并不是好人都有一条好路,坏人都有一坏路。有的时候却恰恰相反。这虽然...

    Java架构技术
  • 看焱融云CSI动态感知如何扩展Kubernetes Scheduler

    Kubernetes Scheduler 的作用是将待调度的 Pod 按照一定的调度算法和策略绑定到集群中一个合适的 Worker Node(以下简称 Node...

    焱融科技
  • YOLO—实时对象检测的新视角

    近几年,在深入学习的帮助下, 目标检测领域取得了巨大的进步。对象检测是标识图像中的对象并在其周围绘制边界框的任务, 也就是定位它们。在计算机视觉由于其众多的应用...

    AiTechYun
  • 费曼:我确信没有人能懂得量子力学

    在量子力学里,当几个粒子在彼此相互作用后,由于各个粒子所拥有的特性已综合成为整体性质,无法单独描述各个粒子的性质,只能描述整体系统的性质,则称这现象为量子缠结或...

    一个会写诗的程序员

扫码关注云+社区

领取腾讯云代金券