Synching是一款类似于Resilio Sync的文件同步与云储存的软件,相比于Resilio Sync而言,Syncthing开源免费并且不存在Resilio Sync被屏蔽的问题。Syncthing支持常见的系统,比如Linux/Windows/MacOS/Android/iOS等。

最近将Resilio Sync换成了Syncthing,所以需要在VPS上安装Syncthing并开启外放访问,以实现用网页也能浏览到具体的文件。以下在一台Debian 9的VPS上安装Syncthing服务端为例。

首先需要将Syncthing添加到Debian9的更新源中,随后更新并安装。

curl -s https://syncthing.net/release-key.txt | apt-key add -
echo "deb https://apt.syncthing.net/ syncthing stable" | tee /etc/apt/sources.list.d/syncthing.list
apt update
apt install syncthing

如果遇到类似于https could not be found这样的报错信息,这是因为缺少部分ssl证书导致的,可以使用以下命令解决。

apt install apt-transport-https

安装完成后,修改配置文件实现外网访问。
Syncthing的默认端口是8384,但是一般不推荐,因为网页访问的时候还得手动添加端口号并不方便,其次2019年了,网站还没有SSL总觉得不应当。
Syncthing的配置文件是config.xml,放置于/.config/syncthing中,至于哪个.config取决于你安装时使用的用户了。假如说使用了root用户,那么就在/root/.config/syncthing中。
使用vim打开config.xml后,找到以下配置信息:

<gui enabled="true" tls="false" debugging="false">
    <address>127.0.0.1:8384</address>
    <apikey>k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1</apikey>
    <theme>default</theme>
</gui>

将127.0.0.1改为0.0.0.0 实现访问syncthing的网页
将8384改为443 为后面开启ssl做准备
将tls="false"改为tls="ture" 开启ssl功能

此时,将域名绑定到此VPS的ip,并且去sslforfree申请免费ssl证书(也可以自己花钱买,毕竟sslforfree的证书每三个月就需要更新一次)。
将得到的ssl证书合并并转换。
其中,将非private.key的另外两个证书的内容粘贴复制到一起,然后重命名为https-cert.pem;将private.key使用openssl转换为pem格式并命名为https-key.pem,命令如下:

openssl rsa -in private.key -out https-key.pem

https-cert.pemhttps-key.pem上传到/.config/syncthing中。
此时,使用https://域名,即可访问网页版的Syncthing,强烈建议按照引导对其设置用户名和密码,以防别人能够浏览你的Syncthing。

标签: 教程, syncthing, 同步

添加新评论