GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu 20.04、18.04デスクトップ/サーバーにResilio Sync(BTSync)をインストールします

このチュートリアルでは、 Resilio Syncをインストールする方法を紹介します。 (以前の BitTorrent Sync )Ubuntu20.04および18.04。 Resilio Syncは、Resilio、Incがリリースした無料の高速なピアツーピアファイル共有および同期ツールで、Linux、FreeBSD、Mac、Windows、Android、iOS、Amazon Kindle Fire、NASデバイスで利用できます。

DropboxやNextCloudとは異なり、ResilioSyncはファイルを保存するために中央サーバーを必要としません。代わりに、エンドデバイスにResilio Syncをインストールするだけで、BitTorrentプロトコルを介してファイルを同期できるため、サーバーのストレージ制限に縛られることはありません。

公式リポジトリからUbuntu20.04およびUbuntu18.04にResilioSyncをインストールする

ResilioSyncにはUbuntuのリポジトリがあります。まず、パッケージマネージャーがResilio Syncパッケージを検証できるように、ResilioSyncの公開鍵をインポートする必要があります。ターミナルウィンドウを開き、次のコマンドを実行して公開鍵をダウンロードします。

wget http://linux-packages.resilio.com/resilio-sync/key.asc

次に、apt-keyを使用して公開鍵をインポートします 。

sudo apt-key add key.asc

次に、次のコマンドを実行してResilioSyncリポジトリを追加します。 (add-apt-repository コマンドはsoftware-properties-commonによって提供されます パッケージ。)

sudo apt install software-properties-common

sudo add-apt-repository "deb http://linux-packages.resilio.com/resilio-sync/deb resilio-sync non-free"

Ubuntu 20.04および18.04はパッケージインデックスを自動的に更新するため、sudoaptupdateを手動で実行する必要はありません。次に、次のコマンドを使用してResilioSyncパッケージをインストールします。

sudo apt install resilio-sync

インストールすると、ResilioSyncが自動的に開始されます。次のコマンドでステータスを確認できます:

systemctl status resilio-sync

ヒント :上記のコマンドを実行した後、Qを押して端末の制御を取り戻します。

実行されていない場合は、次のコマンドで開始できます:

sudo systemctl start resilio-sync

デフォルトでは、ResilioSyncは起動時に開始されません。自動起動を有効にするには、次のコマンドを使用します:

sudo systemctl enable resilio-sync

ResilioSyncはrslsyncとして実行されます ユーザーとWebUIは127.0.0.1:8888でリッスンします /etc/resilio-sync/config.jsonで指定されているとおり 構成ファイル。

Resilio SyncWebUIのセットアップ

LinuxバージョンのResilioSyncは、デスクトップクライアントを提供していません。代わりに、Webインターフェイスを介して設定する必要があります。 Webブラウザのアドレスバーに次のように入力して、Resilio SyncWebUIにアクセスします。

127.0.0.1:8888

リモートLinuxサーバーにResilioSyncをインストールする場合、Web UIにアクセスするには、NginxまたはApacheでリバースプロキシを設定する必要があります。この記事の後半を参照してください。

WebUIを保護するためにユーザー名とパスワードを設定するように求められます。

次に、デバイスの名前を選択し、Get startedをクリックします 。

作成したユーザー名とパスワードを入力します。

ログインすると、コンピュータ上のフォルダを他のデバイスと共有したり、別のデバイスからフォルダを受信したりできます。

他のデバイスとのフォルダの共有

コンピューター上のフォルダーを共有するには、左上隅にある[+]ボタンをクリックして、標準フォルダーを選択します。

次に、コンピューター上のフォルダーを選択します。

次のエラーメッセージが表示される場合があります。

Can't open the destination folder.

または

Don't have permissions to write to selected folder.

これは、ResilioSyncがrslsyncとして実行されているためです。 そのフォルダにアクセスする権限を持たないユーザー。

ホームフォルダ/home/your-username/を選択したとします。 共有フォルダとして。上記のエラーを修正するには、ホームフォルダのアクセス許可をrslsyncに付与するだけです。 次のコマンドを使用するユーザー。

sudo setfacl -R -m "u:rslsync:rwx" /home/your-username

上記のコマンドは、共有フォルダーの所有者を変更しません。所有者は通常と同じ権限を持っています。これは、もう1人のユーザー、つまりrslsyncに読み取り、書き込み、および実行のアクセス許可を付与することです。 。 -Rに注意してください (再帰的)フラグは-mの前に置く必要があります (変更)フラグ。直後にアクセス制御リストエントリ(u:rslsync:rwx)が続きます。 。

このエラーが表示された場合:

sudo: setfacl: command not found

次に、aclをインストールします 上記のsetfaclをパッケージ化して再実行します コマンド。

sudo apt install acl

これで、ホームフォルダを共有フォルダとして追加できるようになります。

フォルダを追加したら、リンク、秘密鍵、またはQRコードを介してこのフォルダを共有できます。

共有フォルダが大きい場合、ResilioSyncがコンテンツのインデックスを作成するのに時間がかかります。

他のデバイスからフォルダを受信する

別のデバイスからフォルダを受信するには、左上隅にある[+]ボタンをクリックして、[キーまたはリンクを入力してください]を選択します。

次に、キーまたはリンクを入力します。

Ubuntu 20.04、18.04サーバーでのResilioSyncの使用

上記のリポジトリからUbuntu20.04および18.04サーバーにResilioSyncをインストールできます。サーバーがクラウドにある場合、Web UIはローカルホストでのみリッスンするため、WebUIにアクセスするにはリバースプロキシを設定する必要があります。リバースプロキシを構成すると、ドメイン名を介してWebUIにアクセスできます。

Nginxを使用したResilioSyncリバースプロキシの設定

Nginxは、最近Webサーバーおよびリバースプロキシとしてますます人気が高まっています。次のコマンドを使用して、Ubuntu 20.04、18.04サーバーにNginxをインストールします。

sudo apt install nginx

Nginxを起動し、自動起動を有効にします。

sudo systemctl start nginx

sudo systemctl enable nginx

次に、ResilioSyncの仮想ホストファイルを作成します。

sudo nano /etc/nginx/conf.d/resilio-sync.conf

次の行をコピーしてファイルに貼り付けます。 resilio.example.comを置き換えます あなたの本当のドメイン名で。このサブドメインのDNSAレコードも追加する必要があります。

server {
  listen 80;
  server_name resilio.example.com;

  access_log /var/log/nginx/resilio_access.log;
  error_log /var/log/nginx/resilio_error.log;
  location / {
     proxy_pass http://127.0.0.1:8888;
     proxy_set_header Host $host;
     proxy_set_header X-Real-IP $remote_addr;
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

このファイルを保存して閉じます。次に、Nginxの構成をテストします。

sudo nginx -t

テストが成功した場合は、Nginxをリロードします。

sudo systemctl reload nginx

次に、ブラウザのアドレスバーにresilio.example.comと入力します。 WebGUIにアクセスできるはずです。

Apacheを使用したResilioSyncリバースプロキシの設定

Apacheは、リバースプロキシとしても使用できる有名なWebサーバーです。 NginxよりもApacheを使用する場合は、Ubuntu 20.04、18.04サーバーに次のコマンドを使用してインストールします。

sudo apt install apache2

Apacheを起動し、自動起動を有効にします。

sudo systemctl start apache2

sudo systemctl enable apache2

Apacheをリバースプロキシとして使用するには、proxyを有効にする必要があります モジュールとヘッダーモジュール。

sudo a2enmod proxy proxy_http headers proxy_wstunnel

次に、ResilioSyncの仮想ホストファイルを作成します。

sudo nano /etc/apache2/sites-available/resilio-sync.conf

次の行をコピーしてファイルに貼り付けます。 resilio.example.comを置き換えます あなたの本当のドメイン名で。このサブドメインのDNSAレコードも追加する必要があります。

<VirtualHost *:80>
   ServerName resilio.example.com
   ErrorDocument 404 /404.html

   ProxyPass / http://localhost:8888/
   ProxyPassReverse / http://localhost:8888/

   ErrorLog ${APACHE_LOG_DIR}/resilio_error.log
   CustomLog ${APACHE_LOG_DIR}/resilio_access.log combined

</VirtualHost>

ファイルを保存して閉じます。次に、この仮想ホストを有効にします。

sudo a2ensite resilio-sync.conf

Apacheを再起動します

sudo systemctl restart apache2

これで、resilio.example.comを介してWebUIにアクセスできます。 。

HTTPSでResilioSyncWebGUIを保護する

ドメイン名を介してResilioSyncWeb UIにアクセスしたときにHTTPトラフィックを暗号化するには、Let’sEncryptから発行された無料のTLS証明書をインストールしてHTTPSを有効にします。次のコマンドを実行して、Let’s Encryptクライアント(certbot)をUbuntu 20.04、18.04サーバーにインストールします。

sudo apt install certbot

Nginxを使用する場合は、CertbotNginxプラグインもインストールする必要があります。

sudo apt install python3-certbot-nginx

次に、次のコマンドを実行してTLS証明書を取得してインストールします。

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d resilio.example.com

Apacheを使用する場合は、CertbotApacheプラグインをインストールしてください。

sudo apt install python3-certbot-apache

そして、このコマンドを実行してTLS証明書を取得してインストールします。

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d resilio.example.com

どこ

  • --nginx :nginxプラグインを使用してください。
  • --apache :Apacheプラグインを使用してください。
  • --agree-tos :利用規約に同意します。
  • --redirect :301リダイレクトでHTTPSを強制します。
  • --hsts :すべてのHTTP応答にStrict-Transport-Securityヘッダーを追加します。ドメインに常にTLSを使用するようにブラウザを強制します。 SSL/TLSストリッピングから防御します。
  • --staple-ocsp :OCSPステープリングを有効にします。有効なOCSP応答は、TLS中にサーバーが提供する証明書にホチキス止めされます。

これで、証明書が取得され、自動的にインストールされます。

また、HTTPS(https://resilio.example.com)を介してResilio SyncWebUIにアクセスできます。 。

ファイアウォールでResilio同期ポートを開く

Resilio Syncは、Web UIポートに加えて、ピアに接続するためにパブリックインターフェイスでリッスンする必要もあります。リスニングポートはデバイスごとに異なります。 環境設定に移動すると、Resilio SyncWebUIで見つけることができます。 ->詳細

UbuntuサーバーでUFWファイアウォールを有効にした場合は、このポートを開く必要があります。たとえば、私のポートは22251なので、次のコマンドを実行して開きます。

sudo ufw allow 22251

ResilioSynciOSアプリ

Resilio Syncを使用して、Ubuntuデスクトップ、Ubuntuサーバー、iPhone間でファイルを同期しています。 iOSアプリは完全な災害だと言う人もいますが、私はそれが非常にうまく機能していることに気づきました。デフォルトでは、iOSアプリで選択的同期が有効になっています。つまり、個々のファイルは、選択した場合にのみ同期されます。選択的同期を無効にすると、すべてのファイルがすぐに同期されます。

選択的同期を構成する方法

Web UIで、ResilioSyncは選択的同期を通知します はLinuxユーザー向けのプロ機能ですが、実際にはコマンドラインから選択的同期を構成できます。すべての同期フォルダには、非表示の.syncがあります ResilioSyncによって作成されたフォルダー。この隠しフォルダには、IgnoreListという名前のファイルがあります 、これはUTF-8でエンコードされた.txtファイルであり、同期ジョブ中に無視する単一のファイル、パス、およびルールを指定するのに役立ちます。 「?」に対応および「*」ワイルドカード記号。

たとえば、読み取りモードと書き込みモードでコンピューターAとコンピューターBの間でフォルダーを同期する必要があります。コンピューターBには、コンピューターAと同期したくないファイルが含まれています。そのファイルを無視するために行った手順は次のとおりです。

  1. コンピューターAのResilioSyncWebUIにフォルダーを追加します。
  2. これで、コンピューターAには.syncがあります。 隠しフォルダ。
  3. そのファイルの名前をIgnoreListに追加します コンピュータAであるため、コンピュータBからそのファイルを受信することを拒否します。
  4. 読み取りおよび書き込みモードでコンピューターBとフォルダーを共有します。
  5. 同期が完了したら、そのファイルの名前をコンピューターBのIgnoreListに追加できます。 そのため、新しいコンピューターが同期に参加した場合、コンピューターBはそのファイルを他のコンピューターと共有しません。

結論

このチュートリアルが、Ubuntu20.04およびUbuntu18.04にResilioSyncをインストールするのに役立つことを願っています。いつものように、この投稿が役に立った場合は、無料のニュースレターを購読して、その他のヒントやコツを入手してください。気をつけて🙂


Ubuntu
  1. Ubuntuサーバーにデスクトップ(GUI)をインストールする方法

  2. SSHサーバーUbuntu22.04をインストールします

  3. Ubuntu 13.04 /Ubuntu12.10にVNCサーバーをインストールします

  1. Ubuntu 18.04にXrdpサーバー(リモートデスクトップ)をインストールする方法

  2. Ubuntu 20.04にXrdpサーバー(リモートデスクトップ)をインストールする方法

  3. Ubuntu14.04デスクトップにownCloudクライアントをインストールする方法

  1. UbuntuサーバーからUbuntuデスクトップをインストールする方法

  2. Ubuntuサーバー/デスクトップにCouchPotatoをインストールする方法

  3. Ubuntu18.04デスクトップまたはサーバーにqBittorrentをインストールする方法