💾 Archived View for tilde.team › ~rami › redhat_reset_pass_encrypt_grub.gmi captured on 2024-12-17 at 10:52:06. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2024-05-10)
-=-=-=-=-=-=-
רמי
SUBJECT: RHEL, Fedora: Сброс пароля root и контрмера - защита GRUB
AUTHOR: Rami Rosenfeld
DATE: 04/04/24
TIME: 00.00
LANG: ru, en
LICENSE: GNU FDL 1.3
TAGS: gnu, gnome, software, opensource, linux, system, man, manual, bash, privacy, security, rhel, centos, mate, xfce, lxde, spin, de, systemd, systemctl, terminal, console, grub, bootloader
Искренне надеюсь, что подавляющее большинство моих постоянных читателей - взрослые (т.е. лет так за 40!), половоззрелые :) и ответственные люди мужского пола (нет-нет, умных женщин я тоже уважаю!), которые всегда тщательно размечают разделы при установке ОС, используют полнодисковое шифрование, а также зачастую выносят загрузчик на сторонний съемный носитель. В подобном случае, это руководство - точно НЕ для них!
Для всех остальных я поясню, почему в случае с полнодисковым шифрованием никогда не сработает метод "сброс пароля администратора", описанный ниже. А также приведу дополнительную информацию, как защитить GRUB: это одновременно и интересно, и поучительно!
1. СБРОС ПАРОЛЯ ROOT
1. Рестартуйте ОС. В момент появления меню GRUB - нажмите на клавишу "e" ("редактировать опции загрузки").
Примечание: В Fedora GNU/Linux, если предыдущий выход из ОС был произведен корректно и без сбоев, меню GRUB не показывается. Для его появления удерживайте клавишу [SHIFT] сразу после начала загрузки компьютера.
2. При помощи стрелок "вниз"/"вправо" опуститесь до "quiet", добавьте пробел и впишите "rd.break" (без кавычек).
3. Запустите ОС с помощью сочетания клавиш [Ctrl][x].
4. На следующем этапе вы окажетесь в т.н. "emergency mode". Нажмите на [ENTER], чтобы воспользоваться командной строкой.
5. Далее проверим, в каком состоянии находится директория "sysroot" (по умолчанию, она будет в режиме "только для чтения" - "ro"):
mount | grep sysroot
6. Перемонтируем систему в режим полного доступа ("чтение/запись" - "rw"):
mount -o remount,rw /sysroot/
7. Проверим полученный результат:
mount | grep sysroot
8. Исполним команду:
chroot /sysroot
9. Используем стандартную команду для сброса пароля root и назначения нового:
passwd
10. Последнее действие - указание SELinux на переразметку всех файлов:
touch /.autorelabel
11. Последовательно наберите:
exit
reboot
Это приведет к запуску команды переразметки и займет несколько минут (наберитесь терпения).
ПОЯСНЕНИЯ от Рами:
Но что произойдет, если вы строго следуете рекомендациям, т.е. разбиваете носитель на разделы и зашифровываете их с помощью LUKS2? Краткий ответ: ничего! Потому что, исполнив [Ctrl][x] для запуска ОС с измененными параметрами, гипотетический злоумышленник неизбежно уткнется в приглашение ввести пароль для расшифровывания всех разделов, в первую очередь - системного, где и хранятся все критичные настройки и данные. Поэтому очень важно (подчеркиваю: ОЧЕНЬ ВАЖНО!) при установке ОС "с нуля" использовать полнодисковое шифрование. Ну а подробности, как и всегда, см. в разделе Manuals:
Разметка разделов для инсталляции ОС
LUKS2: Создание и шифрование разделов
Кстати, метод, о котором я вам рассказываю, не является "секретным" или "хакерским"; наоборот, он доступно изложен на множестве веб-ресурсов, в первую очередь - в официальных руководствах от Red Hat, inc.
2. ЗАЩИТА GRUB
А вот сам загрузчик можно (и нужно!) защитить от любых деструктивных действий. Сделать это весьма просто:
1. Перейдите в режим администратора и исполните (дважды введите новый пароль):
grub2-setpassword
[ENTER PASSWORD]
[CONFIRM PASSWORD]
Примечание: Этот пароль НЕ должен совпадать с паролем root (т.е. администратора)!
2. Предыдущая операция сгенерирует хэш (SHA-512) пароля GRUB. Корректность можно проверить следующим образом:
cat /boot/grub2/user.cfg
GRUB2_PASSWORD=grub.pbkdf2.sha512 (.....)
3. Далее следует обязательно(!) сгенерировать новый конфигурационный файл GRUB:
grub2-mkconfig -o /boot/grub2/grub.cfg
4. Перезагрузите ОС:
systemctl reboot
5. Убедитесь, что загрузчик защищен: в момент появления меню GRUB - нажмите на клавишу "e" ("редактировать"). На экране последовательно должно возникнуть:
Enter username:
root
Enter password:
...
Примечание: В Fedora GNU/Linux, если предыдущий выход из ОС был произведен корректно и без сбоев, меню GRUB не показывается. Для его появления удерживайте клавишу [SHIFT] сразу после начала загрузки компьютера.
6. Впоследствии, возможно вам понадобится удаление пароля. Последовательно исполните:
rm /boot/grub2/user.cfg
grub2-mkconfig -o /boot/grub2/grub.cfg
ОБЩЕЕ ПРИМЕЧАНИЕ: Будьте осторожны и внимательны! Любые некорректные изменения в загрузчике - весьма критичная ситуация, которая может привести к неработоспособности всей ОС!
🄯 Rami Rosenfeld, 2024. GNU FDL 1.3.