LUKS를 처음 사용한다고 말하는 것으로 시작하겠습니다. LVM 유무에 관계없이 키 스크립트로 여러 번 LUKS를 설정했습니다. 그래도 실제로 무슨 일이 일어나고 있는지 잘 모르겠습니다. 단일 암호화 파티션이있는 시스템이 있습니다. 내 드라이브는 다음과 같이 구성됩니다.
# lsblk 이름 MAJ : MIN RM 크기 RO 유형 마운트 포인트 sda 8 : 0 0128G 0 디스크 └─sda1 8 : 1 0128G 0 부분 ├─vg0-root 253 : 1 0 20G 0 lvm / ├─vg0- 보안 253 : 6 0100M 0 lvm │ └─ 보안 253 : 7 0 98M 0 암호 / root / secure └─vg0- 스왑 253 : 4 0 1G 0 lvm [SWAP]
내 /etc/crypttab
파일은 다음과 같습니다
LV에 대한 경로가 변경되지 않으므로 UUID가 필요하지 않습니다. 보안 / dev / vg0 / secure none luks, keyscript = / lib / cryptsetup / scripts / insecure
내 /lib/cryptsetup/scripts/insecure
파일은 실행 파일이며 다음과 같습니다
#!/bin/sh
# My actual file looks somewhat different because it dumps the key file with dd.
# This accomplishes virtually the same thing though.
echo -n "my-encryption-password"
update-initramfs -k all -u
crypttab을 구성하고 키 스크립트 파일을 넣은 후에 여러 번 실행 했습니다.
내가 알 수있는 한 내 스크립트 파일은 initrd.img 파일로 복사되지 않습니다. 루트 파티션이 암호화되어 있지 않고 스크립트 파일에 쉽게 액세스 할 수 있어야하므로 initrd.img 파일로 복사되지 않을 것이라고 생각합니다.
재부트시 시스템은 crypttab에서 레코드를보고 LUKS 파티션 잠금을 해제하기 위해 키 스크립트를 사용하는 대신 암호를 요청합니다 (내 경우에는 키가 임의 비트로 가득 찬 키 파일이므로 실제로 존재하지 않습니다). LVM에서 LUKS를 꺼내서 sda2에 넣으려고 시도했지만 결과는 동일했습니다. 또한 키 스크립트 cryptsetup luksOpen /dev/vg0/secure secure -d - <<< "$(/lib/cryptsetup/scripts/insecure)"
가 매력처럼 작동하고 내 LUKS 파티션을 해독 하기 때문에 키 스크립트가 작동한다는 것을 알고 있습니다.
나는 우분투 16.04.2와 우분투 메이트 16.04.2에서 동일한 결과를 시도했습니다. 나는 아무런 문제없이 이전에 키 스크립트를 사용했습니다. 유일한 차이점은 과거에 내 / 파티션이 항상 암호화되었다는 것입니다. 누구나 빛을 비출 수 있다면 고맙겠습니다. 이 시스템을 복제 할 계획이므로 매우 작은 암호화 된 파티션 만 원하며 전체 / 파티션을 암호화하여 복제하고 싶지 않습니다.
2017-04-26 업데이트
로그를 파고 들었을 때 다음과 같은 오류가있는 줄을 발견했습니다. 'keyscript = / path / to / script'는 언제 crypttab에 알 수없는 옵션입니까?
... systemd-cryptsetup [737] : 알 수없는 / etc / crypttab 옵션 'keyscript = / lib / cryptsetup / scripts / insecure'가 무시되었습니다.
킥을 위해 키 스크립트 옵션을 제거하고 키 파일을 사용하려고 시도했는데 모두 작동했습니다! 사실, keyfile-offset과 같은 다른 옵션을 시도했지만 작동합니다. 따라서 문제는 keyscript 옵션에 어딘가에 있습니다. 왜 그런지 아는 사람이 있습니까?