SSH + rootアクセス権を持つコンピュータに暗号化されたパーティションのマスターキーがあります。このパーティションに関連付けられているパスワードにアクセスできません。マスターキーがこのパーティションに有効であることを確認する方法はありますか?
マシンのルートパーティションなので、パーティションをマウント解除できず、luksOpenなどを使用できないようです。
答え1
@HaukeLagingが言ったようにdmsetup table --showkeys
、まだ開いているLUKSコンテナのマスターキーを表示することが可能かもしれません(LUKS2コンテナでは機能しない可能性があります。、また見ることができます6.10 マップされた LUKS1 コンテナからマスターキーを復元するには?)。
デバイスの最初の128Mをコピーして自宅で実験できます。
ssh root@server head -c 128M /dev/sdxy > sdxy.img
可能な実験:
hexedit master.key # hexedit or xxd -r -p to produce binary file
hexdump -C master.key # to verify correctness
cryptsetup luksAddKey --master-key-file master.key sdxy.img
cryptsetup luksOpen sdxy.img luksxy
file -sL /dev/mapper/luksxy
既知のファイルシステムまたはLVMヘッダーの代わりにランダムなデータを取得する場合は、無効なキーまたはLUKSヘッダーに他の問題がある可能性があります。
同じ実験をサーバー上で直接実行することもできますが、他のデバイスが登場したり、UUIDが重複するなどの副作用がある可能性があるため、別々のマシンや仮想マシン内で行うのが最善です。
LUKS ヘッダーが破損して luksAddKey が機能しない場合は、luksFormat を新規作成することもできます。ただし、この場合はマスターキーに加えて正しいパスワードとデータオフセットも指定する必要があります。
ただし、このLUKSコンテナに問題がある場合は、マシンの実行中にすべてのファイルをバックアップする必要があります。マスターキーをどこにでも保存することもLUKSセキュリティの概念をバイパスするので、新しいマスターキーを使用して最初から新しいLUKSコンテナを作成することをお勧めします。