Befehle und Einstellungen für die Verwaltung von Benutzerkonten unter Linux

Wenn Sie einen Linux-Server verwalten, haben Sie wahrscheinlich viele Benutzerkonten zu verwalten und darüber hinaus auch viele Dateien und Einstellungen zu kontrollieren. Im Folgenden finden Sie einige Befehle und Fragen, die beim Einrichten und Verwalten von Benutzerkonten und Zugriffsberechtigungen wichtig sind.

ID-Karten verarbeiten

Wenn Sie Benutzerkonten verwalten, müssen Sie zunächst die Benutzer-ID (UID) und die Gruppen-ID (GID) kennen. Die meisten Konten sind so angelegt, dass jeder Benutzer das einzige Mitglied einer Gruppe mit demselben Namen wie das Benutzerkonto ist. In der Tat werden beide beim Anlegen des Kontos mit dem Befehl useradd festgelegt. Wenn Sie das Home-Verzeichnis des Benutzers auflisten, sollten Sie etwa folgendes sehen:

$ ls -ld /home/dbell

drwxr-xr-x. 8 dbell dbell 4096 Mar 23 2021 /home/dbell

^ ^

| |

Benutzergruppe

Beachten Sie, dass sowohl der Benutzername als auch der Gruppenname "dbell" sind. Um die numerischen Entsprechungen dieser Werte zu sehen, verwenden Sie stattdessen den folgenden Befehl:

$ ls -ldn dbell

drwxr-xr-x. 8 1003 1003 4096 Mär 23 2021 dbell

^ ^

| |

UID GID

Sowohl der Benutzername als auch der Gruppenname haben einen numerischen Wert von 1003. Die angezeigten Informationen stammen aus den Dateien /etc/passwd und /etc/group, in denen die Namen mit ihren numerischen Werten verkettet sind.

$ grep dbell /etc/passwd /etc/group

/etc/passwd:dbell:x:1003:1003:Dana Bell:/home/dbell:/bin/bash

/etc/group:dbell:x:1003:

Wichtige Dokumente bearbeiten

Einige der wichtigsten Dateien, die bei der Verwaltung von Benutzerkonten zu beachten sind, sind die Dateien /etc/passwd, /etc/shadow und /etc/group. Wie oben gezeigt, enthalten die Dateien /etc/passwd und /etc/group die UID und GID sowie das Heimatverzeichnis des Benutzers. Alle Gruppen, denen ein Benutzer angehört, einschließlich seiner persönlichen Gruppen, werden in der Datei /etc/group gespeichert. Die Datei /etc/shadow enthält Passwort-Hashing- und Alterungsparameter, um Passwörter sicher zu halten und Benutzer zu zwingen, ihre Passwörter regelmäßig zu ändern.

Diese Einträge werden mit dem Befehl useradd gesetzt, der Zeilen in die Dateien /etc/passwd, /etc/group und /etc/shadow einfügt.

$ sudo useradd newuser

$ sudo grep newuser /etc/passwd /etc/group /etc/shadow

/etc/passwd:newuser:x:1019:1019::/home/newuser:/bin/bash

/etc/group:newuser:x:1019:

/etc/shadow:newuser:!!:19372:0:99999:7:::

Beachten Sie, dass sudo erforderlich ist, um das Konto zu erstellen und die Datei /etc/shadow anzuzeigen.

Dem Benutzerkonto wird automatisch die nächste verfügbare Nummer der UID des neuen Kontos zugewiesen. Auf den meisten Linux-Systemen hat das erste Benutzerkonto einen Wert von 1000, und jeder weitere Benutzer hat einen höheren Wert als der vorherige. Die UID mit dem kleineren Wert ist das Systemkonto. Wie in der unteren Zeile der obigen Ausgabe zu sehen ist, gibt es bei der Ersteinrichtung des Kontos keinen Passwort-Hash. Das Feld erscheint als ! ! angezeigt, bis ein Kennwort zugewiesen wird. Beim Festlegen eines Passworts werden die beiden Ausrufezeichen durch eine lange Zeichenfolge ersetzt, die den Passwort-Hash darstellt.

Systemadministratoren setzen oft ein temporäres Kennwort für neue Benutzer, lassen das Kennwort dann mit einem zweiten sudo-Befehl wie unten gezeigt ablaufen und verlangen dann, dass der Benutzer bei der ersten Anmeldung ein neues Kennwort setzt. Auf diese Weise kennt nur der Benutzer das Passwort für das Konto.

$ sudo passwd newuser

Neues Passwort:

Geben Sie das neue Passwort erneut ein:

$ sudo passwd -e newuser

Das fünfte (durch Doppelpunkte getrennte) Feld in der Datei /etc/passwd ist für den vollständigen Namen und/oder die Beschreibung des Benutzers vorgesehen und wird oft als Kommentarfeld bezeichnet.

Dieser kann beim Anlegen des Kontos oder später mit dem Befehl usermod -c hinzugefügt werden. Andererseits können Sie mit Superuser-Rechten einfach die Datei /etc/password bearbeiten, um den vollständigen Namen hinzuzufügen.

$ sudo usermod -c "Dana Bell" dbell

$ grep dbell /etc/passwd

dbell:x:1003:1003:Dana Bell:/home/dbell:/bin/bash

^

|

Nutzername oder Beschreibung

Um den vollständigen Namen bei der Ersteinrichtung des Kontos anzugeben, verwenden Sie einen Befehl wie diesen:

$ sudo useradd -c "Dana Bell" dbell

Benutzerkonto löschen

Während Sie mit dem Befehl useradd Konten erstellen und mit dem Befehl usermod Änderungen an Konten vornehmen können, können Sie mit dem Befehl userdel Konten löschen. Es ist jedoch wichtig zu wissen, dass der Befehl userdel das Home-Verzeichnis des Benutzers nur dann löscht, wenn Sie die Option -r wie folgt angeben:

$ sudo userdel newuser -r

Benutzereinstellungen anzeigen

Während es einfach ist, Informationen aus den Dateien /etc/passwd und /etc/group mit grep zu extrahieren, ist ein anderer sehr nützlicher Befehl zum Extrahieren von Informationen über Benutzerkonten der Befehl id, der zeigt, dass UID, GID und Gruppenzugehörigkeit ein sehr praktisches Format sind.

$ id newuser

uid=1019(neuer Benutzer) gid=1019(neuer Benutzer) groups=1019(neuer Benutzer)

$ id shs

uid=1000(shs) gid=1000(shs) groups=1000(shs),10(wheel),900(techs)

Benutzer zur sekundären Gruppe hinzufügen l

Der Befehl usermod bietet auch die Möglichkeit, Benutzer zu sekundären Gruppen hinzuzufügen. Dazu fügen Sie den Benutzer mit dem unten gezeigten Befehl der Gruppe Techniker hinzu. Sie können dann den Befehl id verwenden, um die Änderungen zu überprüfen.

$ sudo usermod -a -G techs newuser

$ id newuser

uid=1019(neuerBenutzer) gid=1019(neuerBenutzer) groups=1019(neuerBenutzer),20(Techniker)

Zusammenfassend

Unter Linux ist es sehr einfach, Benutzerkonten einzurichten, zu ändern und zu löschen, aber Sie müssen einige wichtige Befehle kennen, um Benutzerkonten und Benutzerberechtigungen richtig zu verwalten.

l

Kontakt