내가 달성하고 싶은 것:
- 부팅 시 한 번만 비밀번호를 묻는 메시지가 표시됩니다.
- 디렉토리 내부의 키 파일을 사용하기 위한 다른(루트가 아닌) 파티션
/root/
.
지금까지 내가 성취한 것:
- (ㅏ)시스템이 부팅되지만 비밀번호를 두 번 요청합니다( 에 대해 한 번
/
, 에 대해 한 번/usr
). - 또는:(비)시스템이 부팅되지 않고 비밀번호를 한 번 요청한 후
/usr
LVM 그룹/볼륨을 찾을 수 없다며 마운트를 거부합니다. 쉘로 이동했는데/root/.keyfile
사용할 수 없다는 것을 알 수 있습니다./
아직 마운트되지 않았습니다.
구성
파일:/etc/crypttab
사례 A
sdc3_crypt /dev/sdc3 none luks md0_crypt /dev/md0 none luks
사례 B
sdc3_crypt /dev/sdc3 none luks md0_crypt /dev/md0 /root/.keyfile luks
완전히 작동하지 않은 것
- 필요한 드라이브를 수동으로 luksOpen하기 위한 스크립트 파일 만들기:
/etc/initramfs-tools/scripts/local-premount
이전에 호출된 항목은/
사용할 수 있지만/etc/initramfs-tools/scripts/local-bottom
열려고 한 후에 호출된 항목/usr
은 너무 늦었습니다.
답변1
~에이 위키 페이지/lib/cryptsetup/scripts/decrypt_derived
(독일어에서는 슬프게도 영어로 이에 상응하는 항목을 찾지 못했습니다.) 열린 루트 장치에서 키를 생성하려면 스크립트를 사용하는 것이 좋습니다 . 중요한 부분은 번역하려고 노력하겠지만,아니다절차를 시도했습니다.
키를 추가하려면 (루트로) 실행해야 합니다.
mkdir /mnt/ram && mount -t ramfs -o size=1m ramfs /mnt/ram && chmod 600 /mnt/ram
/lib/cryptsetup/scripts/decrypt_derived <root_dev> > /mnt/ram/tmp.key && cryptsetup luksAddKey <usr_dev> /mnt/ram/tmp.key && rm /mnt/ram/tmp.key
umount /mnt/ram && rmdir /mnt/ram
<root_name>
에 표시된 루트 장치의 이름은 어디에 있고 /dev/mapper
(아마도 sdc3_crypt
) 켜져 있는 <usr_dev>
장치는 어디에 있습니까(아마도 )./usr
/dev/md0
crypttab 라인은 다음과 같습니다
<usr_name> UUID=<UUID> <root_name> luks,keyscript=/lib/cryptsetup/scripts/decrypt_derived
달리는 걸 기억해
update-initramfs -u -k all
crypttab을 변경한 후.
usr 장치에 대해 "일반" 비밀번호를 유지해야 합니다. 그렇지 않으면 루트 장치가 손상된 경우 장치를 열 수 없습니다.