定期的なオフサイトバックアップは、ハードウェア障害、ランサムウェア、地域的な災害から重要なデータを保護します。しかし、ヘッドレスサーバーやスケジュールされたスクリプトを運用する開発者、システム管理者、プライバシーを重視するパワーユーザーは、ブラウザやデスクトップアプリからの手動アップロードに頼ることはできません。
Proton Drive CLI(コマンドラインインターフェース)のリリースにより、Protonのゼロ知識エンドツーエンド暗号化(E2EE)をクラウドバックアップの自動化、つまりバックアップスクリプトやスケジュールされたシェルワークフローに取り入れられます。
CLIを効果的に活用するには、その役割を理解する必要があります。このガイドでは、CLI駆動のバックアップアーキテクチャが常時のバックグラウンド同期よりも優れている理由、競合戦略がファイルのリビジョンをどのように処理するか、Linux、macOS、Windowsで完全に暗号化されたオフサイトバックアップをスケジュールする方法を説明します。
- オフサイトバックアップとは何か、なぜ重要なのか
- オフサイトバックアップを暗号化する理由
- Proton Drive CLIにおけるアトミックスクリプトとバックグラウンド同期の比較
- 競合戦略が増分バックアップを管理する方法
- 自動化された暗号化バックアップのセットアップ:ステップバイステップガイド
- ベストプラクティス
- 暗号化と自動化を実現したオフサイトバックアップ
オフサイトバックアップとは何か、なぜ重要なのか
バックアップがデータと同じマシン上にあるなら、それは本当のバックアップとは言えません。ハードウェアは故障します。ランサムウェアは、接続されたドライブを含め、到達できるものすべてを暗号化します。火災、洪水、盗難は、プライマリーディスクとそのすぐ隣にあるバックアップドライブを区別しません。
3-2-1バックアップルールはこのために存在します。データのコピーを少なくとも3つ、少なくとも2種類の異なるメディアに保存し、そのうち少なくとも1つをオフサイトに保管します。
そのオフサイトコピーは、他のバックアップや主要なデータから地理的に離れているべきもので、最後の防衛線です。そのため、ローカル障害が及ばない場所に置く必要があります。クラウドに置く場合は、サービスプロバイダーもそれを読み取れないようにしなければなりません。そこでProton Drive CLIの出番です。
オフサイトバックアップを暗号化する理由
バックアップをオフサイトに保存することは、第三者にデータを預けることを意味します。つまり、自分では管理できないリモートサーバーであり、所有権やポリシーが変わりうる企業が運営し、そのインフラは令状による提出を求められたり侵害されたりする可能性があります。
エンドツーエンド暗号化がこれを解決します。ファイルはデバイスから送信される前にデバイス上で暗号化されます。クラウドサーバーが侵害されても、攻撃者、プロバイダー、復号キーを持たない誰にとっても、そこに読めるものは何もありません。
Proton Driveはエンドツーエンド暗号化をデフォルトで使用し、デスクトップアプリ、モバイルアプリ、CLIを通じてアップロードされるすべてのものを保護します。暗号化されたオフサイトバックアップは、ProtonがProton Mailのために構築したものと同じゼロアクセスアーキテクチャによって、厳格なスイスのプライバシー法の下で保護されます。
Proton Drive CLIを理解する:アトミックスクリプトとバックグラウンド同期の比較
CLIはデスクトップ同期アプリとは異なる仕組みで動作します:
デスクトップアプリとモバイルアプリ(同期エンジン)はバックグラウンドで常時動作します。ファイルの変更を監視し、すべての追加、編集、削除をクラウドにコピーします。
Proton Drive CLI(アトミック実行エンジン)は、upload、download、listなどの単一のコマンドを実行して終了します。ローカルフォルダーを監視したり、バックグラウンドで動作したりすることはありません。
アトミックCLIがセキュリティとバックアップに適している理由
常時同期デーモンはデータをミラーリングするため、3-2-1の条件を満たしません。ファイルがローカルで削除されると、それが事故、スクリプトのエラー、ランサムウェアのいずれによるものでも、削除は即座にクラウドに反映されます。また、デーモンの実行中に攻撃者がシステムに侵入した場合、アクティブなセッショントークンを読み取られる可能性があります。
CLIは定期的なスケジュールバックアップを可能にすることでこれを解決します。呼び出すと実行され、停止し、ファイルが誤って削除されたりローカルで破損したりした場合に頼ることができる、安全な特定時点の復元スナップショットを残します。
注意: CLI単体では完全なバックアップソリューションではありません。何をバックアップするか、どのくらいの頻度で行うか、いくつのバージョンを保持するか、復元をどのようにテストするかは、依然として自分で決める必要があります。
競合戦略が増分バックアップを管理する方法
設計上、帯域幅を節約するため、未変更の同一ファイルはCLIによって自動的にスキップされます。ただし、ファイルがローカルで変更された場合は、競合戦略を使ってその処理方法をCLIに指示する必要があります。
バックアップにskipを使用することは避けてください。重複した作業を防ぐことはできますが、変更されたファイルを完全に無視してしまいます。代わりに、データ保持のニーズに合った戦略を選んでください:
--file-conflict-strategy create-new-revision(バックアップに推奨)は、変更されたファイルを新しいバージョンとしてアップロードし、その履歴を保持します。保持されるバージョンの数はプランによって異なり、バージョンはストレージを消費します。
--file-conflict-strategy renameは、変更されたファイル名に接尾辞を追加し、両方のコピーを保持します。
--file-conflict-strategy replaceは、以前のファイルを新しいもので上書きします。古いバージョンは失われます。
--file-conflict-strategy skipは、クラウドにすでに存在するファイルを無視するため、変更が保存されることはありません(バックアップには推奨されません)。
増分アップロードコマンドの例:
proton-drive filesystem upload ./my-local-data /my-files/Backups/Daily \
--folder-conflict-strategy merge --file-conflict-strategy create-new-revision
自動化された暗号化バックアップのセットアップ:ステップバイステップガイド
必要なもの:
- Protonアカウント(無料または有料、ストレージの上限が適用されます)
- お使いのプラットフォーム用のProton Drive CLIバイナリ(Linux、macOS、Windows)
- シェル環境(Terminal、Bash、Sh、PowerShell)
- 自動実行用のタスクスケジューラー:cron(Linux/macOS)またはタスクスケジューラー(Windows)
ステップ1:サインインして手動テストを実行する
自動化をセットアップする前に、デバイスを対話形式で認証します:
proton-drive auth login
ヘッドレス認証の仕組み:リモートVPSや自宅のLinuxノードなど、ブラウザのないサーバーでauth loginを実行すると、CLIがサインインURLを表示します。ノートパソコンやスマートフォンなど、ブラウザのある任意のデバイスでそれを開き、サインインを完了します。これでサーバーがサインイン状態になります。
ヘッドレスサーバー/cronのヒント:cron経由で実行されるヘッドレスおよび自動化システムでは、認証情報ストアとしてpassを使用することをお勧めします。次の環境変数で設定します:export PROTON_DRIVE_CREDENTIALS_STORE="pass")。標準のOSキーリング(libsecret/GNOME Keyring)はアクティブなGUIデスクトップセッションに依存しており、cronジョブにはそれがありません。passをセットアップすると、D-Busセッションの問題を回避できます。
ステップ2:バックアップスクリプトを作成する
ソースパスを定義し、キーリングを処理し、アップロードを実行するシェルスクリプト(例:backup.sh)を作成します:
#!/usr/bin/env bash
set -euo pipefail
# 変数を定義
LOCAL_DIR="/var/backups/data"
REMOTE_DIR="/my-files/AutomatedBackups"
export PROTON_DRIVE_CREDENTIALS_STORE="pass"
# 冪等なアップロードを実行
proton-drive filesystem upload "$LOCAL_DIR" "$REMOTE_DIR" \
--folder-conflict-strategy merge \
--file-conflict-strategy create-new-revision \
--json > /var/log/proton-backup-$(date +%Y%m%d-%H%M%S).json
echo "バックアップは$(date)に正常に完了しました"
ステップ3:cronまたはsystemdタイマーでバックアップをスケジュールする
cron を使用してこのバックアップを毎晩午前2:00に実行するには:
- crontab エディターを開き、次を追加します:
crontab -e
- スケジュール実行のエントリーを追加します:
0 2 * * * /usr/local/bin/backup.sh >> /var/log/proton-backup.log 2>&1
自動化されたオフサイトバックアップのベストプラクティス
動作するスクリプトはほんの始まりにすぎません。次の3つの習慣を身につければ、オフサイトバックアップを完全な状態に保ち、監視しやすくし、ストレージの上限内に収められます。
復元をテストする:動作する復元がなければ、バックアップはないのと同じです。proton-drive filesystem download を基にした復元スクリプトを常に用意し、いざインシデントが起きたときに機能するよう定期的にテストしましょう。
機械可読形式でログを記録する:スクリプトに --json を追加すると、構造化された JSON ログを出力できます。その後、jq でジョブのステータスを解析したり、バックアップが失敗したときにウェブフックをトリガーしたりできます。
フェアユースを尊重する:60秒ごとなど、高頻度のアップロードをスケジュールしないでください。オフサイトバックアップには、毎日または毎週のスケジュールで十分です。
暗号化されて自動化されたオフサイトバックアップ
バックアップの安全性は、送信先の安全性に左右されます。Proton Drive CLI を使えば、毎晩のジョブが暗号化されたオフサイトバックアップを送信し、それを読めるのはあなただけです。攻撃者はもちろん、ホスティングプロバイダーも Proton も読めません。
エンドツーエンド暗号化、スイスのプライバシー法による法的保護、そして独立した監査を受けたオープンソースコードを利用できます。また、バックアップパイプラインを完全に制御できます。何を実行するか、いつ実行するか、各バージョンをどれだけ保持するかも自由です。
セットアップは数分で完了します。Linux、macOS、Windows 用の CLI をダウンロードし、最初の手動バックアップを実行してからスケジュールを設定すれば、あとは何も気にする必要はありません。






