Linux-Gruppen verwalten mit groupadd, usermod und groupdel

CompTIABeginner
Jetzt üben

Einführung

In diesem Lab erlernen Sie die grundlegenden Fertigkeiten zur Verwaltung von Benutzergruppen in einer Linux-Umgebung. Sie werden praktische Erfahrungen mit den zentralen Kommandozeilen-Werkzeugen der Gruppenadministration sammeln: groupadd zum Erstellen neuer Gruppen, usermod zum Modifizieren von Benutzermitgliedschaften und groupdel zum Entfernen von Gruppen aus dem System.

Sie folgen dabei einem praxisnahen Arbeitsablauf, der mit der Erstellung einer neuen Gruppe beginnt. Anschließend fügen Sie einen bestehenden Benutzer dieser Gruppe hinzu und nutzen Prüfbefehle wie grep und groups, um die Änderungen zu verifizieren. Zum Abschluss des Labs üben Sie das Entfernen der Gruppe und bestätigen deren Löschung, womit Sie den vollständigen Lebenszyklus der Gruppenverwaltung abdecken.

Eine neue Linux-Gruppe mit groupadd erstellen

In diesem Schritt lernen Sie, wie Sie eine neue Benutzergruppe auf Ihrem Linux-System anlegen. Unter Linux sind Gruppen ein entscheidender Mechanismus, um Berechtigungen für mehrere Benutzer gleichzeitig zu steuern. Anstatt jedem Benutzer einzeln Rechte zuzuweisen, können Sie diese einer Gruppe zuordnen. Jeder Benutzer, der Mitglied dieser Gruppe ist, erbt automatisch diese Berechtigungen. Dies vereinfacht die Systemadministration erheblich, insbesondere in Umgebungen mit vielen Anwendern.

Für diese Übung nehmen wir an, dass Sie Systemadministrator in einem Unternehmen sind und eine neue Gruppe für ein neu formiertes Forschungs- und Entwicklungsteam erstellen müssen. Dazu verwenden wir den Befehl groupadd. Dieser Befehl erfordert administrative Privilegien, die Sie über sudo erhalten.

Öffnen Sie zunächst Ihr Terminal. Es sollte im Standardverzeichnis ~/project starten. Nun erstellen wir eine neue Gruppe mit dem Namen research.

Führen Sie den folgenden Befehl aus:

sudo groupadd research

Der Befehl sudo erhöht Ihre Rechte, um diese administrative Aufgabe auszuführen. groupadd ist das Werkzeug zum Erstellen der Gruppe, und research ist der Name, den wir für unsere neue Gruppe gewählt haben.

Wenn der Befehl erfolgreich war, erfolgt keine Textausgabe. Um zu bestätigen, dass die Gruppe erstellt wurde, können Sie die Datei /etc/group einsehen. In dieser Datei werden Informationen über alle Gruppen des Systems gespeichert. Wir nutzen den Befehl grep, um gezielt nach unserer neu erstellten Gruppe in dieser Datei zu suchen.

grep research /etc/group

Sie sollten in der Ausgabe eine neue Zeile sehen, die der Gruppe research entspricht. Das Format lautet Gruppenname:Passwort-Platzhalter:Gruppen-ID:Mitglieder. Ihre Gruppen-ID (GID) kann sich von dem unten stehenden Beispiel unterscheiden, da das System diese automatisch vergibt.

research:x:5003:

Diese Ausgabe bestätigt, dass die Gruppe research nun auf Ihrem System existiert und bereit ist, Benutzer aufzunehmen.

Einen Benutzer einer sekundären Gruppe mit usermod hinzufügen

In diesem Schritt fügen Sie einen bestehenden Benutzer der von Ihnen erstellten Gruppe research hinzu. Unter Linux hat jeder Benutzer eine primäre Gruppe und kann zusätzlich Mitglied in mehreren sekundären Gruppen (auch ergänzende Gruppen genannt) sein. Dies ermöglicht eine flexible Rechteverwaltung. Da die Gruppe research nun bereitsteht, fügen wir den aktuellen Benutzer labex als sekundäres Mitglied hinzu. Dadurch erhält der Benutzer labex alle Berechtigungen der Gruppe research, ohne dass sich seine primäre Gruppenzugehörigkeit ändert.

Um die Gruppenzugehörigkeiten eines Benutzers zu ändern, verwenden wir das Werkzeug usermod. Dies ist ein mächtiges Dienstprogramm zum Ändern von Benutzerkontodetails.

Wir verwenden den Befehl usermod mit den Optionen -aG:

  • -G: Gibt die neue Liste der sekundären Gruppen an.
  • -a: Steht für „append“ (anhängen). Dies ist eine sehr wichtige Option. Sie fügt den Benutzer der angegebenen Gruppe hinzu, ohne ihn aus seinen aktuellen Gruppen zu entfernen. Wenn Sie -a weglassen, würde der Benutzer aus allen anderen sekundären Gruppen entfernt, die nicht im Befehl aufgeführt sind.

Führen Sie in Ihrem Terminal den folgenden Befehl aus, um den Benutzer labex der Gruppe research hinzuzufügen:

sudo usermod -aG research labex

Dieser Befehl erfordert sudo, da er systemweite Benutzerinformationen verändert. research ist die Zielgruppe und labex ist der Benutzer, der modifiziert wird. Wie bei groupadd erfolgt bei Erfolg keine direkte Rückmeldung im Terminal.

Sie können die Änderung sofort überprüfen, indem Sie die Datei /etc/group erneut untersuchen.

grep research /etc/group

Sie sollten nun den Benutzernamen labex am Ende der Zeile für die Gruppe research sehen.

research:x:5003:labex

Dies bestätigt, dass labex nun Mitglied der Gruppe research ist.

Gruppen- und Benutzermitgliedschaften mit grep und groups prüfen

In diesem Schritt lernen Sie effizientere Wege kennen, um die Gruppenzugehörigkeiten eines Benutzers zu prüfen. Wir haben zwar bereits grep auf die Datei /etc/group angewendet, um die Mitglieder einer bestimmten Gruppe zu sehen, aber es gibt direktere Methoden, um alle Gruppen anzuzeigen, denen ein bestimmter Benutzer angehört. Dies ist eine alltägliche Aufgabe für Systemadministratoren, um Berechtigungen und Konfigurationen zu validieren.

Zuerst nutzen wir erneut grep, aber diesmal, um jede sekundäre Gruppe zu finden, in der der Benutzer labex Mitglied ist. Indem wir nach dem Benutzernamen in der Datei /etc/group suchen, sehen wir alle Einträge, in denen labex als Mitglied gelistet ist.

Führen Sie diesen Befehl in Ihrem Terminal aus:

grep labex /etc/group

Die Ausgabe zeigt jede Zeile in /etc/group, die die Zeichenfolge „labex“ enthält. Dies umfasst die Gruppe research, die wir gerade hinzugefügt haben, sowie alle anderen Standardgruppen. Je nach Systemkonfiguration kann Ihre Ausgabe weitere Gruppen enthalten.

sudo:x:27:labex
ssl-cert:x:121:labex
labex:x:5000:
public:x:5002:labex
research:x:5003:labex

Obwohl dies funktioniert, ist der Befehl groups für diese Aufgabe wesentlich direkter und benutzerfreundlicher. Dieser Befehl wurde speziell dafür entwickelt, alle Gruppen (sowohl primäre als auch sekundäre) eines bestimmten Benutzers aufzulisten.

Um alle Gruppen zu sehen, denen der Benutzer labex angehört, führen Sie folgenden Befehl aus:

groups labex

Dieser Befehl liefert eine übersichtliche, einzeilige Zusammenfassung der Gruppenzugehörigkeiten des Benutzers.

labex : labex sudo ssl-cert public research

In dieser Ausgabe ist der Name vor dem Doppelpunkt (labex) der abgefragte Benutzer. Die Liste nach dem Doppelpunkt zeigt alle Gruppen an. Die erste Gruppe in der Liste (labex) ist die primäre Gruppe des Benutzers. Alle folgenden Gruppen (sudo, ssl-cert, public, research) sind die sekundären Gruppen. Dieser Befehl ist oft der schnellste Weg, um sich ein vollständiges Bild von den Gruppenmitgliedschaften eines Benutzers zu machen.

Eine Gruppe mit groupdel löschen und die Entfernung verifizieren

In diesem letzten Schritt lernen Sie, wie Sie eine Gruppe wieder aus dem System entfernen. Dies ist eine typische administrative Aufgabe, wenn ein Team aufgelöst oder ein Projekt abgeschlossen wird und die zugehörige Gruppe nicht mehr benötigt wird. Zum Löschen einer Gruppe verwenden wir den Befehl groupdel.

Genau wie das Erstellen ist auch das Löschen einer Gruppe eine administrative Aktion, die sudo-Rechte erfordert. Wichtig zu wissen: Sie können die primäre Gruppe eines existierenden Benutzers nicht löschen. Sie müssten zuerst die primäre Gruppe des Benutzers ändern, bevor Sie die alte löschen können. Da research für labex jedoch nur eine sekundäre Gruppe war, können wir sie problemlos löschen.

Führen Sie in Ihrem Terminal den folgenden Befehl aus, um die Gruppe research zu löschen:

sudo groupdel research

Der Befehl groupdel erzeugt bei Erfolg keine Ausgabe. Er entfernt lediglich den Eintrag der Gruppe aus der Gruppendatenbank des Systems, primär aus der Datei /etc/group.

Um zu bestätigen, dass die Gruppe erfolgreich entfernt wurde, können wir denselben grep-Befehl verwenden, mit dem wir zuvor ihre Existenz geprüft haben.

grep research /etc/group

Diesmal sollte der Befehl keine Ausgabe liefern. Sie kehren sofort zur Eingabeaufforderung zurück. Das Ausbleiben einer Ausgabe ist die Bestätigung dafür, dass die Zeile mit research aus der Datei /etc/group gelöscht wurde und die Gruppe somit nicht mehr auf dem System existiert.

Zusammenfassung

In diesem Lab haben Sie die Grundlagen der Verwaltung von Benutzergruppen in einer Linux-Umgebung erlernt. Sie haben damit begonnen, eine neue Gruppe namens research mit dem Befehl sudo groupadd zu erstellen – ein wesentliches Werkzeug zur Organisation von Benutzern und zur Vereinfachung der Rechteverwaltung. Um die erfolgreiche Erstellung zu bestätigen, haben Sie die Datei /etc/group mit dem Befehl grep untersucht.

Das Lab deckte zudem den vollständigen Lebenszyklus der Gruppenverwaltung ab. Sie haben gelernt, wie man einen bestehenden Benutzer mit dem Befehl usermod einer sekundären Gruppe hinzufügt und wie man Gruppenmitgliedschaften mit Werkzeugen wie grep und groups überprüft. Abschließend haben Sie das Entfernen einer Gruppe mit dem Befehl groupdel geübt und die Löschung verifiziert, wodurch Sie Ihr Verständnis für die essenziellen Aufgaben der Gruppenadministration vervollständigt haben.