Linux サーバー上に暗号化された外部ディスクがあります。
サーバー上では、ローカルでこれを実行して復号化できます
cryptsetup -d keyfile luksOpen /dev/sdx1 /mnt/decrypted
が、サーバー側でこれを実行するのは避けたいと考えています。
サーバーに(ssh/sshfs 経由で)アクセスし、クライアント マシン上でのみリモートでデータを復号化したいと考えています。
リモートでデータにアクセスして復号化するには、
- 暗号化されたファイルを
/dev/sdx1
サーバーにローカルにマウントする(復号化せずに)/mnt/encrypted
/mnt/encrypted
クライアントマシンにsshfs経由でマウントする(その後、luksOpen
復号化に使用する)
データを復号化せずにステップ 1 を実行するにはどうすればよいですか?
ありがとう、クリス
追伸: パーティション全体ではなく、暗号化されたコンテナ (サーバーのファイルシステム上のファイル) を使用するだけでよいのでしょうか? こうすれば、暗号化されたコンテナ/ファイルを含むフォルダを sshfs 経由でリモートでマウントできますか? (そしてクライアントマシンでのみ復号化します)
答え1
現在の設定ではこれを実現することは不可能です。
それを「適切に」行う唯一の方法は、luksボリュームをネットワークブロックデバイス。
drbd
または を使用してiscsi
サーバー上のブロック デバイスにアクセスし、その上に Luks を設定できます。
答え2
sshfs
暗号化されたデータを保持するために luks コンテナ (luks パーティションではない) を使用すると、luks をリモートで ( 経由で) マウントして復号化できます。
luks コンテナ (暗号化されたファイルシステムを内部に保持するファイル) を作成する必要がありました。このファイルはマウントされたパーティション上の通常のファイルなので、リモートでマウントしてsshfs
後で復号化できます (ループ デバイス -> マッパー デバイス -> マウント経由)。
これをテストしたところ、動作することが確認できました。