AlmaLinux 8. Установка ОС на зашифрованный раздел. Расшифровка по сети

Материал из Wiki
Перейти к навигации Перейти к поиску


Описание

Установка AlmaLinux 8 на зашифрованный раздел. Подключение зашированного системного раздела перед загрузкой ОС по сети через SSH

Ссылки

https://github.com/gsauthof/dracut-sshd

https://forums.centos.org/viewtopic.php?t=72465

Настройка

На клиенте Linux (отсюда будем подключать зашифрованный раздел по сети через SSH)

Для начала создадим пару ключей (id_rsa / id_rsa.pub), которые будем использовать для подключения на сервер с целью дешифрования разделов

Вносим настройки в ssh клиент, чтобы при изменении ключа ssh удаленного сервера, ssh клиент не ругался

nano ~/.ssh/config

...
UserKnownHostsFile=/dev/null
StrictHostKeyChecking=no
...

ИЛИ

при подключении клиентом по ssh используем опции:

ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null user$host

Создаем пару ключей (публичный и приватный)

ssh-keygen -t rsa

Получаем публичный ключ: ~/.ssh/id_rsa.pub

cat ~/.ssh/id_rsa.pub

Передаем публичный ключ на систему, кторую будем расшифровывать удаленно

ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.199.176

На сервере AlmaLinux 8 (системный раздел которого мы шифруем)

Устанавливаем AlmaLinux 8 штатно с шифрованными разделами: ROOT, SWAP (И HOME)

dnf copr enable -y gsauthof/dracut-sshd

dnf install -y dracut-sshd mc nano

nano /etc/default/grub

    ...
    GRUB_CMDLINE_LINUX="<...> rd.neednet=1 ip=dhcp"
    ...

  - ИЛИ -

    ...
    GRUB_CMDLINE_LINUX="<...> rd.neednet=1 ip=192.168.199.176::192.168.199.1:255.255.255.0:::off:192.168.199.1:77.88.8.8"
    ...

dracut -f -v

reboot

После перезагрузки на Виртуальных Машиных модет быть задержка до открытия 22 порта dracut-initramfs до 2-х минут!

Подключение для дешифрования раздела

Linux

Подключаемся с клиента, publickey которого внесли в authorized_keys.

Когда будет запрос пароля на подключение шифрованных разделов пароль root SSH сервера не будет запрашиваться, так как мы добавили publickey клиента на сервер.

Публичный ключ id_rsa.pub, после его внесения в /root/.ssh/authorized_keys на сервере, необязательно использовать только с клиента, на котором мы его создали.

Можно перенести ключ на любую Linux машину и использовать эту машину для подключения к серверу.

По-умолчанию при использовании ssh-клиента, система ищет ключи в ~/.ssh

Указать путь к паре ключей (id_rsa / id_rsa.pub) вручную также можно опцией -i

ssh -i /root/rsa/id_rsa root@192.168.199.222

...
Passphrase:
...

Вводим пароль на шифрованный раздел

Готово - система загружается

Windows

Для дешифрования раздела будем использовать PUTTY и ту же пару ключей, которую создали в Linux.

Копируем пару ключей (id_rsa / id_rsa.pub) из системы Linux в систему Windows, в директорию "rsa" в папке с plink.exe.

Скачиваем puttygen.exe и plink.exe.

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

Необходимо сконвертировать приватный ключ id_rsa в формат, который поймет putty.

https://www.simplified.guide/putty/convert-ssh-key-to-ppk

Запускаем puttygen.

Load - выбираем приватный ключ id_rsa.

Будет сообщение об успехе импорта ключа, далее:

Save private key - сохраняем файл как id_rsa.ppk (формат ключа putty) в директорию "rsa" в папке с plink.exe    .

Запускаем plink, указав путь к ключу id_rsa.ppk.

plink.exe -batch -i .\rsa\centos7-test01-199-191\id_rsa.ppk root@192.168.199.186

...
Passphrase:
...

Вводим пароль шифрования

Готово - система загружается

Mikrotik

Копируем на микротик пару ключей (id_rsa / id_rsa.pub), которые создали на Linux и импортируем их:

/user ssh-keys private import user=admin private-key-file=id_rsa public-key-file=id_rsa.pub passphrase=""

Подключаемся

/system ssh address=192.168.199.222 user=root

...
Passphrase:
...

Вводим пароль шифрования

Готово - система загружается