ArqとB2で独自のクラウドバックアップを作成

ArqとB2で独自のクラウドバックアップを作成

AppleがmacOS向けにiCloudバックアップを未だ提供していないのは驚きだ。Time Machineは別途外付けドライブやパーティションを必要とするため、時代遅れ感がある。さらに、AppleがTime Capsuleを廃止したのも追い打ちをかけている(2018年4月27日の記事「RIP: Apple AirPort, 1999–2018」参照)。AppleはiCloudへの注力と最大2テラバイトのストレージ容量の提供を謳っているにもかかわらず、Mac向けには「設定してあとは放っておく」タイプのバックアップオプションを提供していない。AppleはiCloudバックアップを提供するための他の要素をすべて備えているにもかかわらず、これは奇妙な欠落と言える。

このギャップは、Backblaze(TidBITS スポンサー)のような有料クラウドサービスで容易に埋められますが、Haystack Software の macOS 用バックアップアプリ Arq と、Backblaze のオンデマンド、使用量ベースのクラウドストレージサービス B2 を組み合わせることで、手頃な価格で独自のクラウドサービスを構築することも可能です。私は 2017 年 3 月の Macworld で Arq をレビューし、概ね良好だと感じましたが、復元プロセスにはさらなる改良が必要です。Arq は 1 年前に B2 のサポートを開始しました。

Backblaze B2は、AmazonのSimple Storage Service(S3)とGoogle Cloud Storageという、この分野で2大大手企業と競合しています。クラウドストレージ企業はいずれも定期的に価格を値下げしており、B2も最近値下げしたことで、個人用バックアップとして妥当な選択肢となりました。

この記事では、クラウドバックアップを独自に構築し、その過程で何も犠牲にすることなく実現する方法のロードマップを示します。今後、さらに多くの選択肢が登場することを期待してください。

独自のソリューションを構築する理由

クラウドベースのバックアップは、分散型オンラインストレージの「クラウド」という言葉が登場する以前から存在していました。Mozyは2005年にその先駆けとなり、Code42のCrashPlanは2007年に続きました。(Code42は個人向けバックアップ事業からの撤退を進めています。「CrashPlan、個人向けバックアップ事業を終了」、2017年8月22日の記事をご覧ください。)初期のメリットは、サーバーの管理や一定量のストレージ料金の支払い、そしてデータを定期的に自動転送できる信頼性の高いソフトウェアを探す手間がなかったことです。

オンデマンドで使用量ベースのクラウドストレージの台頭と、Amazon S3の登場以来の急激な価格低下により、独自のクラウドバックアップソリューションを導入するメリットを検討できるようになりました。これにより、バックアッププロセス全体を管理し、アーカイブストレージの使用量と、ファイルの復元が必要なときにデータをダウンロードする料金のみを支払うことができます。さらに、クライアント側暗号化によってアーカイブデータのセキュリティを管理することも可能です。クライアント側暗号化は、近年ますます懸念が高まっている分野です。

Arqを使えばこれらすべてが可能になります。設定方法については、以下のハウツーセクションで説明します。まず、データをどこに保存すればよいでしょうか?

お金に見合った最高のストレージオプション

現在、B2の料金はAmazon S3の同等のストレージよりも安価です。最近の値下げにより、B2のストレージ料金は1GBあたり月額0.005ドルとなり、ダウンロードのみ1GBあたり0.01ドルの転送料金となります。ダウンロードはほぼすべて、バックアップからファイルを復元する際に発生します(データのアップロードは無料です)。AmazonとGoogleにはサービスレベルがあります。標準の「高速アクセス」レベルは、ストレージとデータ取得の料金がB2よりもはるかに高く、ディープストレージオプションはB2と競合することが多いものの、ストレージや復元時のデータ取得の料金が高くなる場合があります。(これらのレベルについては、2016年12月22日の記事「クラウドバックアップのためのChronoSync 4.7の調査」で詳しく説明しました。)

B2サポートはmacOSソフトウェアで最近になってようやく普及し始めたため、多くのユーザーにとって価格と選択肢がようやく一致するようになりました。アーカイブの合計サイズを1TBに制限できる場合、ストレージ料金は月額5ドル(年間60ドル)です。5TBの場合は月額25ドル(年間300ドル)です。1台のマシンであれば、ほとんどの無制限ホスト型バックアップサービスは同程度かそれ以下ですが、複数のコンピュータの場合は、独自にバックアップを構築した方が、すべてのバックアップで保存されたデータの合計に対してのみ料金が発生するため、コストが低くなるか、ほぼ同じになる可能性があります。データの復元には100GBあたり1ドルかかるため、通常の復元ではそれほどコストはかかりません。

ブロードバンド接続に比べて復元するデータが多い場合、Backblaze は B2 スナップショット返品返金プログラムをテストしています。このプログラムでは、標準のダウンロード料金を請求し、返金可能な料金 (128 GB までの場合は 99 ドル、4 TB までの場合は 189 ドル) と返送料を支払ってドライブを発送します。

すでに料金を支払っていて、未使用の容量がある同期サービスまたはストレージ サービスを使用することで、コストを節約することもできます。

  • Dropbox:Dropboxの最低価格の有料サービスには1TBのクラウドストレージが含まれており、ArqはDropboxのAPIに直接アクセスできます。Dropboxの選択型同期またはスマート同期を使用すれば、これらのバックアップがデスクトップパソコンに不必要に同期されるのを防ぐことができます。
  • Amazon Drive: Amazon Drive で 1 TB 以上を支払っている場合、数百ギガバイトの容量が利用可能であり、Arq はそこにファイルを直接保存できます。
  • サーバー: データ センターに余分なストレージとデータ転送容量を備えた実際のサーバーまたは仮想サーバーがある場合は、Arq を使用すると SFTP 経由で転送できます。

これらの価格を念頭に置いて、これを実現する方法を見てみましょう。

B2アカウントを設定する

まず、Backblaze B2 のアカウントを作成し、必要な資格情報を取得します。

  1. B2 サインアップページにアクセスしてアカウントを登録してください。(プロンプトが表示されたら、2 要素認証を有効にすることを強くお勧めします。)
  2. Backblaze には 10 GB のストレージが無料で含まれていますが、それ以上の容量をすぐに保存したい場合は、請求セクションに入力してください。
  3. 左側の「バケット」をクリックし、「アカウント ID とアプリケーション キーを表示」をクリックします。これらは、アーカイブ アプリ (この場合は Arq) に接続する必要があります。B2 クラウド ストレージ バケット ページとバケットが表示された B2 アカウント ナビゲーション インターフェースのスクリーンショット
  4. 「アカウント ID とアプリケーション キー」画面で、「アプリケーション キーの作成」をクリックします。
    B2のアカウントIDとアプリケーションキー画面のスクリーンショット
  5. アカウントIDとアプリケーションキーの両方をコピーし、安全に保管してください。アカウントIDは推測できるかもしれませんが、アプリケーションキーがなければ保存されているデータにアクセスすることはできません。(後述する暗号化もデータの保護に役立ちます。)
  6. この時点で、「バケット」を作成することも、Arq で作成することもできます。

バケットとは何でしょうか?クラウドストレージシステム内のフォルダのようなものだと考えてください。Macのドライブ上のフォルダとは異なり、バケット名はクラウドシステム全体で一意である必要があります。バックアップソフトウェアがランダムに生成することも、キーボードを叩いて作成することもできます。

B2 アカウントを入手したら、Arq を設定しましょう。

Arqバックアップを構成する

Arqのライセンス料は50ドル(永続アップデートを含む)で、30日間のトライアル期間が用意されているので、契約前に試してみることができます。Arqは、Arqが動作するコンピューターに接続された内蔵ドライブや外付けドライブ、あるいはマウントされたネットワークボリュームから、フォルダーやボリューム全体をバックアップできるため、バックアップ対象のコンピューターごとにArqライセンスを購入する必要はありません。インターフェースは簡素化されており、画面ベースのターミナルアプリと大差ないように見えますが、その範囲内では非常に強力です。

バックアップを設定するには、Arq を起動した後、次の手順に従います。

  1. Arq > 環境設定を選択します。
  2. 左下隅のプラス (+) 記号をクリックします。
  3. Backblaze B2を選択し、「続行」をクリックします。(「どの目的地が最適ですか?」というヘルプが表示され、価格比較がわかりやすく表示されます。)Arq の環境設定ダイアログのスクリーンショット。
  4. 以前に設定した B2 アカウント ID とアプリケーション キーを入力し、[続行] をクリックします。
  5. この時点でバケットに名前を付けるか(上記の制限事項の詳細を参照)、既に作成済みのバケットを使用するかを選択できます。「続行」をクリックします。

すべてのバックアップ先で、暗号化(下記手順3参照)、スケジュール、予算、スクリプトのパラメータは同じです。暗号化パラメータを除くすべてのパラメータは、「環境設定」でバックアップ先を選択し、「編集」をクリックし、「スケジュール」、「予算」、「バックアップ前後」タブでオプションを設定することで変更できます。

B2 バックアップ先のスケジュールと予算のタブ。
バックアップ(左)はデフォルトで1時間ごとに実行されますが、保存先ごとに設定を細かく調整できます。予算(右)では、アーカイブをトリミングする最大サイズ(B2など)またはコスト(Amazon S3など)を設定できます。

コスト管理において最も興味深いのは「予算」タブです。バックアップの最大合計サイズを設定すると、そのサイズがファイルの完全なセットよりも大きい場合、Arqは自動的に古いアーカイブファイルを削減し、そのサイズに収まるようにします(予算に関わらず、常にすべてのファイルの完全なセットが維持されます)。Amazon S3などのサービスでは、月額の上限額を設定できます。ArqはAmazonの料金に基づいて計算します。また、Arqは「参照されていない」、つまりローカルで削除されたアイテムを30日ごと、または設定したレートで削除することもできます。

次に、Arq のメイン ウィンドウを使用して、バックアップするフォルダーを追加します。

  1. [バックアップの構成] で [B2 へ] を選択し、[バックアップにフォルダーを追加] をクリックします。
  2. フォルダを選択します。起動ボリュームの場合は、システムファイルやログのバックアップを避けるため、ホームフォルダやアプリケーションフォルダなどのフォルダを個別に選択することをお勧めします。システムファイルがない外付けドライブの場合は、ボリューム全体を「フォルダ」として選択できます。
  3. Arqのプロンプトが表示されたら、暗号化用のパスフレーズを設定してください。これについては後ほど詳しく説明します。1PasswordやLastPassなどのパスワードマネージャーを使用して、15~20文字程度の比較的長いパスフレーズを生成・保存してください。パスフレーズを紛失した場合、復元できないため、手動で作成しないでください。Arqは必要な暗号化の詳細を含むローカルファイルを作成します。Arq’s password-entry dialog box

    パスワードを書き留めるよう警告が表示されますが、現代ではこれは賢明なアドバイスとは言えません。安全なパスワードマネージャーを使用してください。ダイアログには「書き留めました」というボタンが1つだけありますが、この段階では既にパスワードを設定しており、バックアップして変更することはできないため、役に立ちません。

    An unhelpful dialog telling you to write down your password.
    付箋なんてやめろ!
  4. 「To B2」の下のフォルダーをクリックし、「バックアップ選択の編集」をクリックして、Arq が変更を監視するフォルダーとファイルを変更します。

先ほど述べたように、ファイルの復元はバックアップの設定ほど簡単ではありません。

  1. [ファイルの復元] セクションで、[B2 から] をクリックし、コンピューターを選択します。
  2. その下のバックアップされたフォルダーのリストで、これらの項目のいずれかをクリックして展開します。
  3. 展開の下で、Arq がアーカイブされた各操作のスナップショットをリストするので、スナップショットを選択します。
    Screenshot of Arq’s interface for restoring files.
    Arq でファイルを復元するには、バックアップ セット、そして個々のファイルまで徹底的にドリルダウンする必要があります。
  4. 右側の利用可能なファイルのリスト(各ファイルの最終変更日を含む)で、1 つの項目を選択し、「復元」をクリックするか、Finder 内の場所にドラッグします。

残念ながら、一度に復元できるのは1つのファイルまたはフォルダのみです。複数のファイルを一度に選択することはできません。復元先に競合する項目がある場合は、「上書きしない」、「キャンセル」、「上書きする」のいずれかの選択肢が表示されます。ただし、「上書きしない」を選択した場合は、ファイルの一部が上書きされるわけではありません。復元されたファイルセット全体がネストされたローカルディレクトリが作成されます。

Arq offers options for overwriting files on restore.
Arq の上書き警告は説明よりも複雑です。

Arqでの暗号化の取り扱い

Arqは標準ライブラリを活用した独自の暗号化システムを採用しています。Arqの開発元であるHaystack Softwareは、ウェブサイト(テキストファイル形式)でArqの暗号化システムに関する詳細なドキュメントを公開しており、Gitファイルバージョン管理システムで使用されているものと同様の暗号化アプローチを採用していると述べています。

Arqはパスフレーズを複数の暗号化キーに変換し、パスフレーズで直接暗号化されたローカルファイルに保存します。Arqの使用中は、暗号化キーはArq自身でのみ利用可能です。これは、クライアント側で暗号化と復号化を行うすべてのバックアップソフトウェアに当てはまります。

暗号化キーはいかなる形式でもサーバーに送信されることはありません。これは、アーカイブされたファイルに対する最高レベルの制御が必要な場合や、個人、犯罪者、政府関係者などの望ましくない第三者がファイルにアクセスする可能性を最小限に抑える場合に最適な動作です。

Backblazeのコンシューマー向けバックアップソリューションは、データの復元が必要になるまで暗号化キーを非公開に保ちます。復元が必要になると、暗号化キーはBackblazeのサーバーに転送され、アーカイブが復号化され、復元されたファイルのダウンロード可能なZipアーカイブが作成されます。暗号化キーは永久に保存されるわけではありませんが、特権アクセスを取得した人物にとって弱点となり、SpiderOakやCrashPlanには存在しません。

Google や Amazon のクラウドベースのサーバー システムでも暗号化は可能ですが、ユーザーが指定したキーを使用してサーバー側で暗号化および復号化が行われるため、プロセスが安全であるように設計されていても、キーはユーザーが制御できない状態になります。

Arqの暗号化に関する唯一の問題は、パスフレーズ入力方式が他のツールと統合されていないことです。そのため、1PasswordやLastPassなどのパスワードマネージャーなど、安全な方法でコピーを保存する必要があります。Haystack Softwareは、他のツールとの統合を検討すべきです。

他のバックアップまたは同期アプリではダメなのでしょうか?

B2 やその他のクラウド サービス、SFTP、その他の接続方法をサポートする他の 2 つの一般的なファイル転送アプリについて説明しないのはなぜかと疑問に思うかもしれません。

  • Econ TechnologiesのChronoSync(永久ライセンス50ドル、15日間の試用版)は、クローン、ミラーリング、同期、アーカイブ機能を備えた優れたアプリで、常に進化を続けています。残念ながら、クライアントサイドの暗号化オプションは提供されていません。ChronoSyncはGoogleとAmazonのサーバーサイド暗号化に対応しています(上記参照)。Econ Technologiesがクライアントサイドの暗号化機能を追加すれば、Arqの強力な競合製品となるでしょう。
  • PanicのTransmit 5もB2や同期などのクラウドストレージシステムをサポートしていますが、バックアップソリューションに必要なスケジュール設定、復元、アーカイブ機能は備えていません。クライアント側およびサーバー側の暗号化も提供していません。

独自のクラウドバックアップの未来

AppleがiCloudベースのバックアップサービスを提供してくれることを今でも願っています。他社を潰すためではなく、簡単かつ手頃な価格で利用できる最低限のアーカイブ機能を提供してくれることを願っています。そうすれば、一般ユーザーにクラウドバックアップソリューションの存在を認識させ、より多様な機能を備えた独立系バックアップサービスの市場拡大につながるでしょう。

ArqとB2は完璧な組み合わせではありませんが、制御性、アーカイブ機能、そして価格のバランスを考えると、これまで見てきた中で最良の選択肢です。CrashPlanの市場撤退、暗号化を自分で制御することへの関心の高まり、そしてクラウドベースのストレージ価格の低下を考えると、今後さらにArqとB2の優位性が高まっていくと予想されます。

Idfte
Contributing writer at Idfte. Passionate about sharing knowledge and keeping readers informed.