起動時にLUKS暗号化ボリュームの自動マウント

起動時にLUKS暗号化ボリュームの自動マウント

RHEL 7.9 を実行すると、ルートパーティションは LUKS で暗号化されるため、システムの起動中にコンソールに起動を続行するには、パスワードの入力を求められます。

システムが起動したら、LUKSで暗号化された/etc/fstabブロックデバイスをインストールします/dev/sdc1 /data

GNOME DISKSユーティリティを使用してロックを解除してインストールできますが、これはシステムが再起動されるたびに覚えておくべき2番目のプロセスであり、手動プロセスになります...コンソールにログインしてそのgnome-disksユーティリティを実行する必要があります。私の/dataフォルダをマウントしました...それはテラバイトのファイルで、私のOSディスクのルートパーティションはわずか600 GBでした。だからすぐに発生した問題は、マウントしない/dataとルートパーティションがいっぱいになるということでした。

RHEL 7.9の方法自動暗号化されたLUKSのロック解除とインストールディスク起動時に発生しますか? /etc/fstabしたがって?で指定された他の[暗号化されていない]ディスクのようにマウントされます。

答え1

これは、(暗号化された)ルートパーティションに暗号化キーを保存したい場合に可能です。キーを含むファイルを作成します/etc/crypttab.keyfile。それから私は次のようなものを使いました。

# blkid /dev/sdc1
/dev/sda1: UUID="1249cb86-92a3-4e3b-8299-828a119fb3d1" TYPE="crypto_LUKS" 
PARTLABEL="primary" PARTUUID="75cf0a0e-0f4d-43c8-b8f5-fa26ab197ddc"
# echo "luks-1249cb86-92a3-4e3b-8299-828a119fb3d1 UUID=1249cb86-92a3-4e3b-8299- 
828a119fb3d1 /etc/crypttab.keyfile luks,discard" >> /etc/crypttab
# cryptsetup -v luksOpen /dev/sdc1 luks-1249cb86-92a3-4e3b-8299-828a119fb3d1 \
--key-file=/etc/crypttab.keyfile

デバイスは起動時に自動的に復号化され、fstabを介してマウントできます。

常に暗号鍵のコピーを他のメディアに安全に保存してください。それを失うとディスクがなくなります。

答え2

これが私が働いた方法です。

dd   if=/dev/urandom  of=/root/crypttab.key  bs=1024   count=4
chmod  400  /root/crypttab.key
cryptsetup    luksAddkey   UUID=###   /root/crypttab.key
cryptsetup   -v luksOpen   UUID=###   /root/crypttab.key
# edit /etc/cryptab manually, each line having:
    <volume-name>   <encrypted-device>   <key-file>   <options>
  • UUID=### は、gnome disk または lsblk に示されているように luks ロックされたパーティションに属します。
  • 使用し/dev/sda1ない名前で通常、luks ボリュームは sdb または sdc になることができ、ディスクが入ったり、UUID を使用してシステムを移動したりすると失敗する可能性があります。
  • 私は<volume name>それが何でもできると信じています
  • /etc/fstabuuid、label、scsi-idなど、列1に許可されているすべてのマウント規則をここで使用できると思います。下記をご覧ください。/dev/disk/
  • 手動編集用/etc/crypttab
    • 空のファイルになり、crypttab [またはluks]に関連する操作はまだ行われていません。
    • ファイル名を変更したり、別のファイルに移動したりすることはできません。
    • root.root権限が必要です。-rw-------
    • 特定のluksロックされたデバイスのロックを解除するために使用される各行には、4つの列があります。
    • たとえば、次のようになります。
      • scratch UUID=abc123 /root/crypttab.key luks
      • 4列目はluks
  • cryptsetup -v LUKSボリュームに使用されていた元のパスワードとは無関係のキーファイルをLUKSに追加します。
  • 既存のパスワードを求めるメッセージが表示されるので、cryptsetup -vキーはパスワードに基づいているとします。
  • もともとパスワードが損なわれれば安全かどうかはわかりませんが、/root/crypttab.keyそうかもしれないと思います。
  • 破損または紛失した場合は、/root/crypttab.key/etc/crypttabからそのエントリを削除してパスワードを使用するように戻すか、新しいキーでcryptsetupを再実行してください。
  • ファイル/root/crypttab.keyを削除し、LUKS暗号化に使用されている元の(または現在の)パスワードを知っている限り、ロックを解除してデータをインポートできます。
  • 設定が完了したら、gnomeディスクユーティリティのロック解除ボタンをクリックするだけで、パスワードの入力を求められずにボリュームのロックを解除できます。
  • /etc/fstab[暗号化]デバイスをマウントするためのエントリポイントは、実際にLUKSに関連することはありません。/etc/fstab
  • ファイル/root/crypttab.key 名は何でも指定でき、どこにでも配置できます。
  • 使用されるUUIDは、ロックが解除される前にロックされたLUKSパーティションのUUIDです。
  • 現在のエントリがある場合、/etc/crypttabGNOMEディスクユーティリティはそのエントリを認識し、gnomeディスクを使用して既存のパスワードを変更できます。これは、既存のキーファイルも更新または尊重することを示すのに十分です。

関連情報