Linux-Benutzerbearbeitung

LinuxBeginner
Jetzt üben

Einführung

Die Benutzerverwaltung ist ein grundlegendes Aspekt der Linux-Systemadministration. Egal, ob Sie einen persönlichen Computer einrichten, einen Server verwalten oder in einer Mehrbenutzerumgebung arbeiten, das Verständnis, wie man Benutzerkonten erstellt, ändert und verwaltet, ist unerlässlich.

In diesem Lab (Praktikum) werden Sie lernen, wie Sie den Befehl usermod verwenden, um Benutzerattribute wie Benutzername, Heimatverzeichnis und Gruppenmitgliedschaft zu ändern. Sie werden praktische Erfahrungen mit wichtigen Befehlen für die Benutzerverwaltung in Linux sammeln, die Ihnen die Fähigkeiten vermitteln, die Sie benötigen, um Benutzerkonten in jeder Linux-Umgebung effizient zu verwalten.

Erstellen und Umbenennen eines Benutzers

In diesem Schritt erstellen Sie einen neuen Benutzer und lernen, wie Sie ihn umbenennen. Dies ist eine häufige Aufgabe, wenn Benutzer ihre Rollen ändern oder wenn Sie Benutzernamen in Ihrem System standardisieren müssen.

Öffnen Sie zunächst Ihr Terminal. Sie sollten sich bereits im Verzeichnis ~/project befinden. Beginnen wir mit dem Erstellen eines neuen Benutzers namens temporaryuser:

sudo useradd temporaryuser

Dieser Befehl erstellt ein neues Benutzerkonto im System. Standardmäßig erstellt useradd kein Home-Verzeichnis und legt kein Passwort fest.

Überprüfen wir nun, ob der Benutzer erfolgreich erstellt wurde:

grep temporaryuser /etc/passwd

Sie sollten einen Eintrag für temporaryuser in der Ausgabe sehen, der bestätigt, dass der Benutzer erstellt wurde.

Als Nächstes benennen wir diesen Benutzer von temporaryuser in permanentuser um, indem wir den Befehl usermod verwenden:

sudo usermod -l permanentuser temporaryuser

Die Option -l gibt an, dass wir den Anmeldenamen (Login Name) ändern möchten. Nach Ausführung dieses Befehls wird der Benutzer, der zuvor als temporaryuser bekannt war, nun als permanentuser bekannt sein.

Überprüfen wir, ob der Benutzername geändert wurde:

grep permanentuser /etc/passwd

Sie sollten den Benutzereintrag mit dem neuen Namen permanentuser sehen.

Erstellen und weisen wir nun ein Home-Verzeichnis für diesen Benutzer zu:

sudo usermod -d /home/permanentuser -m permanentuser

In diesem Befehl:

  • -d gibt den neuen Pfad zum Home-Verzeichnis an
  • -m erstellt das neue Home-Verzeichnis, falls es nicht existiert, oder verschiebt den Inhalt vom alten Home-Verzeichnis in das neue, falls beide existieren

Überprüfen wir, ob das Home-Verzeichnis erstellt wurde:

ls -ld /home/permanentuser

Sie sollten das neu erstellte Home-Verzeichnis für permanentuser sehen.

Hinzufügen eines Benutzers zu Gruppen

In Linux werden Gruppen verwendet, um Benutzer zu organisieren und Berechtigungen zu verwalten. Das Hinzufügen eines Benutzers zu bestimmten Gruppen ist eine wesentliche Methode, um ihm Zugang zu bestimmten Ressourcen oder Funktionen zu gewähren.

Zunächst überprüfen wir, zu welchen Gruppen unser Benutzer derzeit gehört:

groups permanentuser

Standardmäßig wird, wenn Sie einen Benutzer mit useradd erstellen, der Benutzer einer primären Gruppe zugewiesen, die denselben Namen wie der Benutzername hat.

Jetzt überprüfen wir, ob die sudo-Gruppe auf Ihrem System existiert:

grep sudo /etc/group

Sie sollten einen Eintrag für die sudo-Gruppe sehen. Diese spezielle Gruppe ermöglicht es ihren Mitgliedern, Befehle mit Superuser-Rechten mithilfe des sudo-Befehls auszuführen.

Fügen wir unseren Benutzer der sudo-Gruppe hinzu:

sudo usermod -aG sudo permanentuser

In diesem Befehl:

  • -a bedeutet "anhängen", was sicherstellt, dass wir den Benutzer der Gruppe hinzufügen, ohne ihn aus anderen Gruppen zu entfernen
  • -G gibt die Gruppe(n) an, zu der/denen der Benutzer hinzugefügt werden soll
  • sudo ist der Name der Gruppe
  • permanentuser ist der Benutzer, den wir ändern

Überprüfen wir, ob der Benutzer der sudo-Gruppe hinzugefügt wurde:

groups permanentuser

Die Ausgabe sollte jetzt sudo in der Gruppenliste enthalten.

Sie können auch die Gruppenmitgliedschaft überprüfen, indem Sie sich die Datei /etc/group ansehen:

grep sudo /etc/group

Die Ausgabe sollte permanentuser in der Liste der Mitglieder der sudo-Gruppe enthalten.

Ändern der Shell eines Benutzers

Jeder Benutzer in Linux hat eine Standard-Shell, die die Befehlszeilenschnittstelle bestimmt, die er beim Anmelden verwendet. In diesem Schritt lernen Sie, wie Sie die Anmeldeshell eines Benutzers ändern.

Zunächst überprüfen wir die aktuelle Shell, die unserem Benutzer zugewiesen ist:

grep permanentuser /etc/passwd

Schauen Sie sich das letzte Feld in der Ausgabe an. Es sollte die aktuelle Shell anzeigen, die für Benutzer, die mit useradd ohne zusätzliche Optionen erstellt wurden, typischerweise /bin/sh ist.

Jetzt ändern wir die Shell auf Bash, eine Shell mit mehr Funktionen:

sudo usermod -s /bin/bash permanentuser

Die Option -s gibt die neue Anmeldeshell für den Benutzer an.

Lassen Sie uns überprüfen, ob die Shell geändert wurde:

grep permanentuser /etc/passwd

Das Ende der Zeile sollte jetzt /bin/bash als Shell für permanentuser anzeigen.

Verschiedene Shells bieten unterschiedliche Funktionen und Benutzererfahrungen. Bash ist eine der beliebtesten Shells, da sie erweiterte Funktionen wie die folgenden bietet:

  • Befehlsautovervollständigung
  • Navigation in der Befehlshistorie
  • Anpassbare Prompts
  • Skriptfähigkeiten mit Funktionen und Kontrollstrukturen

Andere gängige Shells in Linux sind:

  • /bin/sh - Die Bourne Shell, eine einfache Shell
  • /bin/zsh - Z Shell, mit zusätzlichen Funktionen über Bash hinaus
  • /bin/dash - Debian Almquist Shell, eine leichte Shell

Benutzer können während ihrer Sitzung zwischen den installierten Shells mit dem Befehl chsh wechseln oder lassen ihre Standard-Shell von einem Administrator mit usermod ändern, wie wir es gerade getan haben.

Festlegen des Kontoablaufs und Anzeigen von Benutzerinformationen

Systemadministratoren müssen oft temporäre Konten erstellen oder sicherstellen, dass Konten regelmäßig überprüft werden. In diesem Schritt lernen Sie, wie Sie ein Ablaufdatum für ein Konto festlegen und umfassende Benutzerinformationen anzeigen.

Festlegen eines Kontoablaufdatums

Legen Sie ein Ablaufdatum für das permanentuser-Konto fest. Dies ist nützlich für temporäre Benutzer oder Auftragnehmer, die nur für einen bestimmten Zeitraum Zugang haben sollen.

sudo usermod -e 2023-12-31 permanentuser

Die Option -e legt das Ablaufdatum im Format YYYY-MM-DD fest. Nach diesem Datum wird das Konto automatisch deaktiviert.

Um zu überprüfen, ob das Ablaufdatum festgelegt wurde:

sudo chage -l permanentuser

Der Befehl chage -l zeigt Informationen zur Kontoalterung an. Die Ausgabe enthält eine Zeile "Account expires", die das von Ihnen festgelegte Datum anzeigt.

Anzeigen detaillierter Benutzerinformationen

Es gibt mehrere Befehle, um Benutzerinformationen in Linux anzuzeigen. Lassen Sie uns sie untersuchen:

  1. Überprüfen Sie die Benutzer-ID, Gruppen-ID und Gruppenmitgliedschaften:
id permanentuser

Dieser Befehl zeigt die numerische Benutzer-ID (UID), die primäre Gruppen-ID (GID) und alle Gruppen an, zu denen der Benutzer gehört.

  1. Zeigen Sie den Passwortstatus und die Alterungsinformationen an:
sudo passwd -S permanentuser

Dieser Befehl zeigt den Passwortstatus (gesperrt, abgelaufen usw.) und das Datum der letzten Änderung an.

  1. Zeigen Sie alle Benutzer im System an:
cat /etc/passwd | grep -v nologin | grep -v false

Dieser Befehl filtert die Passwortdatei, um nur Benutzer anzuzeigen, die sich anmelden können (ausschließlich Systembenutzer).

  1. Zeigen Sie alle Gruppen im System an:
cat /etc/group

Dies zeigt alle auf dem System definierten Gruppen an, einschließlich Systemgruppen und Benutzergruppen.

Das Verständnis, wie man Benutzerinformationen effizient abruft, ist für die Systemadministration und die Behebung von Benutzerzugangsproblemen von entscheidender Bedeutung.

Zusammenfassung

In diesem Lab haben Sie essentielle Benutzerverwaltungstasks in Linux gelernt:

  1. Erstellen eines Benutzers und Umbenennen desselben mit dem Befehl usermod -l
  2. Einrichten eines Heimatverzeichnisses für einen Benutzer mit usermod -d -m
  3. Hinzufügen eines Benutzers zu zusätzlichen Gruppen mit usermod -aG
  4. Ändern der Anmeldeshell eines Benutzers mit usermod -s
  5. Festlegen von Kontoablaufdaten mit usermod -e
  6. Anzeigen von Benutzerinformationen mit Befehlen wie id, chage und Untersuchung von Systemdateien

Diese Benutzerverwaltungskompetenzen sind für jeden Linux-Administrator grundlegend. Der Befehl usermod bietet ein vielseitiges Toolset zum Ändern von Benutzerattributen, ohne dass Benutzerkonten gelöscht und neu erstellt werden müssen.

Durch das Beherrschen dieser Befehle können Sie Benutzerkonten in jeder Linux-Umgebung effizient verwalten, sei es auf einem Einzelbenutzer-Arbeitsplatz, einem Mehrbenutzer-Server oder in einer Unternehmensumgebung mit vielen Benutzern, die unterschiedliche Zugangsberechtigungen benötigen.