3

У меня есть система Linux Arch, работающая на VPS. Rootfs установлен в разделе LVM. Я хотел бы наложить на этот раздел зашифрованный контейнер, затем переустановить на нем rootfs и включить ssh unlock при загрузке через ssh. Я счастлив отказаться от всего содержимого существующих rootfs и создать новый с нуля.

Я пытаюсь действовать следующим образом:

  1. создать новый временный rootfs в /tmp /newroot
  2. привязываться к нему
  3. на этом этапе я хотел бы полностью остановить все службы, все еще привязанные к старому корню, который находится в разделе lvm (одним из которых является сам sshd), и перезапустить их из нового корня
  4. создать зашифрованный раздел на разделе lvm
  5. установите на него arch Linux и измените intrafms соответствующим образом

Для 1 и 2 я использую образ начальной загрузки archlinux, представленный в вики arch. 4 и 5 хорошо документированы (например, здесь).

Я застрял с шагом 3. После выполнения chroot с использованием fuser я вижу, что в разделе lvm все еще висит множество процессов, которые не позволяют мне наложить поверх него зашифрованный контейнер, и я не уверен, как их остановить и перезапустить некоторые из них. их из нового корня. Убийство, выполненное из оригинального рута, останавливает их, но прежде чем я это сделаю! Я должен перезапустить некоторые из них из нового корня (например, sshd), иначе я вырежу себя. Я попытался запустить их из нового рута с помощью systemd, но он не работает, потому что он обнаруживает, что мы находимся в режиме chroot. Я попытался запустить их через командную строку, и не генерируется никаких ошибок, но когда я ищу процессы с помощью ps, их там нет.

Любое предложение? Спасибо

1 ответ1

0

И если что-то пойдет не так во время шагов 4 и 5, вы получите не загружаемую систему. Гарантируется ли 100% доступность вашего VPS?

Если "живое" (или онлайн) повторное шифрование не было требованием, cryptsetup-reencrypt может обрабатывать автономное повторное шифрование . Все, что для этого потребуется - это расширение LV. В настоящее время ведется работа по реинкрипции в реальном времени, но она далека от стабильной. Потребность в дополнительном пространстве останется, так как не так много файловых систем, допускающих сжатие в режиме онлайн.

Если использование дополнительного дискового пространства является приемлемым решением, вы можете создать зашифрованный физический том LUKS, добавить его в группу томов и использовать pvmove, чтобы убрать rootfs от незашифрованного устройства.

Я не думаю, что есть простое решение для перехода на шифрованный LV.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .