如何使用BitTorrent Sync备份Linux服务器

本教程介绍了如何安装和使用BitTorrent Sync自动备份Linux服务器。 BitTorrent Sync允许您使用BitTorrent协议在计算机之间同步文件夹。 您可以直接在计算机和智能手机之间同步文件夹。 无需将内容上传到第三方服务器。 BitTorrent Sync传输的内容受256位AES加密保护。

由于它使用BitTorrent协议,因此必须至少有两台计算机联机才能同步文件夹。 您可能不会一直使个人计算机保持在线状态。 但是服务器是另一回事。 服务器几乎一直在运行,并已连接到Internet。 因此,使用BitTorrent Sync备份Linux服务器是一个很好的主意。

同步方案

  1. 您有两台Linux服务器正在运行并连接到Internet 24 x 7,然后可以使用BitTorrent Sync在它们之间自动同步文件夹。
  2. 您只有一台Linux服务器。 您可以在服务器和家用计算机之间同步文件夹。 家用计算机启动后,它将自动从Linux服务器中获取新内容。
  3. 您有一个Raspberry Pi。 您可以每天24小时保持RPi正常运行,并在Linux服务器和RPi之间同步文件夹。 毕竟,Raspberry Pi消耗的功率很少,并且不会花太多钱。

因此,让我们开始吧。

具有主服务器和从服务器设置的备份Linux服务器

如果您有两台服务器,则可以将一台配置为主服务器,另一台配置为从服务器。 这意味着,您在主服务器上更新了网站内容,而从服务器只能读取主服务器上的同步文件夹,而不能将新内容添加到同步文件夹中。 从服务器仅用于备份目的。

在主服务器上安装BitTorrent Sync

您可以使用以下方法在任何Linux发行版上安装BitTorrent。

通过SSH登录到Linux服务器并下载Linux版本的BitTorrent Sync。

64位:

wget https://download-cdn.getsync.com/stable/linux-x64/BitTorrent-Sync_x64.tar.gz

32位

wget https://download-cdn.getsync.com/stable/linux-i386/BitTorrent-Sync_i386.tar.gz

解压缩tar文件。

tar xvf BitTorrent-Sync_*.tar.gz

现在,一个名为 btsync 将被提取到当前工作目录中,并且可以运行了。 您可以使用以下命令启动BitTorrent:

./btsync

默认情况下,只能在运行Sync(localhost:8888)的计算机上访问WebUI。 为了使WebUI可以通过LAN或Internet访问,请以这种方式启动Sync:

 ./btsync --webui.listen 0.0.0.0:8888

现在,您可以通过在浏览器地址栏中键入以下内容来访问WebUI。 更换 您的服务器IP 与您的实际服务器IP。

your-server-ip:8888

首次访问WebUI时,将要求您创建一个帐户。 但是我们现在正在使用纯HTTP协议,这是不安全的。 因此,在创建用户名和密码之前,我们需要在Linux服务器上安装SSL证书。 阅读以下文章,从Let’s Encrypt获得免费的SSL证书。

Nginx部署中HTTPS加密和加密的概述

我会用 sync.mydomain.com 作为访问WebUI的域名。 因此,我为sync.mydomain.com应用了SSL证书,而您需要为sync.yourdomain.com应用了SSL证书。 用您的实际域名替换yourdomain.com。

获得SSL证书后,请返回此处。

设置Nginx反向代理

现在,我们将Nginx设置为BitTorrent Sync服务的反向代理。 在此设置中,btsync仅需要侦听本地主机(127.0.0.1)。

创建一个Nginx服务器阻止文件。

sudo nano /etc/nginx/conf.d/sync.yourdomain.com.conf

将以下文本粘贴到文件中。

server {
   listen 80;
   server_name sync.yourdomain.com;
   return 301 https://sync.yourdomain.com$request_uri;
}
server {
   listen 443 ssl;
   server_name sync.yourdomain.com;

   ssl_protocols TLSv1.1 TLSv1.2;
   ssl_certificate /etc/letsencrypt/live/sync.yourdomain.com/fullchain.pem;
   ssl_certificate_key /etc/letsencrypt/live/sync.yourdomain.com/privkey.pem;
   access_log /var/log/nginx/sync.yourdomain.com.log;
   location / {
   proxy_pass http://127.0.0.1:8888;
   }
}

保存并关闭文件。 此配置会将所有纯HTTP请求重定向到HTTPS,并且服务器将仅接受TLSv1.1和TLSv1.2加密。 当您键入 sync.yourdomain.com 在浏览器地址栏中,Nginx会将请求传递给127.0.0.1:8888。

重新加载Nginx

sudo service nginx reload       or      sudo systemctl reload nginx

现在,通过转到来访问Sync WebUI sync.yourdomain.com。 创建用户名和密码以保护WebUI。

创建帐户并登录到WebUI之后。 现在是时候在主服务器上添加一个文件夹进行同步了。 但是为了在服务器上添加一个文件夹进行同步,运行btsync进程的用户必须对将要同步的文件夹具有写权限。

运行btsync进程的用户是调用btsync命令的用户。

假设您要同步服务器的Web根目录,例如 / usr / share / nginx / 该目录由用户www-data和组www-data拥有。 它的权限设置为755,因此只有www-data用户具有写权限。

drwxr-xr-x 7 www-data www-data 4096 Mar 9 21:58 nginx

为了让用户www-data和运行btsync的用户都具有写许可权,我们可以使用setfacl命令向运行btsync的用户授予写许可权。

sudo setfacl -R -m "u:<username>:rwx" /usr/share/nginx

这样,www-data和用户都具有对Web根目录的写许可权。 现在,您可以添加Web根目录进行同步。 btsync将为此同步文件夹生成一个共享链接,秘密密钥和QR码。

添加Web根目录以进行同步

设置从服务器

从服务器的过程与主服务器几乎相同。 您安装btsync程序,从Let’s Encrypt获得另一个免费的SSL证书,并设置Nginx反向代理。 然后创建一个帐户来保护WebUI。

唯一的区别是,登录到从属服务器的WebUI之后,需要单击左上角的箭头,然后选择 输入密钥或链接 从下拉菜单中。

BitTorrent Sync备份Linux服务器

然后,转到主服务器WebUI,单击“共享”按钮,然后复制只读密钥,并将只读密钥粘贴到从属服务器WebUI中。

BitTorrent同步密钥

之后,您需要在从服务器上选择一个目录,以从主服务器接收文件。 有两个键。 一个用于读取和写入访问,另一个用于只读访问。 我们复制仅准备密钥,因为我们不想让从服务器将新内容添加到同步文件夹中。

现在,两个服务器开始同步过程。

用家用计算机备份Linux服务器

如果您使用Linux作为家庭计算机的操作系统,请按照上述方法安装BitTorrent Sync。 安装完成后,您可以启动btsync并立即开始同步,而不必设置Nginx反向代理并在家用计算机上安装SSL证书。

使用Raspberry Pi备份Linux服务器

BitTorrent Sync具有ARM版本,因此您必须下载Raspberry Pi的ARM安装程序,然后将其解压缩。

wget https://download-cdn.getsync.com/stable/linux-arm/BitTorrent-Sync_arm.tar.gz

如果您的Raspberry Pi没有头,那么为了使WebUI可以通过LAN或Internet访问,请以这种方式启动Sync:

./btsync --webui.listen 0.0.0.0:8888

同样,您无需在Raspberry Pi上安装SSL证书或设置Nginx反向代理。

系统启动时自动启动

要让BitTorrent Sync在系统启动时自动启动,请以普通用户身份添加cron作业。

crontab -e

在末尾添加以下行。

@reboot /path/to/btsync --webui.listen 0.0.0.0:8888

更换 /路径/到/ btsync 与实际路径。 如果btsync仅需要侦听localhost(127.0.0.1),则删除 –webui.listen 0.0.0.0:8888 部分。

因此,您将看到备份Linux服务器和快乐同步很容易!

Sidebar