Wie man prüft, ob ein Benutzer einer Gruppe in Linux angehört

LinuxLinuxBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie prüfen können, ob ein Benutzer einer bestimmten Gruppe in Linux angehört. Das Verständnis der Benutzer-Gruppenmitgliedschaft ist für die Verwaltung von Berechtigungen und Zugangskontrollen in einem Linux-System von entscheidender Bedeutung.

Sie werden drei verschiedene Methoden zur Überprüfung der Gruppenmitgliedschaft erkunden: die Verwendung des Befehls groups zur Auflistung der Gruppen eines Benutzers, die Prüfung der Datei /etc/group, die Gruppeninformationen enthält, und die Nutzung des Befehls id zur Anzeige von Benutzer- und Gruppenidentitäten. Am Ende dieses Labs können Sie die Gruppenmitgliedschaften eines Benutzers sicher bestimmen.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/UserandGroupManagementGroup(["User and Group Management"]) linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/UserandGroupManagementGroup -.-> linux/groups("Group Displaying") linux/UserandGroupManagementGroup -.-> linux/id("User/Group ID Displaying") subgraph Lab Skills linux/cat -.-> lab-558773{{"Wie man prüft, ob ein Benutzer einer Gruppe in Linux angehört"}} linux/groups -.-> lab-558773{{"Wie man prüft, ob ein Benutzer einer Gruppe in Linux angehört"}} linux/id -.-> lab-558773{{"Wie man prüft, ob ein Benutzer einer Gruppe in Linux angehört"}} end

Auflisten der Benutzer-Gruppen mit dem groups-Befehl

In diesem Schritt werden wir untersuchen, wie Sie die Gruppen auflisten können, zu denen ein Benutzer gehört, indem Sie den Befehl groups verwenden. Das Verständnis von Benutzer-Gruppen ist in Linux grundlegend, da sie zur Verwaltung von Berechtigungen und des Zugangs zu Dateien und Ressourcen verwendet werden.

Der Befehl groups ist ein einfaches Hilfsprogramm, das die Namen der primären und zusätzlichen Gruppen für jeden angegebenen Benutzernamen ausgibt oder, wenn kein Benutzername angegeben wird, die des aktuellen Prozesses.

Lassen Sie uns herausfinden, zu welchen Gruppen der aktuelle Benutzer (labex) gehört.

Öffnen Sie das Terminal, wenn es noch nicht geöffnet ist. Sie können dies tun, indem Sie auf das Symbol Xfce Terminal auf der linken Seite des Desktops klicken.

Geben Sie jetzt den folgenden Befehl ein und drücken Sie die Eingabetaste:

groups

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

labex sudo ssl-cert public

Diese Ausgabe zeigt die Gruppen, zu denen der Benutzer labex gehört. In diesem Beispiel gehört der Benutzer labex zu den Gruppen labex, sudo, ssl-cert und public.

  • Die erste aufgeführte Gruppe ist normalerweise die primäre Gruppe des Benutzers.
  • Die folgenden Gruppen sind zusätzliche Gruppen.

Die Mitgliedschaft in der Gruppe sudo ist wichtig, da es dem Benutzer ermöglicht, Befehle mit Superuser-Rechten mithilfe des Befehls sudo auszuführen, wie Sie es im vorherigen Lab beim Installieren von htop getan haben.

Sie können den Befehl groups auch verwenden, um die Gruppen eines anderen Benutzers zu prüfen, wenn Sie seinen Benutzernamen kennen. Beispielsweise würden Sie, um die Gruppen des Benutzers root zu prüfen, Folgendes eingeben:

groups root

Die Ausgabe würde die Gruppen anzeigen, zu denen der Benutzer root gehört, was normalerweise nur die Gruppe root ist:

root

Das Verständnis, zu welchen Gruppen ein Benutzer gehört, hilft Ihnen zu verstehen, welche Berechtigungen er auf dem System hat.

Klicken Sie auf Weiter, um mit dem nächsten Schritt fortzufahren und die Ausführung Ihres Befehls zu überprüfen.

Überprüfen der Gruppenmitgliedschaft in /etc/group

In diesem Schritt werden wir uns die Datei /etc/group ansehen, die eine wichtige Systemdatei in Linux ist und Informationen über Benutzer-Gruppen speichert. Während der Befehl groups Ihnen eine schnelle Auflistung der Gruppen eines Benutzers gibt, zeigt die Prüfung der Datei /etc/group, welche Benutzer systemweit zu welchen Gruppen gehören.

Die Datei /etc/group enthält für jede Gruppe eine Zeile. Jede Zeile besteht aus vier durch Doppelpunkte getrennten Feldern:

  1. Gruppenname: Der Name der Gruppe.
  2. Passwortfeld: Normalerweise 'x', was darauf hinweist, dass Gruppen-Passwörter nicht verwendet werden (oder woanders gespeichert sind).
  3. Gruppen-ID (GID): Eine eindeutige numerische Kennung für die Gruppe.
  4. Mitglieder: Eine durch Kommas getrennte Liste der Benutzer, die Mitglieder dieser Gruppe sind. Beachten Sie, dass Benutzer, deren primäre Gruppe diese Gruppe ist, hier nicht aufgeführt werden.

Wir können den Befehl cat verwenden, um den Inhalt dieser Datei anzuzeigen. cat ist ein Standard-Unix-Hilfsprogramm, das Dateien sequenziell liest und sie an die Standardausgabe schreibt.

Öffnen Sie Ihr Terminal und geben Sie den folgenden Befehl ein, um den Inhalt der Datei /etc/group anzuzeigen:

cat /etc/group

Drücken Sie die Eingabetaste.

Sie werden eine lange Ausgabe sehen, wobei jede Zeile eine andere Gruppe auf dem System darstellt. Suchen Sie nach Zeilen, die den Benutzernamen labex im vierten Feld (der Liste der Mitglieder) enthalten.

Beispielsweise könnten Sie Zeilen ähnlich diesen sehen (die genaue Ausgabe variiert):

...
sudo:x:27:labex
...
ssl-cert:x:121:labex
...
public:x:5002:labex
...

In diesen Beispielzeilen:

  • Die Gruppe sudo hat labex als Mitglied.
  • Die Gruppe ssl-cert hat labex als Mitglied.
  • Die Gruppe public hat labex als Mitglied.

Beachten Sie, dass die Gruppe labex selbst möglicherweise labex nicht als Mitglied im vierten Feld auflistet, wenn labex deren primäre Gruppe ist.

Das Anzeigen der Datei /etc/group gibt Ihnen einen detaillierteren Einblick in die Gruppenkonfigurationen im Vergleich zur einfachen Ausgabe des Befehls groups. Es ist eine wertvolle Datei für Systemadministratoren, um Benutzerberechtigungen zu verstehen.

Klicken Sie auf Weiter, um zum nächsten Schritt zu gelangen.

Überprüfen der Benutzer-Gruppen mit dem id-Befehl

In diesem Schritt werden wir erneut den id-Befehl verwenden, den Sie im ersten Lab genutzt haben. Der id-Befehl bietet einen umfassenden Überblick über die Identität eines Benutzers, einschließlich seiner Benutzer-ID (UID), primären Gruppen-ID (GID) und aller Gruppen, zu denen er gehört. Dieser Befehl ist eine schnelle Möglichkeit, die Gruppenmitgliedschaften zu überprüfen.

Sie haben bereits id verwendet, um Ihre UID und GID anzuzeigen. Jetzt konzentrieren wir uns auf den groups-Teil seiner Ausgabe und vergleichen ihn mit dem, was Sie mit dem groups-Befehl und in der /etc/group-Datei gesehen haben.

Öffnen Sie Ihr Terminal und geben Sie den folgenden Befehl ein:

id

Drücken Sie die Eingabetaste.

Sie werden eine Ausgabe ähnlich der folgenden sehen:

uid=XXXX(labex) gid=XXXX(labex) groups=XXXX(labex),XX(sudo),XXX(ssl-cert),XXXX(public)

(Hinweis: XXXX und XX sind Platzhalter für die tatsächlichen numerischen IDs, die geringfügig variieren können, aber die Gruppennamen sollten konsistent sein).

Lassen Sie uns die Ausgabe erneut zerlegen und uns auf den groups-Abschnitt konzentrieren:

  • uid=XXXX(labex): Ihre Benutzer-ID und Ihr Benutzername.
  • gid=XXXX(labex): Ihre primäre Gruppen-ID und der Name Ihrer primären Gruppe.
  • groups=XXXX(labex),XX(sudo),XXX(ssl-cert),XXXX(public): Eine durch Kommas getrennte Liste aller Gruppen, zu denen Sie gehören, einschließlich Ihrer primären Gruppe und aller zusätzlichen Gruppen.

Vergleichen Sie die Liste der Gruppennamen im groups=-Abschnitt der id-Befehlsausgabe mit der Ausgabe, die Sie im Schritt 1 mit dem groups-Befehl erhalten haben. Sie sollten die gleiche Liste von Gruppennamen sehen.

Der id-Befehl wird oft dem groups-Befehl vorgezogen, da er auch die numerischen IDs (UID und GID) liefert, die bei Skripting und Systemadministrationstasks nützlich sein können. Er gibt Ihnen in einer einzigen Zeile der Ausgabe ein vollständiges Bild der Identität eines Benutzers und seiner Gruppenmitgliedschaften.

Sie haben nun drei verschiedene Methoden gelernt, um die Gruppenmitgliedschaften von Benutzern in Linux zu überprüfen: mit dem groups-Befehl, durch die Prüfung der /etc/group-Datei und mit dem id-Befehl. Jede Methode liefert etwas andere Informationen und ist in verschiedenen Kontexten nützlich.

Klicken Sie auf Weiter, um diesen Schritt und das Lab abzuschließen.

Zusammenfassung

In diesem Lab haben wir gelernt, wie man in Linux überprüft, ob ein Benutzer einer Gruppe angehört, indem wir drei verschiedene Methoden anwendeten. Zunächst haben wir den groups-Befehl genutzt, um schnell die primären und zusätzlichen Gruppen für einen bestimmten Benutzer oder den aktuellen Benutzer aufzulisten. Dabei haben wir verstanden, dass die Gruppenmitgliedschaft die Berechtigungen und den Zugang bestimmt.

Anschließend haben wir uns die Datei /etc/group angeschaut, eine grundlegende Systemdatei, die detaillierte Gruppeninformationen enthält, und gelernt, wie man ihre Struktur interpretiert, um die Gruppenmitgliedschaften direkt zu überprüfen. Schließlich haben wir den id-Befehl verwendet, ein vielseitiges Hilfsprogramm, das umfassende Informationen über Benutzer und Gruppen liefert, einschließlich der Benutzer-ID, der primären Gruppen-ID und aller zusätzlichen Gruppen-IDs, und so eine weitere Möglichkeit bietet, die Gruppenmitgliedschaften zu bestätigen.