Я установил Debian 9 на VPS и настроил шифрование корневого раздела. Однако из-за того, что установщик доставил мне проблемы при попытке зашифровать, мне пришлось сделать это вручную.
Чтобы иметь возможность разблокировать корневой раздел через SSH во время загрузки, я также установил dropbear-initramfs
и обновил initramfs, используя update-initramfs -u
. Теперь при загрузке я могу подключиться к dropbear
сервер.
После входа в систему cryptroot-unlock
(который вызывается автоматически при входе в систему через SSH) выдает следующее сообщение об ошибке:
Error: Timeout reached while waiting for askpass.
и закрывает соединение.
Я не нашел ничего в этом точном сообщении об ошибке в Интернете и попытался убедиться, что не сделал никаких ошибок конфигурации, но пока ничего не помогло.
На данный момент я могу войти в систему с помощью chroot, используя живую систему восстановления; что я могу сделать, чтобы исправить эту ошибку?
Мне удалось решить проблему самостоятельно, но, возможно, кто-то еще столкнется с такой же проблемой, поэтому я опубликую решение здесь:
Как оказалось, мой /etc/crypttab
были синтаксические ошибки, которые привели к askpass
(среди прочего) не включаются в initramfs при запуске update-initramfs -u
.
Для меня достаточно было добавить каждый отдельный логический том в /etc/crypttab
вместо группы томов в целом. Вот пример:
#name underlying device passphrase cryptsetup options
vg-root /dev/mapper/vg-root none luks,retry=1
vg-swap /dev/mapper/vg-swap none luks,retry=1
После повторного обновления initramfs ваша система должна запросить парольные фразы логического тома при запуске, а затем возобновить нормальную загрузку.