Первый был протестирован и, вероятно, наиболее стабилен.
Решение кажется довольно простым и как-то описано в разделе Как настроить LVM & amp; LUKS для автоматического определения раздела?
Мой / загрузочный раздел - это / dev / sda1
My / boot partition is / dev / sda1
Я был root, но если вы не добавляете sudo ко всем командам.
Начните с создания ключевого файла с паролем (I генерировать псевдослучайную)
dd if=/dev/urandom of=/boot/keyfile bs=1024 count=4
Затем установить разрешение чтения для root и ничего для кого-либо еще
chmod 0400 /boot/keyfile
Затем добавить ключевой файл в качестве ключа разблокировки
cryptsetup -v luksAddKey /dev/sda3 /boot/keyfile
(вам будет предложено ввести пароль шифрования)
Найти uuid раздела / boot с (для этого не требуется root)
ls -l /dev/disk/by-uuid/
Вот пример того, как выглядит (это не фактический вывод, поскольку я схватил это с другой машины)
test@test:~$ ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 10 Jan 15 03:36 025c66a2-c683-42c5-b17c-322c2188fe3f -> ../../sda2
lrwxrwxrwx 1 root root 10 Jan 15 03:36 9e7a7336-3b81-4bbe-9f1a-d43415df1ccb -> ../../sda1
Затем отредактируйте / etc / crypttab с вашим любимым редактором
[ f6]Содержимое будет выглядеть примерно так (опять же, это с другой машины)
sda3_crypt UUID=025c66a2-c683-42c5-b17c-322c2188fe3f none luks,discard
Что вы хотите сделать, вы хотите заменить ни одного на / dev / disk / by- uuid / [uuid of th e / boot partition], и вы хотите заменить discard с помощью keycript = / lib / cryptsetup / scripts / passdev
Результат должен выглядеть примерно так:
sda3_crypt UUID=025c66a2-c683-42c5-b17c-322c2188fe3f /dev/disk/by-uuid/9e7a7336-3b81-4bbe-9f1a-d43415df1ccb luks,keyscript=/lib/cryptsetup/scripts/passdev
Сохраните файл и приступить к обновлению initramfs
update-initramfs -u
Вот и все, теперь вы можете перезагрузиться.
reboot
none
Сначала я подтвердите, что в системе есть только два ключа (исходный и новый ключевой файл)
cryptsetup luksDump /dev/sda3 | grep BLED
Это приведет к генерации вывода, подобного этому
Key Slot 0: ENABLED
Key Slot 1: ENABLED
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED
. Чтобы удалить ключ в ключевом слоте 1 (ключевой файл)
cryptsetup luksKillSlot /dev/sda3 1
После этого вам будет предложено ввести пароль шифрования (оригинальный, а не тот, который находится в ключевом файле)
Затем удалите фактический ключевой файл
rm /boot/keyfile
Обновите initramf снова
update-initramfs -u
Теперь при перезагрузке вам снова будет предложено ввести пароль. Вы закончили.
reboot
Решение кажется довольно простым и как-то описано в разделе Как настроить LVM & amp; LUKS для автоматического определения раздела?
Мой / загрузочный раздел - это / dev / sda1
My / boot partition is / dev / sda1
Я был root, но если вы не добавляете sudo ко всем командам.
Начните с создания ключевого файла с паролем (I генерировать псевдослучайную)
dd if=/dev/urandom of=/boot/keyfile bs=1024 count=4
Затем установить разрешение чтения для root и ничего для кого-либо еще
chmod 0400 /boot/keyfile
Затем добавить ключевой файл в качестве ключа разблокировки
cryptsetup -v luksAddKey /dev/sda3 /boot/keyfile
(вам будет предложено ввести пароль шифрования)
Найти uuid раздела / boot с (для этого не требуется root)
ls -l /dev/disk/by-uuid/
Вот пример того, как выглядит (это не фактический вывод, поскольку я схватил это с другой машины)
test@test:~$ ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 10 Jan 15 03:36 025c66a2-c683-42c5-b17c-322c2188fe3f -> ../../sda2
lrwxrwxrwx 1 root root 10 Jan 15 03:36 9e7a7336-3b81-4bbe-9f1a-d43415df1ccb -> ../../sda1
Затем отредактируйте / etc / crypttab с вашим любимым редактором
nano /etc/crypttab
Содержимое будет выглядеть примерно так (опять же, это с другой машины)
sda3_crypt UUID=025c66a2-c683-42c5-b17c-322c2188fe3f none luks,discard
Что вы хотите сделать, вы хотите заменить ни одного на / dev / disk / by- uuid / [uuid of th e / boot partition], и вы хотите заменить discard с помощью keycript = / lib / cryptsetup / scripts / passdev
Результат должен выглядеть примерно так:
sda3_crypt UUID=025c66a2-c683-42c5-b17c-322c2188fe3f /dev/disk/by-uuid/9e7a7336-3b81-4bbe-9f1a-d43415df1ccb luks,keyscript=/lib/cryptsetup/scripts/passdev
Сохраните файл и приступить к обновлению initramfs
update-initramfs -u
Вот и все, теперь вы можете перезагрузиться.
reboot
none
Сначала я подтвердите, что в системе есть только два ключа (исходный и новый ключевой файл)
cryptsetup luksDump /dev/sda3 | grep BLED
Это приведет к генерации вывода, подобного этому
Key Slot 0: ENABLED
Key Slot 1: ENABLED
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED
. Чтобы удалить ключ в ключевом слоте 1 (ключевой файл)
cryptsetup luksKillSlot /dev/sda3 1
После этого вам будет предложено ввести пароль шифрования (оригинальный, а не тот, который находится в ключевом файле)
Затем удалите фактический ключевой файл
rm /boot/keyfile
Обновите initramf снова
update-initramfs -u
Теперь при перезагрузке вам снова будет предложено ввести пароль. Вы закончили.
reboot
Решение кажется довольно простым и как-то описано в разделе Как настроить LVM & amp; LUKS для автоматического определения раздела?
Мой / загрузочный раздел - это / dev / sda1
My / boot partition is / dev / sda1
Я был root, но если вы не добавляете sudo ко всем командам.
Начните с создания ключевого файла с паролем (I генерировать псевдослучайную)
dd if=/dev/urandom of=/boot/keyfile bs=1024 count=4
Затем установить разрешение чтения для root и ничего для кого-либо еще
chmod 0400 /boot/keyfile
Затем добавить ключевой файл в качестве ключа разблокировки
cryptsetup -v luksAddKey /dev/sda3 /boot/keyfile
(вам будет предложено ввести пароль шифрования)
Найти uuid раздела / boot с (для этого не требуется root)
ls -l /dev/disk/by-uuid/
Вот пример того, как выглядит (это не фактический вывод, поскольку я схватил это с другой машины)
test@test:~$ ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 10 Jan 15 03:36 025c66a2-c683-42c5-b17c-322c2188fe3f -> ../../sda2
lrwxrwxrwx 1 root root 10 Jan 15 03:36 9e7a7336-3b81-4bbe-9f1a-d43415df1ccb -> ../../sda1
Затем отредактируйте / etc / crypttab с вашим любимым редактором
nano /etc/crypttab
Содержимое будет выглядеть примерно так (опять же, это с другой машины)
sda3_crypt UUID=025c66a2-c683-42c5-b17c-322c2188fe3f none luks,discard
Что вы хотите сделать, вы хотите заменить ни одного на / dev / disk / by- uuid / [uuid of th e / boot partition], и вы хотите заменить discard с помощью keycript = / lib / cryptsetup / scripts / passdev
Результат должен выглядеть примерно так:
sda3_crypt UUID=025c66a2-c683-42c5-b17c-322c2188fe3f /dev/disk/by-uuid/9e7a7336-3b81-4bbe-9f1a-d43415df1ccb luks,keyscript=/lib/cryptsetup/scripts/passdev
Сохраните файл и приступить к обновлению initramfs
update-initramfs -u
Вот и все, теперь вы можете перезагрузиться.
reboot
none
Сначала я подтвердите, что в системе есть только два ключа (исходный и новый ключевой файл)
cryptsetup luksDump /dev/sda3 | grep BLED
Это приведет к генерации вывода, подобного этому
Key Slot 0: ENABLED
Key Slot 1: ENABLED
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED
. Чтобы удалить ключ в ключевом слоте 1 (ключевой файл)
cryptsetup luksKillSlot /dev/sda3 1
После этого вам будет предложено ввести пароль шифрования (оригинальный, а не тот, который находится в ключевом файле)
Затем удалите фактический ключевой файл
rm /boot/keyfile
Обновите initramf снова
update-initramfs -u
Теперь при перезагрузке вам снова будет предложено ввести пароль. Вы закончили.
reboot