Härten eines Linux-Images zum Entfernen von sudo-Benutzern
Gilt für: ✔️ Linux-Images
In diesem Thema wird beschrieben, wie Sie Sudo-Benutzer aus dem Linux-Image entfernen und einen vertraulichen virtuellen Computer (vertrauliche VM) in Azure bereitstellen.
Ziel dieses Artikels ist es, ein Linux-Image ohne Administrator für vertrauliche VM-Bereitstellungen zu erstellen. Das Entfernen des Gastadministrators hat immensen Sicherheitswert, wodurch Administratorrechte im gesamten Betriebssystem reduziert werden.
Grundlegendes zu verschiedenen Benutzertypen in Unix/Linux-Systemen:
Administratorbenutzer (sudoer): Reguläre Benutzer mit zusätzlichen Berechtigungen. Diese Benutzer können bestimmte Aufgaben ausführen, die Systemkonfigurationen ändern.
Regulärer Benutzer: Reguläre Benutzer sind nichtadministrative Benutzer. Sie sind nicht berechtigt, Systemkonfigurationen zu ändern oder systemweite Software zu installieren.
Im Kontext von Linux-Images ohne Administrator ist es ziel, Systeme ohne sudo-Benutzer bereitzustellen.
Hinweis
Die Konfiguration allein stellt nicht sicher, dass Benutzer der sudo-Gruppe hinzugefügt werden. Jeder Dienst mit Stamm- oder Sudo-Berechtigungen hat das Potenzial, Berechtigungen zu eskalieren.
Voraussetzungen
- Wenn Sie über kein Azure-Abonnement verfügen, können Sie ein kostenloses Azure-Konto erstellen, bevor Sie beginnen.
- Ein Ubuntu-Image – Sie können eins aus dem Azure Marketplace auswählen.
Entfernen von sudo-Benutzern und Vorbereiten eines generalisierten Linux-Images
Die vorgeschlagene Lösung führt zu einem Linux-Image ohne sudo-Benutzer.
Schritte zum Erstellen eines generalisierten Bilds, das die sudo-Benutzer entfernt, sind wie folgt:
Laden Sie ein Ubuntu-Image herunter. Erstellen eines benutzerdefinierten Images für vertrauliche Azure-VM
Montiere das Bild.
Hierfür gibt es mehrere Möglichkeiten , den Datenträger anzufügen. Im Beispiel wird das Schleifengerät zum Bereitstellen des Images verwendet. Es kann sich um einen angefügten Datenträger oder ein Schleifengerät zum Einbinden des Images sein.
$imagedevice ist die Partition des Stammdateisystem auf dem Gerät, das das Image enthält.
mount /dev/$imagedevice /mnt/dev/$imagedevice
Dieser Prozess wird häufig für den Zugriff auf und die Arbeit mit Datenträgerimages verwendet. Hier wird es verwendet, um die sudo-Benutzer auf dem Ubuntu-Image zu entfernen.
Chroot in das vhd-Dateisystem, um den folgenden Befehl auszuführen, der Benutzer unter der sudo-Gruppe auflistet.
sudo chroot /mnt/dev/$imagedevice/ getent group sudo
Überprüfen Sie Schritt 3, indem Sie die Benutzer im Verzeichnis "sudoers.d home" und in "/etc/passwd", "/etc/shadow"-Dateien auflisten. Wenn Benutzer mit Sudo-Berechtigungen vorhanden sind, werden sie hier aufgeführt,
sudo ls /mnt/dev/$imagedevice/etc/sudoers.d sudo cat /mnt/dev/$imagedevice/etc/passwd sudo cat /mnt/dev/$imagedevice/etc/shadow
Entfernen von sudo-Berechtigungen: Verwenden Sie den Deluser-Befehl, um sudo-Berechtigungen für den Benutzer zu entfernen,
sudo chroot /mnt/dev/$imagedevice/ deluser -r [sudo_username]
Wiederholen Sie Schritt 4, um zu überprüfen, ob der Benutzer über keine sudo-Berechtigung für die vhd verfügt.
Heben Sie die Bereitstellung des Images auf.
umount /mnt/dev/$imagedevice
Das vorbereitete Bild enthält keine sudo-Benutzer, die zum Erstellen vertraulicher VMs verwendet werden können.
Führen Sie die Schritte zum Erstellen eines benutzerdefinierten Images für einen vertraulichen virtuellen Azure-Computer für Azure aus, um einen vertraulichen virtuellen Azure-Computer zu erstellen. Verwenden Sie das Image ohne Administrator in Schritt 4 des Erstellens eines benutzerdefinierten Images für einen vertraulichen virtuellen Azure-Computer, während Sie Azcopy ausführen und die restlichen Schritte erneut ausführen Standard dasselbe.