私のドライブがcryptsetupで暗号化されていないのはなぜですか?

私のドライブがcryptsetupで暗号化されていないのはなぜですか?

私はフォローしましたこのガイドLVMの単一ファイルシステムを介してセカンダリドライブを完全に暗号化したいと思います。

これが私が順番にしたことです:

fdisk /dev/sdb # goes to interactive promt (choose defaults)
pvcreate /dev/sdb1
vgcreate vg_crypt /dev/sdb1
lvcreate -l 100%FREE -n storage vg_crypt
cryptsetup luksFormat -c aes-xts-plaint64 -s 512 /dev/mapper/vg_crypt-storage # set passphrase
cryptsetup open /dev/mapper/vg_crypt-storage storage # use passphrase
mkfs.ext4 /dev/mapper/storage
mkdir /storage
mount /dev/mapper/storage /storage
echo "cryptdevice=/dev/vg_crypt/storage:storage root=/storage" >> /etc/default/grub
echo "storage /dev/mapper/vg_crypt-storage /dev/urandom storage,cipher=aes-xts-plain64,size=256" >> /etc/crypttab
echo "/dev/mapper/vg_crypt-storage storage ext4 defaults 0 0" >> /etc/fstab
echo "this is a test" >> /storage/test
reboot

/dev/sdb1再起動後、復号化に使用するパスワード入力要求をバイパスできることがわかりましたCtrl ^c。私はこれが私がファイルシステムにアクセスするのを妨げると予想しました/dev/sdb。驚くべきことに、このファイルは完全に読み取ることができ、ファイルはプレーンテキストで表示されます。

私が間違って設定したのでしょうか?

私はこれを見つけました:

cd /storage
df .
Filesystem .....
/dev/mapper/othervg_root .... (on sda!)

したがって、このディレクトリは私のSDAのLVMにあります。しかし、/dev/mapper/storageにインストールすれば/storageそのディレクトリをに入れると思いましたsdb1。ここで何を見逃しているのかよくわかりません。

そのため、ログインに必要なパスワードが/dev/mapper/storage存在しないことにも気づきました。だから私は入り、/storage再起動しました。今回はパスワードを入力して/dev/mapper/storage それが存在することを知り、そこにい/storageましたが(ただいま削除したにもかかわらず)まだ論理ボリュームにありましたsda。混乱しています。

lsblkこれで、保存のためのマウントポイントがないことがわかりました。だから私は以前のように再び馬に乗った。これでdf /storageファイルシステムが表示されます/dev/mapper/storage。今回は再起動してパスワードを入力しました。/storage再び間違ったファイルシステムから。何らかの理由で起動時にインストールが正しくありません。 etcファイルの内容でなければなりません。

/etc/*tab ファイルのマニュアルページを読み、いくつかの点を変更しました。

ファイルシステムテーブル:

/dev/mapper/vg_crypt-storage /storage ext4 defaults 0 0 # add the '/' in /storage

パスワードテーブル:

storage /dev/mapper/vg_crypt-storage none cipher=aes-xts-plain64,size=512
# changed size to match key in cryptsetup
# changed key to none (/dev/urandom is something particular to swap i guess)
# removed uneccesary 'storage' in key=val list. I saw 'root' in the guide and thought i needed the name of my crypto device

私はそれが何をしているのかわからなかったので、Grubからその行を削除しました。sdb1コマンドを使用してすべてのLVMエントリを削除し、{lv,vg,pv}removeパーティションを削除しましたsdb1。ファイルからこの行を一時的にコメントアウトして再/etc/*tab起動しました。

最後に、パーティション、LVMスキーム、ext4ファイルシステムを再設計し、/etc/*tabファイルから2行のコメントを削除しました。

再起動すると起動の問題が発生し、パニックモードになります。

journalctl -xb私にいくつかの珍しいセリフを見せた:

.... kernel: EXT4-fs (dm-3): VFS: Can't find ext4 filesystem
.... systemd[1]: Failed to mount /storage

ローカルファイルシステムの依存関係、ファイルシステムラベルの再指定、ローカルSELinuxポリシーの変更の移行に関連する他のエラーもあります。しかし、これが完全に関連しているかどうかはわかりません。

ベストアンサー1

考え出したうふ!

問題は/etc/fstab

私の通常のsdaパーティションは次のようにマウントされます。

/dev/mapper/vg_sda-root /     ext4 defaults 0 0
/dev/mapper/vg_sda-swap swap  ext4 defaults 0 0
/dev/mapper/vg_sda-home /home ext4 defaults 0 0

だから当然私はその計画に従い、私を追加しました:

/dev/mapper/vg_crypt-storage storage ext4 defaults 0 0

この行の問題は最初のフィールドです。FS_仕様で説明されているようにfstab(5) のマニュアルページ。 「このフィールドは、マウントするブロック特殊デバイスまたはリモートファイルシステムを説明します。」

crypttabはfstabの前に処理されるため、復号化されたデバイスは/dev/mapper/storage元のLVMマッピングデバイス名ではなくデバイス名でアクセスできます/dev/mapper/vg_crypt-storage

だから私の行を/etc/fstab次のように変更します。

/dev/mapper/storage storage ext4 defaults 0 0

/etc/fstab次に、正しい復号化デバイスを/storage

再起動し、パスワードフレーズをキャンセル(3回)してパニックモードに入るようCtrl ^Cにテストしました。ここでは暗号化デバイスが存在しないため、手動で復号化してインストールする必要があります。

私が明確に/正確に説明したと思いますが、もし欠けている部分があれば訂正してください!

おすすめ記事