Was ist der Unterschied zwischen dem Hinzufügen eines Benutzers zur Gruppe „sudoers“ und „root“?

Was ist der Unterschied zwischen dem Hinzufügen eines Benutzers zur Gruppe „sudoers“ und „root“?

Ich habe einige Nachforschungen angestellt und um dem Benutzer die Verwendung des sudo-Befehls zu ermöglichen, müssen Sie ihn zur Gruppe „sudoers“ hinzufügen. Dadurch erhält er Root-Berechtigungen, solange er das Root-Passwort eingibt. Ich bin aber auch auf Beispiele gestoßen, bei denen Benutzer den Benutzer zur Gruppe „root“ statt zur Gruppe „sudoers“ hinzugefügt haben. Meine Frage ist, ob die beiden Gruppen unterschiedliche Berechtigungen haben, und wenn ja, welche und welche Vorteile bieten beide Techniken?

Ich verwende einen Debian-Linux-Server.

Danke

Antwort1

Bei der „Root-Gruppe“, wie Sie sie in /etc/group angeben würden, geht es um Unix-Berechtigungen. Jede Datei hat Benutzer-, Gruppen- und „andere“ Berechtigungen. Wenn eine Datei so eingestellt ist, dass Benutzer in der Gruppe „Root“ sie lesen können, können Sie einem Benutzer die Berechtigung zum Lesen dieser Datei erteilen, indem Sie den Benutzer in die Gruppe „Root“ aufnehmen. Natürlich kann dieser Benutzer dann lesenjedenDatei, bei der das Lesebit für die Gruppe root gesetzt ist.

In der sudoers-Datei können Befehle mit der effektiven ID anderer Benutzer ausgeführt werden. Sie haben eine genauere Kontrolle darüber, welche Befehle jeder Benutzer ausführen kann und als wen. Wenn Sie also möchten, dass ein Benutzer nur einen bestimmten Befehl als Root ausführen kann, legen Sie dies in der sudoers-Datei fest.

Antwort2

Obwohl in der Frage „Debian Linux Server“ erwähnt wird, ist sie derzeit sowohl mit Debian als auch mit Ubuntu gekennzeichnet. Da Informationen zu mehreren Betriebssystemen von Interesse zu sein scheinen, werde ich die Verweise auf bestimmte Betriebssysteme einfach vollständig ignorieren und nur die am weitesten verbreiteten Standards beschreiben.

Gruppen werden in /etc/group aufgelistet und es gibt häufig eine Gruppe mit dem Namen „root“. Diese Datei listet die Namen der Gruppen und ihre entsprechenden numerischen Werte der „Gruppen-ID“ („GID“) auf.

Jeder in einer Gruppe mit dem Namen „root“ kann Dateien lesen, schreiben oder ausführen, deren „Gruppenbesitzer“ dieselbe „Gruppen-ID“ („GID“) hat wie die Gruppe mit dem Namen „root“. Wenn also eine Datei „bin:root“ gehört und die Berechtigungen „rwxrwx---“ hat, kann ein Benutzer in der Gruppe „root“ die Datei aufgrund der mittleren Berechtigungsgruppe ausführen.

Im Gegensatz dazu basiert der von der Software „sudo“ festgelegte Standard auf der in der Datei /etc/sudoers gespeicherten Konfiguration. In der Datei /etc/sudoers werden Unix-artige Gruppennamen nach Prozentzeichen angezeigt, wie insudoers-Manpage (im HTML-Format): Abschnitt zum Dateiformat „sudoers“Ein Verweis auf %sudoers in der Datei /etc/sudoers bezieht sich also auf eine Gruppe namens „sudoers“, die sich in der Datei /etc/groups befindet.

Die Standarddatei /etc/sudoers enthält keinen Verweis auf eine Gruppe namens „sudoers“. Beachten Sie, dass ich mich auf die echte Standarddatei /etc/sudoers beziehe, die Sie unterSudo-Repository, indem Sie im linken Rahmen auf „Durchsuchen“, dann auf „Beispiele“ und schließlich auf „sudoers“ klicken.

Viele Betriebssysteme haben jedoch standardmäßig eine benutzerdefinierte /etc/sudoers-Datei installiert. Es ist also durchaus möglich, dass Ihr Betriebssystem spezielle Unterstützung für eine Gruppe namens sudoers bietet. Um die genauen Auswirkungen zu verstehen, sehen Sie sich die Datei /etc/sudoers an.

Wenn Ihr Betriebssystem eine Gruppe namens „sudoers“ hat, ist es wahrscheinlich, dass eine Person in dieser Gruppe die Berechtigungen mit dem Befehl „sudo“ erhöhen kann. (Um dies zu bestätigen, sollten Sie die Datei /etc/sudoers überprüfen.)

Wenn eine Person ihre Rechte erhöht, muss sie möglicherweise eine akzeptable Authentifizierung (ein Passwort) eingeben, muss dies aber nicht. Selbst wenn sie dies tut, verfügt sie nach der Authentifizierung möglicherweise für einen bestimmten Zeitraum über ein „Token“, mit dem sie ihre Rechte erneut erhöhen kann, ohne sich erneut authentifizieren zu müssen (bis dieser Zeitraum abgelaufen ist). Dieser Zeitraum beträgt 5 Minuten, sofern /etc/sudoers nichts anderes mit einer Option namens „timeout“ angibt.

Im Gegensatz dazu müsste eine Person in der „Root“-Gruppe kein Kennwort eingeben, um auf eine Datei zuzugreifen, die Eigentum der „Root“-Gruppe ist.

Beachten Sie, dass die Gruppe „sudoers“ möglicherweise bevorzugt wird. Durch Erhöhen der Rechte kann eine Person vollen Superuser-Zugriff erhalten. (Das ist typisch. Die Datei /etc/sudoers kann einer Person erlauben, zu einem anderen Benutzer zu wechseln oder zu erhöhen, allerdings mit Einschränkungen, welcher Befehl zuerst ausgeführt wird. Normalerweise erhält eine Person, die erhöht, bei Standard-/einfachen Konfigurationen nur volle Rechte.) Wenn ein Benutzer als voller Superuser authentifiziert ist, unterliegt er im Allgemeinen nicht den Berechtigungen, die auf typischen Unix-Dateisystembesitzern basieren (die Einstellungen „Besitzer“ und „Gruppenbesitzer“). Der Benutzer kann dennoch anderen berechtigungsbasierten Einschränkungen unterliegen, wie z. B. Berechtigungen, die durch die Art und Weise erzwungen werden, wie eine Partition gemountet wurde (was der Grund ist, warum Software einem Benutzer nicht erlaubt, auf eine schreibgeschützte CD-ROM zu schreiben), oder aus anderen Gründen, aus denen eine Datei möglicherweise keine Berechtigungen bietet (z. B. wenn eine Datei gesperrt ist, was darauf hinweist, dass die Datei bereits verwendet wird). Wenn eine Datei im Besitz von ist:

Wurzel:Wurzel

und verfügt über die folgenden Berechtigungen:

rwx------

Dann erhält ein Benutzer keine Berechtigungen für die Datei, nur weil er einer Gruppe namens „root“ angehört. Die Gruppe „root“ kann also praktischer sein (keine Passwörter erforderlich), obwohl sie eingeschränkter sein kann. (Oder eine Gruppe in /etc/sudoers kann eingeschränkter sein, je nachdem, wie /etc/sudoers konfiguriert ist.)

Antwort3

Erstens rootist der Benutzer der erste Benutzer in der sudoersGruppe, gleich nachdem Ubuntu auf dem Computer installiert wurde. Zweitens roothaben ein Superuser (z. B. Michael) beide dieselbe user id( UID) von 0, was die ID von Superusern ist. Sie haben dieselben Berechtigungen. Drittens besteht der einzige Unterschied darin, dass ein Benutzer vor jedem Befehl, der spezielle Berechtigungen erfordert, einen Befehl super usereingeben muss , ein Benutzer jedoch nicht. Sie unterscheiden sich nur im Namen und werden namentlich erkannt.sudoroot

verwandte Informationen