В начале загрузки Linux загружается специальная программа, запрашивающая пароль, если ваш Linux установлен на encrypted-lvm, но это может быть проблемой безопасности, если специальная программа заразится вирусом Microsoft Windows, возможно, измененным, отправляющим пароль куда-то в раздел Windows. Но установить программу парольной фразы на USB-накопитель гораздо безопаснее, поскольку он более изолирован, чем на жестком диске. Я хочу узнать, как сделать загрузочный USB для ввода пароля, чтобы я мог войти в Linux?
решение1
Специальная программа, о которой вы говорите, находится внутри initramfs ядра Linux. Initramfs содержит временную файловую систему / с дополнительными возможностями, необходимыми для монтирования реальной файловой системы /. В вашем случае она содержит, помимо прочего, инструмент cryptsetup и скрипт (специальную программу) для получения вашей парольной фразы.
Итак, чтобы добиться желаемого, вам, по сути, нужно сделать ваш USB-диск разделом /boot вашей системы. /boot содержит ваше ядро Linux, initramfs, GRUB2 stage2 и т. д.
Чтобы было ясно, вы все равно загрузитесь с внутреннего диска, но GRUB2 будет переустановлен, так что он загрузит свою конфигурацию, другие этапы и ваше ядро с вашего USB-диска. Процесс показан ниже, но прежде чем приступить к нему, убедитесь, что у вас есть альтернативный способ получить доступ к вашей системе, например, через LiveCD/USB-накопитель. Этот процесс изменит способ загрузки Linux, и если он пойдет не так, вы окажетесь в проигрыше без плана Б.
- Используя
fdisk /dev/sdX
(где sdX — USB-диск), создайте раздел на USB-диске. - Отформатируйте вышеупомянутый раздел с помощью файловой системы Linux (например, ext2, 3 или 4). Пример.
mkfs.ext3 /dev/sdX1
- Сделайте резервную копию вашего существующего /boot. Это важно, так что лучше перестраховаться, чем потом сожалеть. Например,
pushd /boot; tar -cvzf /root/boot-backup.tar.gz .; popd
- Смонтируйте новую файловую систему в каком-нибудь месте и скопируйте в нее содержимое текущего /boot.
- Размонтируйте новую файловую систему и перемонтируйте ее как новый /boot, обновив /etc/fstab по ходу дела. Новый /boot необходимо смонтировать для следующего шага.
- Переустановите GRUB2, используя MBR, в котором он в данный момент переустановлен:
grub-install /dev/sdY
. Причина, по которой его нужно переустановить, заключается в том, что вы изменили расположение /boot. Эта команда также установит файлы в /boot/grub, поэтому его нужно смонтировать (и сделать резервную копию). - Восстановите файл конфигурации GRUB2:
grub-mkconfig -o /boot/grub/grub.cfg
- Просмотрите сгенерированный файл конфигурации по адресу/boot/grub/grub.cfg. Вы должны увидеть ссылку на USB-диск (я не помню, использует ли он UID диска или файловой системы).
Проверьте настройку, загрузившись с подключенным USB-накопителем. Затем попробуйте загрузиться без USB-накопителя; это не должно сработать.