Warum benötigt der Root-Benutzer die sudo-Berechtigung?

16
[root@notebook ~]# grep root /etc/sudoers
root    ALL=(ALL)   ALL

Frage: Warum benötigt der Root-Benutzer Sudo-Berechtigungen? Ich habe es auf verschiedenen UNIX-Betriebssystemen gesehen. Kann das bitte jemand erklären?

whoisthesomeone
quelle
2
sudo! = root.
Anzeigename

Antworten:

25

Damit sie (von der manSeite): -

Führen Sie einen Befehl als anderer Benutzer aus

sudoist nicht darauf beschränkt, regulären Benutzern zu erlauben, einen Befehl als root auszuführen. Root kann einen Befehl als ein anderer Benutzer ausführen mit: -

sudo -u bloggs <command>

Beachten Sie, dass root das Passwort des Benutzers nicht eingeben muss.

garethTheRed
quelle
2
su -c <Befehl> bloggs
Joshua
Ja, es ist eine Leihmutterschaftsmethode und root ist nur eine sehr häufige Verwendung.
McKenzm
9

Angenommen, Sie haben ein Skript, das eine Reihe von Dingen ausführt, ohne spezielle Berechtigungen zu benötigen, und dann eine einzige privilegierte Sache, die es über sudo ausführt.

Wenn Sie möchten, dass dieses Skript auch für root nützlich ist, ist es praktisch, dass dieser endgültige sudo-Befehl die Arbeit nicht verweigert, weil Sie "root sind; root darf nicht sudo".

Wenn Sie dies in sudoers konfigurieren, anstatt eine Ausnahme für root in der sudo-Binärdatei fest zu codieren, wird die Komplexität des sicherheitskritischen Codes in sudo reduziert (allerdings geringfügig), was immer eine gute Sache ist.

Henning Makholm
quelle
1
Und außerdem, ich habe mehr als einmal versehentlich ein Admin-Level - Befehl mit gestartet , sudowährend ich schon war Wurzel, nur weil es tief verwurzelt in meinem Muskelgedächtnis ...
Shadur
3

Der Grund, der im Original-Sudo-Handbuch angegeben wurde (leider keine mir bekannte Online-Version), bestand darin, aktive Befehle zu protokollieren, wo immer dies möglich war, wenn Sie als root angemeldet waren.

Joshua
quelle