Ужесточение образа Linux для удаления пользователей sudo
Область применения: ✔️ образы Linux
В этом разделе показано, как удалить пользователей sudo из образа Linux и развернуть конфиденциальную виртуальную машину (конфиденциальную виртуальную машину) в Azure.
Цель этой статьи — создать образ Linux без администратора для развертывания конфиденциальных виртуальных машин. Удаление гостевого администратора имеет огромное значение безопасности, что снижает привилегии администратора в ОС.
Общие сведения о различных типах пользователей в системах Unix/Linux:
Администратор пользователя (sudoer): обычные пользователи с дополнительными разрешениями. Эти пользователи могут выполнять определенные задачи, изменяющие конфигурации системы.
Обычный пользователь: обычные пользователи являются неадминистрирующими пользователями. У них нет разрешения на изменение конфигураций системы или установку программного обеспечения на уровне системы.
В контексте образов Linux без администраторов цель — развернуть системы без пользователей sudo.
Примечание.
Только конфигурация не гарантирует, что пользователи не добавляются в группу sudo. Любая служба с привилегиями root или sudo может повысить привилегии.
Необходимые компоненты
- Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.
- Образ Ubuntu — вы можете выбрать один из Azure Marketplace.
Удаление пользователей sudo и подготовка обобщенного образа Linux
Предлагаемое решение приводит к использованию образа Linux без пользователей sudo.
Ниже приведены шаги по созданию обобщенного образа, удаляющего пользователей sudo:
Скачайте образ Ubuntu. Создание пользовательского образа для конфиденциальной виртуальной машины Azure
Подключите образ.
Это можно сделать несколькими способами подключения диска, в примере используется устройство цикла для подключения образа. Это может быть подключенный диск или устройство цикла подключения образа.
$imagedevice — это раздел корневая файловая система на устройстве, который содержит изображение.
mount /dev/$imagedevice /mnt/dev/$imagedevice
Этот процесс часто используется для доступа к образам дисков и работы с ним. Здесь он используется для удаления пользователей sudo на образе Ubuntu.
Chroot в файловой системе vhd, чтобы выполнить следующую команду, которая перечисляет пользователей в группе sudo.
sudo chroot /mnt/dev/$imagedevice/ getent group sudo
Проверьте шаг 3, перечислив пользователей в домашнем каталоге sudoers.d и в файлах /etc/passwd, /etc/shadow. Если есть пользователи с привилегиями sudo, они перечислены здесь.
sudo ls /mnt/dev/$imagedevice/etc/sudoers.d sudo cat /mnt/dev/$imagedevice/etc/passwd sudo cat /mnt/dev/$imagedevice/etc/shadow
Удаление привилегий sudo: используйте команду deluser для удаления привилегий sudo для пользователя.
sudo chroot /mnt/dev/$imagedevice/ deluser -r [sudo_username]
Повторите шаг 4, чтобы убедиться, что у пользователя нет прав sudo на виртуальном жестком диске.
Отключите изображение.
umount /mnt/dev/$imagedevice
Подготовленный образ не включает пользователей sudo, которые можно использовать для создания конфиденциальных виртуальных машин.
Выполните действия по созданию пользовательского образа для конфиденциальной виртуальной машины Azure, чтобы создать конфиденциальную виртуальную машину Azure. Используйте образ без администратора на шаге 4 создания пользовательского образа для конфиденциальной виртуальной машины Azure при выполнении azcopy, а остальные действия остаются неизменными.