Einschränken der spontanen Bearbeitung von Grub2-Menüeinträgen

Einschränken der spontanen Bearbeitung von Grub2-Menüeinträgen

Gibt es eine Möglichkeit, die e' to edit commands before bootingOption im GRUB2-Menü zu deaktivieren?

Ich möchte, dass alle Menüeinträge allen Benutzern zur Verfügung stehen (eine Kennwortbeschränkung ist also keine Option), die Möglichkeit der Benutzer, diese Menüeinträge zu ändern, jedoch eingeschränkt wird.

Ist das möglich?

Antwort1

Unter Ubuntu 18.04 funktionierte es, nachdem ich hinzugefügt hatte

GRUB_DISABLE_SUBMENU=y

nach /etc/default/grub. Die Schritte sind also im Wesentlichen:

Passwort generieren mit:

grub-mkpasswd-pbkdf2

Kopieren Sie die folgenden Zeilen an das Ende von /etc/grub.d/40_custom und ersetzen Sie das Passwort durch das Passwort aus der obigen Ausgabe. Dadurch wird Grub vollständig durch ein Passwort geschützt:

set superusers="grubadm"
password_pbkdf2 grubadm grub.pbkdf2.sha512.10000.D23193A0BE80A8D94606716D2DBE18C1AC77563FD87B7DA41824467E9393EBFFAF8B909DFAD83293325016EF6DA112EBAC819B3196F2D9F764F56E037E4EB86A.78AAD14971909106B4BE80AB6BF704804E67D5486966D9A85289E5449F08BD54E55B83B28CF0A4F2B4D486F2136439B7786135B8D59C611BF9DE2CDE965DB791

Ermöglicht die Auswahl von Booteinträgen für verschiedene Kernelversionen. Bearbeiten /etc/grub.d/10_linuxund

  1. Fügen Sie --unrestrictednach ${CLASS}in der Zeile echo "menuentry '$(title "$os" [...]in der Funktion linux_entry in ein /etc/grub.d/10_linux, zB

    echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} --unrestricted \$menuentry_id_option 'gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
    
  2. Fügen Sie --unrestricteddanach ${CLASS}in der Zeile ´echo "menuentry '$(echo "$os" [...] in function linux_entry in/etc/grub.d/10_linux` ein, zB

    echo "menuentry '$(echo "$os" | grub_quote)' ${CLASS} --unrestricted \$menuentry_id_option 'gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
    

Fügen Sie die folgende Zeile zu /etc/default/grub hinzu

GRUB_DISABLE_SUBMENU=y

Erstellen Sie die Grub-Conf-Datei neu, indem Sie Folgendes ausführen:

update-grub

Antwort2

Von demWiki:

Wenn irgendeine Form des GRUB 2-Passwortschutzes aktiviert ist, werden der Name und das Passwort des Superusers benötigt, um Zugriff auf die GRUB 2-Befehlszeile und den Menübearbeitungsmodus zu erhalten.

Dies scheint zu bedeuten, dass Sie nicht privilegierten Benutzern das Booten erlauben müssen:

Das GRUB 2-Menü kann geschützte und ungeschützte Elemente enthalten. Das Format zum Schützen eines Menüelements besteht darin, der Titelzeile des Menüeintrags die Benutzerzugriffsinformationen hinzuzufügen.

Das Vorhandensein von --unrestricted deaktiviert den Kennwortschutz.

verwandte Informationen