私はブートパーティション(暗号化パーティション)に格納されているキーファイルを使用してDebianのルートディレクトリの復号化を試みます。これはセキュリティを侵害しますが、今は大丈夫です。私はこれをうまくやらなかったら死ななければなりませんでした。
フックが作成され、initramfs
キーファイルはファイル/boot
内のディレクトリにありますinitrd.img-*
。キーファイルのパス()はこのファイル/boot/keyfile
にあります。/etc/crypttab
更新しましたが、次のメッセージが表示されますinitramfs
。sudo update-initramfs -u
cryptsetup: WARNING: target sdaX_crypt uses a key file, skipped.
このメッセージを無視して再起動すると、ディスクを起動できなくなります。このメッセージが表示され、シェルGave up waiting for root device.
に削除されます。initramfs
initramfs
環境には存在しませんcryptsetup
。(存在すべきでしょうか?)
デバイスが異なる方法でマウントされ、キーファイルの復号化を使用するように設定されていないupdate-initramfs -u
「考え方」を参照してください。sdaX_crypt
どうすればいいですか?
ベストアンサー1
Debianのcryptsetupドキュメントによると、KEYFILE_PATTERNで定義されているシェルスタイル(ワイルドカード)パターンと一致するキーファイルは/etc/cryptsetup-initramfs/conf-hook
initramfsに含まれていますが、他のキーファイルは含まれていません。
- Debian 9 の場合:
/usr/share/doc/cryptsetup/README.{initramfs,Debian}.gz
- Debian 10 の場合
/usr/share/doc/cryptsetup{-initramfs/README.initramfs,-run/README.Debian}.gz
:.
以前のバージョンのDebianについてはよくわかりません。
これらのファイルはで読むことができますが、zless filename.gz
便宜と将来の参照のために関連する部分は次のとおりです。
12. initrd に直接キーファイルを保存します。
通常、キーファイルを使用するデバイスは無視され(大きなビープ音とともに)、initramfsイメージは通常暗号化されていない/ bootパーティションにあるため、キーファイル自体はinitrdに含まれません。ただし、場合によっては、initrdにキーファイルを含める必要があります。たとえば、最新バージョンのGRUBは暗号化されたブロックデバイスからの起動をサポートし、暗号化された/bootパーティションを許可します。
crypttab(5)によってリストされたキーファイルのうち、環境変数KEYFILE_PATTERN(シェルモードとして解釈されます)の値と一致するファイルは、initramfsイメージに含まれています。たとえば、/etc/crypttab に 2 つのキーファイル /etc/keys/{root,swap}.key がリストされている場合は、/etc/cryptsetup-initramfs/conf-hook に以下を追加して initrd に追加できます。 。
KEYFILE_PATTERN="/etc/keys/*.key"
また、initramfs イメージに秘密鍵データを含める必要がある場合は、権限のないユーザーをブロックするには、制限付き umask を使用してイメージを作成する必要があります。これは、/etc/initramfs-tools/initramfs.conf に以下を追加することで実現できます。
ウマスク=0077