LINUX.ORG.RU

Шифрование диска в линуксах

 , , , ,


0

3

Сабж. Один единственный диск. Шифрование boot не обязательно. В качестве загрузчика буду пользовать systemd-boot. Что лучше всего использовать в данном случае?

★☆

Ответ на: комментарий от hateWin

Не знаю, где в реальности может понадобиться использовать dm-crypt напрямую.

P.S. Ответ на твой вопрос кроется в первом тэге.

sudopacman ★★★★★
()
Последнее исправление: sudopacman (всего исправлений: 2)
Ответ на: комментарий от hateWin

Plain dm-crypt encryption can be more resilient to damage than LUKS, because it does not rely on an encryption master-key which can be a single-point of failure if damaged.

Из этого ты должен сделать вывод, что нужно иметь резервную копию заголовка, а не что нужно использовать голый dm-crypt.

sudopacman ★★★★★
()
Последнее исправление: sudopacman (всего исправлений: 1)
Ответ на: комментарий от hateWin

Бэкапы это ведь не отменяет. В ФС тоже есть много single-point of failure.

Тут правильно написали, что это – стандартное решение.

i586 ★★★★★
()
Последнее исправление: i586 (всего исправлений: 1)

Сам страдал таким недавно. Алгоритм прост: Делаешь три раздела:

  • ESP
  • luks1 - внутри grub2 на ext4 (грузиться с f2fs не умеет), ключа два: твоя фраза (ал-ля «обезьянка прием-прием») и файлик, сгенерированный примерно как openssl rand -hex 64 >> bootloader.key (под рукой линя нет, могу ошибаться), который кладешь куда-нибудь в /etc/keys/
  • luks2 - root, только root.key по аналогии с bootloader.key, внутри может быть что угодно, главное не забудь в grub_cmdline указать root=/путь/к/корню

Далее добавляешь root.key в initramfs, в grub2 пишешь cryptkey=rootfs:/путь/к/root.key. /boot добавляешь в crypttab.

В итоге у тебя только нешифрованный ESP. Там один файлик, который я подписываю своими ключами (https://www.rodsbooks.com/efi-bootloaders/controlling-sb.html), и чтобы grub2 не ругался, я делаю sed -i ‘s/SecureBoot/SecureB00t/’ grubx64.efi (см. https://wejn.org/2021/09/fixing-grub-verification-requested-nobody-cares/)

Ещё почитай это: https://habr.com/ru/post/457542/

bardachok-s
()
Ответ на: комментарий от bardachok-s

Альтернативно, можно просто свалить /boot и / в один luks1-контейнер, но у меня ssd, я хочу флаги –perf-чего_то_там.

bardachok-s
()
Ответ на: комментарий от sudopacman

У меня ключ от luks2 в initramfs. initramfs в /boot. Поправь меня, если я заблуждаюсь, но хранить initramfs где-то кроме /boot бессмысленно.

bardachok-s
()
Ответ на: комментарий от bardachok-s

У меня ключ от luks2 в initramfs

Зачем?

inb4: «Чтобы не вводить заново пароль для / после открытия /boot»

А /boot тебе зачем зашифровывать?

sudopacman ★★★★★
()
Последнее исправление: sudopacman (всего исправлений: 1)
Ответ на: комментарий от bardachok-s

Читай моё первое сообщение.

От этого не становится понятнее, зачем тебе шифрованный /boot, key-файлы и три раздела, когда можно обойтись двумя разделами и одним паролем.

sudopacman ★★★★★
()

Хорошо. Можно ли положить на незашифрованный /esp systemd-boot и зашифровать /boot? Я не хочу использовать граб.

hateWin ★☆
() автор топика
Ответ на: комментарий от bardachok-s

не может грузиться с luks2

Я знаю, что GRUB не умеет расшифровывать /boot-раздел, находящийся в LUKS2. Но зачем тебе /boot-раздел в LUKS?

sudopacman ★★★★★
()
Ответ на: комментарий от gag

Я когда гуглил тоже на это наткнулся. Нет, не поддерживает. Ставил arch в марте.

bardachok-s
()
Ответ на: комментарий от hateWin

systemd-boot не умеет в шифрованный /boot (но оно и не сильно нужно).

sudopacman ★★★★★
()

Вариантов по сути нет - есть только cryptsetup в разных режимах: LUKS1, LUKS2 и plain mode (то, что называется dm-crypt). Технически можно использовать любой вариант, для новичка лучше LUKS2 с обязательным бэкапом заголовка.

mxfm ★★
()
Ответ на: комментарий от bardachok-s

А что мешает, вместо того чтобы сначала вводить пароль от /boot и открывать хранящимся там ключом /, сразу вводить пароль от /?

sudopacman ★★★★★
()
Ответ на: комментарий от sudopacman

initramfs на /boot/. В initramfs пароль от /, где у меня все данные. Так же в /boot/ у меня vmlinuz и ещё парочка файлов, которые надо защищать от подделки либо через secureboot, подписывая их заново при каждом обновлении, либо держа их на шифрованном /boot/. Я не понимаю откуда у тебя вопрос к шифрованию /boot.

bardachok-s
()
Ответ на: комментарий от bardachok-s

Вообще, чем больше я об этом думаю, тем больше я сам задаюсь вопросом, на кой чорт я так делаю. Возможно, надо осилить pacman-hook

bardachok-s
()
Ответ на: комментарий от bardachok-s

которые надо защищать от подделки либо через secureboot, подписывая их заново при каждом обновлении, либо держа их на шифрованном /boot

Так Secure Boot может гарантировать защиту лишь от устанавливающейся в загрузочные файлы малвари. Не подписывая initramfs/vmlinuz, ты только хуже делаешь. А для защиты от evil maid нужно нечто большее.

sudopacman ★★★★★
()
Последнее исправление: sudopacman (всего исправлений: 1)
Ответ на: комментарий от bardachok-s

В этом дермище черт ногу сломит

hateWin ★☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.