Linux-Benutzerverwaltung über die Kommandozeile: Ein umfassender Leitfaden

Linux-Benutzerverwaltung über die Kommandozeile: Ein umfassender Leitfaden

Die Benutzerverwaltung ist ein grundlegender Aspekt für jeden Linux-Systemadministrator. Ob es sich um einen einzelnen Rechner oder ein Servernetzwerk handelt – die Ordnung der Benutzerkonten ist für die Systemkontrolle und -sicherheit unerlässlich. Eine ordnungsgemäße Verwaltung stellt sicher, dass nur diejenigen Zugriff erhalten, die ihn tatsächlich benötigen, und zwar nur so lange wie nötig. Uneingeschränkte Berechtigungen können zu potenziellen Sicherheitslücken bei sensiblen Daten oder kritischen Ressourcen führen. In diesem Artikel stellen wir Ihnen wichtige Kommandozeilen-Tools vor, mit denen Administratoren Benutzerkonten direkt im Terminal erstellen, bearbeiten und löschen können.

Wichtige Dateien für die Benutzerverwaltung unter Linux

Linux speichert wichtige Benutzer- und Gruppeninformationen in speziellen Systemdateien. Diese Dateien enthalten Kontodetails, Passwortdaten und Gruppenberechtigungen und bilden die Grundlage für die Benutzerverwaltung und Zugriffskontrolle.

Datei / Verzeichnis Beschreibung
/etc/passwd Enthält Benutzer-ID (UID), Gruppen-ID (GID), Home-Verzeichnis und Standard-Shell. Für alle lesbar, nur von root/sudo bearbeitbar.
/etc/group Enthält Listen mit Gruppennamen, GIDs und Mitgliedern, die für die Verwaltung von Gruppenmitgliedschaften und Berechtigungen unerlässlich sind.
/etc/sudoers Legt fest, welche Benutzer/Gruppen Befehle als Root ausführen dürfen. Erfordert sorgfältige Bearbeitung.
/etc/shadow Speichert Passwort-Hashes und Ablaufinformationen. Der Zugriff ist nur dem Root-Benutzer gestattet.
/etc/gshadow Enthält Details zum Gruppenpasswort und Informationen zum Ablaufdatum, auf die nur der Root-Benutzer zugreifen kann.
/etc/skel Dateien wie „.bashrc“ und „.profile“ werden automatisch in die neuen Benutzerverzeichnisse kopiert.
/etc/login.defs Konfiguriert Einstellungen für Passwortalterung, Ablaufdatum und verschiedene Sicherheitsrichtlinien.

So zeigen Sie bestehende Benutzer an

Eine einfache Methode, um bestehende Benutzer auf einem Linux-System zu überprüfen, besteht darin, die Datei „/etc/passwd“ zu untersuchen, die wichtige Informationen über Benutzerkonten enthält. Um diese Datei anzuzeigen, führen Sie folgenden Befehl aus:

sudo cat /etc/passwd

Jede Zeile in der Datei entspricht einem eindeutigen Benutzerkonto.

Benutzerinformationen anzeigen

Der idBefehl liefert den Benutzernamen UID, GIDdie Benutzername-ID und alle Gruppen, denen der Benutzer angehört:

id usernamegroups usernamegetent passwd username

Alternativ groupszeigt der Befehl nur die einem Benutzer zugeordneten Gruppen an. Der getentBefehl ruft Kontodetails aus Systemdatenbanken ab, darunter „/etc/passwd“, LDAP oder andere konfigurierte Quellen.

Informationen zu bestehenden Benutzern anzeigen

Benutzer erstellen mit dem Befehl useradd

Der useraddBefehl ist ein grundlegendes Hilfsprogramm, das in den meisten Distributionen verfügbar ist, gilt aber im Vergleich zu als weniger benutzerfreundlich adduser. Trotz ihrer Unterschiede erfüllen beide Befehle ähnliche Funktionen.

Um mehr über den useraddBefehl zu erfahren, verwenden Sie den manBefehl oder fügen Sie ihn --helpfür eine Kurzanleitung hinzu:

man useradd--help

Linux-Benutzerhilfe

Um einen neuen Benutzer mit zugehörigem Home-Verzeichnis anzulegen, können Sie folgenden Befehl verwenden:

sudo useradd --create-home

Wenn Sie diese --create-homeOption weglassen, verfügt das Benutzerkonto über kein persönliches Verzeichnis.Überprüfen Sie nach der Erstellung des Benutzers dessen Existenz mit dem Befehl `grep`:

grep /etc/passwd

Benutzer erstellen und verifizieren

Benutzer mit dem Befehl „adduser“ erstellen

Im Gegensatz zu ist useraddder adduserBefehl ein Perl-Skript, das eine interaktive Benutzererstellung ermöglicht und unter anderem nach Passwort und Home-Verzeichnis fragt. In vielen Distributionen wie Red Hat und CentOS adduserdient als symbolischer Link zu useradd. Auf anderen Systemen wie Arch Linux kann jedoch ein separates Paket enthalten sein adduser.

Bei Aufruf erzeugt dieser Befehl üblicherweise eine Gruppe mit demselben Namen wie der Benutzer. Standardeinstellungen für so erstellte Benutzer useraddkönnen in der Datei „/etc/default/useradd“ angepasst werden, wo Attribute wie Standard-Shell und Home-Verzeichnis vordefiniert werden können.

Standardeinstellungen für Benutzer konfigurieren

Um einen neuen Benutzer anzulegen, führen Sie folgenden Befehl aus:

sudo adduser testuser

Sie werden aufgefordert, ein Passwort festzulegen und zu bestätigen, weitere Benutzerinformationen anzugeben und die Kontoerstellung abzuschließen.

Benutzer mit Adduser erstellen

Benutzerpasswörter aktualisieren

Sobald ein Benutzerkonto eingerichtet wurde, können Sie das Passwort des Benutzers mit einem passwdBefehl wie diesem ändern:

sudo passwd

Bei Ausführung dieses Befehls werden Sie zur Eingabe und Bestätigung eines neuen Passworts aufgefordert. Normale Benutzer können ihr Passwort nur ändern, wenn sie den Befehl ohne Parameter ausführen sudo.

Passwort aktualisieren

Die Anforderungen an die Passwortkomplexität werden von PAM (Pluggable Authentication Modules) durchgesetzt und können auf Ubuntu-Systemen üblicherweise in „/etc/pam.d/common-password“ konfiguriert werden. Weitere Informationen finden Sie im Handbuch zu pam-auth-update.

Linux Pam Auth Man

Nutzung des usermod-Befehls zur Benutzerverwaltung

Dieser usermodBefehl ermöglicht das Ändern von Attributen bestehender Benutzerkonten. Dazu gehören das Aktualisieren von Benutzer-IDs, Anmeldenamen, Home-Verzeichnissen oder Gruppenzugehörigkeiten. Um beispielsweise die UID eines Benutzers zu ändern, verwenden Sie:

sudo usermod -u

Eine Änderung der UID oder GID kann sich auf die Dateibesitzverhältnisse und Berechtigungen im gesamten System auswirken.

Um das Home-Verzeichnis eines Benutzers zu ändern, verwenden Sie Folgendes:

sudo usermod -d

Darüber hinaus können Sie Benutzerkonten mit den folgenden Befehlen sperren oder entsperren:

sudo usermod -L sudo usermod -U

Schließlich können Sie mit der folgenden Option ein Ablaufdatum für Ihr Konto festlegen --expiredate:

sudo usermod --expiredate

Diese Anpassungen ermöglichen Ihnen eine effektive Verwaltung des Benutzerzugriffs und der Benutzerattribute, ohne dass eine Kontolöschung erforderlich ist.

Benutzer in Gruppen integrieren

Gruppen erleichtern die gemeinsame Nutzung von Berechtigungen durch mehrere Benutzer, was insbesondere für die gemeinsame Verwaltung von Dateien, den Betrieb von Diensten oder die gemeinsame Ausführung administrativer Aufgaben von Vorteil ist.

Um einen Benutzer in eine bestimmte Gruppe zu integrieren, verwenden Sie den folgenden usermodBefehl mit den Optionen -aund :-G

sudo usermod -a -G

Die -aKennzeichnung ist von entscheidender Bedeutung, da sie den Benutzer bestehenden Gruppen zuordnet; wird sie weggelassen, kann dies dazu führen, dass die aktuellen Gruppenzugehörigkeiten überschrieben werden.

Benutzer zu einer Gruppe hinzufügen

Alternativ gpasswdkann der Befehl auch Gruppenmitgliedschaften verwalten:

sudo gpasswd -a username groupname

Um einen Benutzer aus einer Gruppe zu entfernen, führen Sie folgenden Befehl aus:

sudo gpasswd -d username groupname

Löschen von Benutzerkonten

Wenn ein Benutzerkonto nicht mehr benötigt wird, kann es mit folgendem userdelBefehl entfernt werden:

sudo userdel username

Benutzer löschen

Dieser Befehl löscht das Benutzerkonto, behält aber das Benutzerverzeichnis bei. Für die vollständige Löschung, einschließlich des Benutzerverzeichnisses, verwenden Sie:

sudo userdel -r username

Beachten Sie, dass dies userdelnicht funktioniert, wenn unter dem Benutzerkonto bereits aktive Prozesse laufen.

Verfolgung der Benutzeranmeldeaktivitäten

Die Überwachung der Anmeldeaktivitäten ist für Systemadministratoren unerlässlich, um unberechtigte Zugriffsversuche zu erkennen und Authentifizierungsprobleme zu beheben. Bei Ubuntu- und Debian-Systemen werden Anmeldeversuche in der Datei „/var/log/auth.log“ protokolliert. Die neuesten Einträge finden Sie unter:

sudo tail /var/log/auth.log

Benutzerprotokolle anzeigen

Bei Red Hat- oder CentOS-Systemen finden Sie die Anmeldeprotokolle unter „/var/log/secure“.Systeme, die systemd verwenden, bieten möglicherweise eine weitere Methode zum Anzeigen der Authentifizierungsprotokolle:

sudo journalctl | grep ssh

Dieser proaktive Ansatz zur Benutzerkontenverwaltung sorgt für ein übersichtliches System und schützt vor unberechtigtem Zugriff.

Quellen & Bilder

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert