8.3. 別のファイルに LUKS ヘッダーを保存し、暗号化していないデバイスのデータの暗号化

以下の手順では、LUKS ヘッダーを保存する空き領域を作成せずにファイルシステムを暗号化する方法を説明します。ヘッダーは、追加のセキュリティー層としても使用できる、独立した場所に保存されます。

この手順では、LUKS2 暗号化形式を使用します。

重要

レガシーの LUKS1 形式を使用してデバイスを暗号化するには、cryptsetup-reencrypt ユーティリティーを使用します。詳細は、man ページの cryptsetup-reencrypt(8) を参照してください。

手順

ハードウェア、カーネル、または人的ミスにより、暗号化プロセス時にデータが失われる場合があります。データの暗号化を開始する前に、信頼性の高いバックアップを作成してください。

  1. 暗号化するデバイスのデータのバックアップを作成します。
  2. 以下のように、そのデバイスのファイルシステムをすべてアンマウントします。

    # umount /dev/sdb1
  3. --header パラメーターで、別の LUKS ヘッダーを使用してファイルにパスを提供する際に、暗号化を初期化します。次のコマンドを実行するとパスフレーズの入力が求められ、暗号化プロセスが開始します。

    # cryptsetup reencrypt --encrypt --init-only --header /path/to/header /dev/sdb1

    暗号化したデバイス (この場合は /dev/sdb1) を、後でロックを解除できるように、取り外した LUKS ヘッダーもアクセスできるようにする必要があります。

  4. デバイスを開きます。

    # cryptsetup open /dev/sdb1 --header /path/to/header sdb1_encrypted
  5. デバイスをマウントします。

    # mount /dev/mapper/sdb1_encrypted /mnt/sdb1_encrypted
  6. オンライン暗号化を開始します。

    # cryptsetup reencrypt --resume-only --header /path/to/header /dev/sdb1

関連情報

  • 詳細は、man ページの cryptsetup(8) を参照してください。