Usermod: Unterschied zwischen den Versionen

Aus Foxwiki
KKeine Bearbeitungszusammenfassung
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“
 
(54 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Mit dem Befehl usermod lassen sich angelegte Benutzerkonten bearbeiten.
'''usermod''' - verändert ein Benutzerkonto


= Installation  =
== Beschreibung ==
Das Programm usermod ist in jeder Installation enthalten
The usermod command modifies the system account files.
# apt install passwd


integriert.
== Installation ==
* Debian Paket ''passwd''
* sollte in jeder Linux-Installation vorhanden sein


= Aufruf =
<syntaxhighlight lang="bash" highlight="1">
usermod [PARAMETER] login
sudo apt install passwd
</syntaxhighlight>


== Parameter ==
* shadow-utils 4.16.0
{| class="wikitable"
* 05.08.2024
|-
 
! Achtung!
== Anwendung ==
Wenn man die Option -G ohne die Option -a verwendet, so wird der entsprechende User den Gruppen hinzugefügt, welche als Liste übergeben werden, und aus allen anderen entfernt! Daher muss man, falls man den User einer Gruppe hinzufügen will, ohne die anderen Gruppenzugehörigkeiten anzutasten, die Optionen -a und -G immer zusammen verwenden, da man sich ansonsten z.B. auch aus der Gruppe admin entfernen könnte (die benötigt wird, um sich Root-Rechte verschaffen zu können).
=== Benutzer umbenennen ===
Benutzer anton in zander umbenennen
<syntaxhighlight lang="bash" highlight="1">
sudo usermod -l zander anton
</syntaxhighlight>
 
=== Home-Verzeichnis ändern ===
Benutzer berta in das neue Heimatverzeichnis ''/earth2/admins/berta'' umziehen
<syntaxhighlight lang="bash" highlight="1">
sudo usermod -d /earth2/admins/berta -m berta
</syntaxhighlight>
 
=== Benutzer sperren ===
Benutzer chris sperren
<syntaxhighlight lang="bash" highlight="1">
sudo usermod -L chris
</syntaxhighlight>
 
=== Loginshell ändern ===
Shell für diana auf ''/bin/fish setzen''
<syntaxhighlight lang="bash" highlight="1">
sudo usermod -s /bin/fish diana
</syntaxhighlight>
 
=== Benutzer/Gruppen-ID ändern ===
Benutzer ID und Gruppen ID von z.&nbsp;B.&nbsp;1003 in 1000 ändern
<syntaxhighlight lang="bash" highlight="1,3,5">
sudo pgrep -U else|xargs kill -9
 
sudo usermod -u 1000 else
 
sudo groupmod -g 1000 else
</syntaxhighlight>
 
=== Benutzer in Gruppe aufnehmen ===
Benutzer ''www-data'' in die Gruppe ''redis'' aufnehmen
<syntaxhighlight lang="bash" highlight="1">
# usermod -a -G redis www-data
</syntaxhighlight>
 
Benutzer else in die Gruppe sudo aufnehmen (alle anderen Gruppenzugehörigkeiten von else bleiben erhalten)
<syntaxhighlight lang="bash" highlight="1">
sudo usermod -aG sudo else
</syntaxhighlight>


|}
== Aufruf ==
<syntaxhighlight lang="bash" highlight="1">
sudo usermod [Optionen] LOGIN
</syntaxhighlight>


{| class="wikitable"
=== Optionen ===
{| class="wikitable sortable options"
|-
|-
| -a  || Benutzer zur Gruppen hinzufügen, die mit der Option -G angegeben werden, ohne ihn dabei aus anderen Gruppen zu entfernen. Unbedingt die obige Warnung beachten!
! Unix !! GNU !! Parameter ||Beschreibung
|-
|-
| -c Kommentar  || (neues) Kommentarfeld des Benutzers in der Passwort-Datei.  
| -a || || || Benutzer zur Gruppen hinzufügen, die mit der Option -G angegeben werden, ohne ihn dabei aus anderen Gruppen zu entfernen.  
* Unbedingt die obige Warnung beachten!
|-
|-
|-d Heimverzeichnis [-m]  || Das neue Heimatverzeichnis des Benutzers. Wird die Option -m angegeben, so werden die Dateien aus dem alten Heimatverzeichnis in das neue verschoben, falls dieses noch nicht existiert wird es angelegt.
| -c || || Kommentar || (neues) Kommentarfeld des Benutzers in der Passwort-Datei
|-
|-
| -e Erlöschungsdatum || Datum, bis zu dem das Benutzerkonto gültig sein soll. Das Datum ist im Format YYYY-MM-DD anzugeben
| -d || || Heimverzeichnis </br>[-m] || Das neue Heimatverzeichnis des Benutzers.
* Wird die Option -m angegeben, so werden die Dateien aus dem alten Heimatverzeichnis in das neue verschoben, falls dieses noch nicht existiert wird es angelegt
|-
|-
| -f Inaktive Tage || Die Anzahl der Tage, die vergehen bis das Konto permanent erlischt, nachdem das zugehörige Passwort abgelaufen ist. Ein Wert von 0 deaktiviert das Account sobald das Passwort seine Gültigkeit verliert. Ein Wert von -1 schaltet dieses Feature ganz ab. Der Standardwert ist -1.
| -e || || Erlöschungsdatum || Datum, bis zu dem das Benutzerkonto gültig sein soll.
* Das Datum ist im Format YYYY-MM-DD anzugeben
|-
|-
| -g Initial-Gruppe || Der Name oder die Nummer der Gruppe, der der Benutzer zu Beginn zugewiesen sein soll. Die angegebene Gruppe muss bereits existieren! Standard ist Gruppe 1, oder was immer in '''/etc/default/useradd''' angegeben ist.
| -f || || Inaktive Tage || Die Anzahl der Tage, die vergehen bis das Konto permanent erlischt, nachdem das zugehörige Passwort abgelaufen ist.
* Ein Wert von 0 deaktiviert das Account sobald das Passwort seine Gültigkeit verliert.
* Ein Wert von -1 schaltet dieses Feature ganz ab.  
* Der Standardwert ist -1
|-
|-
| -G Gruppe,[...]  || Liste von zusätzlichen Gruppen, denen der Benutzer neben der Initial-Gruppe zugeordnet werden soll. Jede Gruppe wird von der nächsten durch ein Komma (ohne Leerzeichen dazwischen) getrennt. Die Gruppen unterliegen dabei den selben Einschränkungen wie die Initial-Gruppe, die in der -g-Option angegeben wird. Unbedingt die obige Warnung beachten!
| -g || || Initial-Gruppe || Der Name oder die Nummer der Gruppe, der der Benutzer zu Beginn zugewiesen sein soll.  
* Die angegebene Gruppe muss bereits existieren! Standard ist Gruppe 1, oder was immer in '''/etc/default/useradd''' angegeben ist
|-
|-
| -l NEUER_NAME  || Der Name des Benutzers wird von seinem alten Namen (login) in NEUER_NAME geändert.  
| -G || || Gruppe,[...] || Liste von zusätzlichen Gruppen, denen der Benutzer neben der Initial-Gruppe zugeordnet werden soll.
* Jede Gruppe wird von der nächsten durch ein Komma (ohne Leerzeichen dazwischen) getrennt.
* Die Gruppen unterliegen dabei den selben Einschränkungen wie die Initial-Gruppe, die in der -g-Option angegeben wird.  
* Unbedingt die obige Warnung beachten!
|-
|-
| -p passwd  || Das verschlüsselte Passwort, wie es von crypt zurückgeliefert wird. Standardmäßig wird das Konto deaktiviert. Anmerkung: um das Passwort zu ändern eignet sich passwd eigentlich besser.
| -l || || NEUER_NAME || Der Name des Benutzers wird von seinem alten Namen (login) in NEUER_NAME geändert
|-
|-
| -s shell || Der Name der Login-Shell für den Benutzer. Der Standard ist, dieses Feld leer zu lassen, was dazu führt, dass das System die Standard Login-Shell verwendet.  
| -p || || passwd || Das verschlüsselte Passwort, wie es von crypt zurückgeliefert wird.  
* Standardmäßig wird das Konto deaktiviert.  
* Anmerkung: um das Passwort zu ändern eignet sich passwd eigentlich besser
|-
|-
| -u uid  || Der numerische Wert der Benutzer ID. Sofern die -o-Option nicht angegeben wird, muss dieser Wert einmalig sein. Er darf nicht negativ sein. Standardmäßig wird die kleinste ID verwendet, die größer als 999 und größer als jede andere Benutzer ID ist. Die Werte zwischen 0 und 999 werden typischerweise für Systemkonten reserviert. Dateien im Heimatverzeichnis des Benutzers, die dessen UID tragen, werden automatisch angepasst. Dateien außerhalb des Heimatverzeichnisses müssen manuell angepasst werden.
| -s || || shell || Der Name der Login-Shell für den Benutzer.  
* Der Standard ist, dieses Feld leer zu lassen, was dazu führt, dass das System die Standard Login-Shell verwendet
|-
|-
| -|| Das Passwort des Benutzers blockieren (Zugang sperren).
| -u || || uid || Der numerische Wert der Benutzer ID.  
Diese Option darf nicht zusammen mit -p oder -U angegeben werden.  
* Sofern die -o-Option nicht angegeben wird, muss dieser Wert einmalig sein.
* Er darf nicht negativ sein.
* Standardmäßig wird die kleinste ID verwendet, die größer als 999 und größer als jede andere Benutzer ID ist.
* Die Werte zwischen 0 und 999 werden typischerweise für Systemkonten reserviert.
* Dateien im Heimatverzeichnis des Benutzers, die dessen UID tragen, werden automatisch angepasst.  
* Dateien außerhalb des Heimatverzeichnisses müssen manuell angepasst werden
|-
|-
| -U || Passwort, dass mit -L blockiert wurde wieder freigeben.
| -L || || || Das Passwort des Benutzers blockieren (Zugang sperren)
Diese Option darf nicht zusammen mit -p oder -L verwendet werden.
Diese Option darf nicht zusammen mit -p oder -U angegeben werden
|-
| -U || || || Passwort, dass mit -L blockiert wurde wieder freigeben
Diese Option darf nicht zusammen mit -p oder -L verwendet werden
|}
|}


= Anwendungen =
; Achtung
Benutzer anton in zander umbenennen:  
* Wenn man die Option -G ohne die Option -a verwendet, so wird der entsprechende User den Gruppen hinzugefügt, welche als Liste übergeben werden, und aus allen anderen entfernt!
usermod -l zander anton
* Daher muss man, falls man den User einer Gruppe hinzufügen will, ohne die anderen Gruppenzugehörigkeiten anzutasten, die Optionen -a und -G immer zusammen verwenden, da man sich ansonsten z.&nbsp;B.&nbsp; auch aus der Gruppe admin entfernen könnte (die benötigt wird, um sich Root-Rechte verschaffen zu können)
 
=== Optionen ===
-a, --append
Fügt den Benutzer zu der/den zusätzlichen Gruppe(n) hinzu. Nur mit der Option -G verwenden.
 
-b, --badname
erlaube Namen, die nicht den Standards entsprechen.
 
-c, --comment COMMENT
aktualisiert das Kommentarfeld des Benutzers in /etc/passwd, das normalerweise mit dem Dienstprogramm chfn(1) geändert wird.
 
-d, --home HOME_DIR
ändert das persönliche Verzeichnis des Benutzers
 
Wenn die Option -m angegeben wird, wird der Inhalt des aktuellen Home-Verzeichnisses in das neue Home-Verzeichnis verschoben, das erstellt wird, wenn es noch nicht
vorhanden ist. Wenn das aktuelle Home-Verzeichnis nicht vorhanden ist, wird das neue Home-Verzeichnis nicht erstellt.
 
-e, --expiredate EXPIRE_DATE
Das Datum, an dem das Benutzerkonto deaktiviert wird. Das Datum wird im Format JJJJ-MM-TT angegeben. Ganzzahlen werden als Tage
nach dem 01.01.1970 interpretiert.
 
Bei Eingabe von -1 oder einer leeren Zeichenkette wird das Feld für das Ablaufdatum des Kontos in der Shadow-Kennwortdatei leer gelassen. Das Konto bleibt ohne
Datumsbeschränkung verfügbar.
 
Für diese Option ist eine /etc/shadow-Datei erforderlich. Wenn noch kein Eintrag vorhanden ist, wird ein Eintrag erstellt.
 
-f, --inactive INACTIVE
definiert die Anzahl der Tage, nachdem das Passwort sein maximales Alter überschritten hat, in denen sich der Benutzer noch anmelden kann, indem das Passwort sofort ersetzt wird.
Diese Schonfrist, bevor das Konto inaktiv wird, wird in der Shadow-Passwortdatei gespeichert. Eine Eingabe von 0 deaktiviert ein abgelaufenes Passwort ohne
Verzögerung. Eine Eingabe von -1 löscht das entsprechende Feld in der Shadow-Passwortdatei. Weitere Informationen finden Sie unter shadow(5).
 
Diese Option erfordert eine /etc/shadow-Datei. Ein /etc/shadow-Eintrag wird erstellt, wenn noch keiner vorhanden ist.
 
-g, --gid GROUP
Der Name oder die numerische Kennung der neuen primären Gruppe des Benutzers. Die Gruppe muss existieren.
 
Im persönlichen Verzeichnis des Benutzers werden alle Dateien, die der alten primären Gruppe zugeordnet waren, auf diese Gruppe übertragen.
 
Die Gruppenzugehörigkeit von Dateien außerhalb des persönlichen Verzeichnisses des Benutzers muss per Hand angepasst werden.
 
Die Änderung der Gruppenzugehörigkeit von Dateien innerhalb des Home-Verzeichnisses des Benutzers wird ebenfalls nicht durchgeführt, wenn die Home-Verzeichnis-Besitzer-UID von der
aktuellen oder neuen Benutzer-ID abweicht. Dies ist eine Sicherheitsmaßnahme für spezielle Home-Verzeichnisse wie /.
 
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
Eine Liste zusätzlicher Gruppen, in denen der Benutzer ebenfalls Mitglied ist. Die einzelnen Gruppen werden durch Kommas ohne Leerzeichen voneinander getrennt.
Die Gruppen müssen vorhanden sein.
 
Wenn der Benutzer derzeit Mitglied einer Gruppe ist, die nicht aufgeführt ist, wird der Benutzer aus der Gruppe entfernt. Dieses Verhalten kann über die Option -a geändert werden,
mit der der Benutzer an die aktuelle Liste zusätzlicher Gruppen angehängt wird.
 
-l, --login NEW_LOGIN
Der Name des Benutzers wird von LOGIN in NEW_LOGIN geändert. Es wird nichts anderes geändert. Insbesondere das Home-Verzeichnis oder der Mail-Spool des Benutzers
sollten wahrscheinlich manuell umbenannt werden, um den neuen Anmeldenamen widerzuspiegeln.
 
-L, --lock
Sperrt das Passwort eines Benutzers. Dadurch wird ein „!“ vor das verschlüsselte Passwort gesetzt, wodurch das Passwort effektiv deaktiviert wird. Diese Option kann nicht zusammen mit -p
oder -U verwendet werden.
 
Hinweis: Wenn Sie das Konto sperren möchten (nicht nur den Zugriff mit einem Passwort), sollten Sie auch EXPIRE_DATE auf 1 setzen.
 
-m, --move-home
verschiebt den Inhalt des Home-Verzeichnisses des Benutzers an den neuen Speicherort. Wenn das aktuelle Home-Verzeichnis nicht existiert, wird das neue Home-Verzeichnis nicht
erstellt.
 
Diese Option ist nur in Kombination mit der Option -d (oder --home) gültig.
 
usermod versucht, die Eigentümerschaft der Dateien anzupassen und die Modi, ACL und erweiterten Attribute zu kopieren, aber danach sind möglicherweise manuelle Änderungen erforderlich
.
 
-o, --non-unique
ermöglicht die Änderung der Benutzerkennung auf einen nicht eindeutigen Wert.
 
Diese Option ist nur in Kombination mit der Option -u gültig. Da eine Benutzerkennung als Schlüssel zur Zuordnung zwischen Benutzern einerseits und Berechtigungen,
Dateibesitzern und anderen Aspekten, die das Systemverhalten bestimmen, andererseits dient, kann mehr als ein Anmeldename auf das Konto der
gegebenen UID zugreifen.
 
-p, --password PASSWORT
legt ein neues Passwort für den Benutzer fest. PASSWORT muss verschlüsselt sein, wie von crypt (3) zurückgegeben.
 
Hinweis: Vermeiden Sie diese Option in der Befehlszeile, da das Passwort (oder das verschlüsselte Passwort) für Benutzer sichtbar ist, die die Prozesse auflisten.
 
Das Passwort wird in die lokale Datei /etc/passwd oder /etc/shadow geschrieben. Dies kann von der in Ihrer PAM-Konfiguration konfigurierten Passwortdatenbank abweichen
.
 
Sie sollten sicherstellen, dass das Passwort den Passwortrichtlinien des Systems entspricht.
 
-r, --remove
Entfernt den Benutzer aus benannten zusätzlichen Gruppen. Nur mit der Option -G verwenden.
 
-R, --root CHROOT_DIR
Wendet Änderungen im Verzeichnis CHROOT_DIR an und verwendet die Konfigurationsdateien aus dem Verzeichnis CHROOT_DIR. Es werden nur absolute Pfade unterstützt.
 
-P, --prefix PREFIX_DIR
Änderungen innerhalb der Verzeichnisstruktur ab PREFIX_DIR anwenden und auch die dort befindlichen Konfigurationsdateien verwenden. Diese Option führt keine Chroot aus
und ist für die Vorbereitung eines Cross-Compilation-Ziels vorgesehen. Einige Einschränkungen: NIS- und LDAP-Benutzer/-Gruppen werden nicht überprüft. Die PAM-Authentifizierung verwendet
die Hostdateien. Keine SELINUX-Unterstützung.
 
-s, --shell SHELL
ändert die Anmelde-Shell des Benutzers. Eine leere Zeichenkette für SHELL löscht das Feld in /etc/passwd und meldet den Benutzer bei der Standard-Shell des Systems an.
 
-u, --uid UID
Der neue Wert der Benutzerkennung.
 
Dieser Wert muss eindeutig sein, es sei denn, die Option -o wird verwendet. Der Wert darf nicht negativ sein.
 
Für das Postfach des Benutzers und alle Dateien, die ihm gehören und sich in seinem persönlichen Verzeichnis befinden, wird die Eigentümerkennung
automatisch angepasst.
 
Der Eigentümer von Dateien außerhalb des persönlichen Verzeichnisses des Benutzers muss per Hand angepasst werden.
 
Die Änderung der Benutzereigentümerschaft von Dateien innerhalb des Home-Verzeichnisses des Benutzers wird auch nicht durchgeführt, wenn die Home-Verzeichnis-Eigentümer-UID von der
aktuellen oder neuen Benutzerkennung abweicht. Dies ist eine Sicherheitsmaßnahme für spezielle Home-Verzeichnisse wie /.
 
Es werden keine Prüfungen in Bezug auf UID_MIN, UID_MAX, SYS_UID_MIN oder SYS_UID_MAX aus /etc/login.defs durchgeführt.
 
-U, --unlock
Entsperrt das Passwort eines Benutzers. Dadurch wird das „!“ vor dem verschlüsselten Passwort entfernt. Diese Option kann nicht zusammen mit -p oder -L verwendet werden.
 
Hinweis: Wenn Sie das Konto entsperren möchten (nicht nur den Zugriff mit einem Passwort), sollten Sie auch EXPIRE_DATE festlegen (z. B. auf 99999 oder auf den
EXPIRE-Wert aus /etc/default/useradd).
 
-v, --add-subuids FIRST-LAST
fügt dem Konto des Benutzers einen Bereich untergeordneter Benutzerkennungen zu.
 
Diese Option kann mehrmals angegeben werden, um dem Benutzerkonto mehrere Bereiche hinzuzufügen.
 
Es werden keine Prüfungen in Bezug auf SUB_UID_MIN, SUB_UID_MAX oder SUB_UID_COUNT aus /etc/login.defs durchgeführt.
 
-V, --del-subuids FIRST-LAST
entfernt aus dem Benutzerkonto einen Bereich untergeordneter Benutzerkennungen.
 
Diese Option kann mehrfach angegeben werden, um mehrere Bereiche aus dem Benutzerkonto eines Benutzers zu entfernen. Wenn sowohl --del-subuids als auch --add-subuids angegeben werden,
erfolgt das Entfernen aller untergeordneten UID-Bereiche, bevor ein untergeordneter UID-Bereich hinzugefügt wird.
 
Es werden keine Prüfungen in Bezug auf SUB_UID_MIN, SUB_UID_MAX oder SUB_UID_COUNT aus /etc/login.defs durchgeführt.
 
-w, --add-subgids FIRST-LAST
fügt dem Benutzerkonto einen Bereich untergeordneter Gruppenkennungen zu.
 
Diese Option kann mehrmals angegeben werden, um dem Benutzerkonto mehrere Bereiche hinzuzufügen.
 
Es werden keine Prüfungen in Bezug auf SUB_GID_MIN, SUB_GID_MAX oder SUB_GID_COUNT aus /etc/login.defs durchgeführt.
 
-W, --del-subgids FIRST-LAST
entfernt einen Bereich untergeordneter Gruppenkennungen aus dem Benutzerkonto.
 
Diese Option kann mehrmals angegeben werden, um mehrere Bereiche aus dem Benutzerkonto eines Benutzers zu entfernen. Wenn sowohl --del-subgids als auch --add-subgids angegeben werden,
erfolgt das Entfernen aller untergeordneten gid-Bereiche, bevor ein untergeordneter gid-Bereich hinzugefügt wird.


Benutzer berta in das neue Heimatverzeichnis '''/earth2/admins/berta''' umziehen:
Es werden keine Prüfungen in Bezug auf SUB_GID_MIN, SUB_GID_MAX oder SUB_GID_COUNT aus /etc/login.defs durchgeführt.
usermod -d /earth2/admins/berta -m berta


Benutzer chris sperren:
-Z, --selinux-user SEUSER
usermod -L chris
definiert den SELinux-Benutzer, der LOGIN zugeordnet werden soll. Eine leere Zeichenkette („“) entfernt den entsprechenden Eintrag (falls vorhanden). Beachten Sie, dass das Shadow-System
den selinux-user nicht speichert, sondern dafür semanage(8) verwendet.
 
--selinux-range SERANGE
definiert den SELinux-MLS-Bereich für das neue Konto. Beachten Sie, dass das Schattensystem den selinux-range nicht speichert, sondern dafür semanage(8) verwendet.
 
Diese Option ist nur gültig, wenn die Option -Z (oder --selinux-user) angegeben ist.
 
=== Parameter ===
 
=== Umgebungsvariablen ===
=== Exit-Status ===
 
== Konfiguration ==
The following configuration variables in /etc/login.defs change the behavior of this tool:
 
=== Dateien ===
{|class="wikitable options"
| /etc/group || Group account information
|-
| /etc/gshadow || Secure group account information
|-
| /etc/login.defs || Shadow password suite configuration
|-
| /etc/passwd || User account information
|-
| /etc/shadow || Secure user account information
|-
| /etc/subgid || Per user subordinate group IDs
|-
| /etc/subuid || Per user subordinate user IDs
|}


Shell für diana auf '''/bin/fish setzen''':
<noinclude>
usermod -s /bin/fish diana


Benutzer else in die Gruppe sudo aufnehmen (alle anderen Gruppenzugehörigkeiten von else bleiben erhalten):
== Anhang ==
usermod -aG sudo else
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
==== Dokumentation ====
===== Man-Page =====
* USERMOD(8)
* [[chfn]](1)
* [[chsh]](1)
* [[passwd]](1)
* [[crypt]](3)
* [[gpasswd]](8)
* [[groupadd]](8)
* [[groupdel]](8)
* [[groupmod]](8)
* [[login.defs]](5)
* [[subgid]](5)
* [[subuid]](5)
* [[useradd]](8)
* [[userdel]](8)


Benutzer ID und Gruppen ID von z.B.1003 in 1000 ändern:(als root einloggen)
===== Info-Pages =====
pgrep -U else|xargs kill -9
==== Links ====
usermod -u 1000 else
===== Projekt =====
groupmod -g 1000 else
===== Weblinks =====
[[Kategorie:Linux/Befehl]]
[[Kategorie:Linux/Benutzer]]


= Links =
{{DEFAULTSORT:usermod}}
== Intern ==
{{DISPLAYTITLE:usermod}}
# TODO
== Weblinks ==
# TODO


[[Category:Linux:Benutzerverwaltung]]
</noinclude>

Aktuelle Version vom 12. November 2024, 19:39 Uhr

usermod - verändert ein Benutzerkonto

Beschreibung

The usermod command modifies the system account files.

Installation

  • Debian Paket passwd
  • sollte in jeder Linux-Installation vorhanden sein
sudo apt install passwd
  • shadow-utils 4.16.0
  • 05.08.2024

Anwendung

Benutzer umbenennen

Benutzer anton in zander umbenennen

sudo usermod -l zander anton

Home-Verzeichnis ändern

Benutzer berta in das neue Heimatverzeichnis /earth2/admins/berta umziehen

sudo usermod -d /earth2/admins/berta -m berta

Benutzer sperren

Benutzer chris sperren

sudo usermod -L chris

Loginshell ändern

Shell für diana auf /bin/fish setzen

sudo usermod -s /bin/fish diana

Benutzer/Gruppen-ID ändern

Benutzer ID und Gruppen ID von z. B. 1003 in 1000 ändern

sudo pgrep -U else|xargs kill -9

sudo usermod -u 1000 else

sudo groupmod -g 1000 else

Benutzer in Gruppe aufnehmen

Benutzer www-data in die Gruppe redis aufnehmen

 # usermod -a -G redis www-data

Benutzer else in die Gruppe sudo aufnehmen (alle anderen Gruppenzugehörigkeiten von else bleiben erhalten)

sudo usermod -aG sudo else

Aufruf

sudo usermod [Optionen] LOGIN

Optionen

Unix GNU Parameter Beschreibung
-a Benutzer zur Gruppen hinzufügen, die mit der Option -G angegeben werden, ohne ihn dabei aus anderen Gruppen zu entfernen.
  • Unbedingt die obige Warnung beachten!
-c Kommentar (neues) Kommentarfeld des Benutzers in der Passwort-Datei
-d Heimverzeichnis
[-m]
Das neue Heimatverzeichnis des Benutzers.
  • Wird die Option -m angegeben, so werden die Dateien aus dem alten Heimatverzeichnis in das neue verschoben, falls dieses noch nicht existiert wird es angelegt
-e Erlöschungsdatum Datum, bis zu dem das Benutzerkonto gültig sein soll.
  • Das Datum ist im Format YYYY-MM-DD anzugeben
-f Inaktive Tage Die Anzahl der Tage, die vergehen bis das Konto permanent erlischt, nachdem das zugehörige Passwort abgelaufen ist.
  • Ein Wert von 0 deaktiviert das Account sobald das Passwort seine Gültigkeit verliert.
  • Ein Wert von -1 schaltet dieses Feature ganz ab.
  • Der Standardwert ist -1
-g Initial-Gruppe Der Name oder die Nummer der Gruppe, der der Benutzer zu Beginn zugewiesen sein soll.
  • Die angegebene Gruppe muss bereits existieren! Standard ist Gruppe 1, oder was immer in /etc/default/useradd angegeben ist
-G Gruppe,[...] Liste von zusätzlichen Gruppen, denen der Benutzer neben der Initial-Gruppe zugeordnet werden soll.
  • Jede Gruppe wird von der nächsten durch ein Komma (ohne Leerzeichen dazwischen) getrennt.
  • Die Gruppen unterliegen dabei den selben Einschränkungen wie die Initial-Gruppe, die in der -g-Option angegeben wird.
  • Unbedingt die obige Warnung beachten!
-l NEUER_NAME Der Name des Benutzers wird von seinem alten Namen (login) in NEUER_NAME geändert
-p passwd Das verschlüsselte Passwort, wie es von crypt zurückgeliefert wird.
  • Standardmäßig wird das Konto deaktiviert.
  • Anmerkung: um das Passwort zu ändern eignet sich passwd eigentlich besser
-s shell Der Name der Login-Shell für den Benutzer.
  • Der Standard ist, dieses Feld leer zu lassen, was dazu führt, dass das System die Standard Login-Shell verwendet
-u uid Der numerische Wert der Benutzer ID.
  • Sofern die -o-Option nicht angegeben wird, muss dieser Wert einmalig sein.
  • Er darf nicht negativ sein.
  • Standardmäßig wird die kleinste ID verwendet, die größer als 999 und größer als jede andere Benutzer ID ist.
  • Die Werte zwischen 0 und 999 werden typischerweise für Systemkonten reserviert.
  • Dateien im Heimatverzeichnis des Benutzers, die dessen UID tragen, werden automatisch angepasst.
  • Dateien außerhalb des Heimatverzeichnisses müssen manuell angepasst werden
-L Das Passwort des Benutzers blockieren (Zugang sperren)

Diese Option darf nicht zusammen mit -p oder -U angegeben werden

-U Passwort, dass mit -L blockiert wurde wieder freigeben

Diese Option darf nicht zusammen mit -p oder -L verwendet werden

Achtung
  • Wenn man die Option -G ohne die Option -a verwendet, so wird der entsprechende User den Gruppen hinzugefügt, welche als Liste übergeben werden, und aus allen anderen entfernt!
  • Daher muss man, falls man den User einer Gruppe hinzufügen will, ohne die anderen Gruppenzugehörigkeiten anzutasten, die Optionen -a und -G immer zusammen verwenden, da man sich ansonsten z. B.  auch aus der Gruppe admin entfernen könnte (die benötigt wird, um sich Root-Rechte verschaffen zu können)

Optionen

-a, --append Fügt den Benutzer zu der/den zusätzlichen Gruppe(n) hinzu. Nur mit der Option -G verwenden.

-b, --badname erlaube Namen, die nicht den Standards entsprechen.

-c, --comment COMMENT aktualisiert das Kommentarfeld des Benutzers in /etc/passwd, das normalerweise mit dem Dienstprogramm chfn(1) geändert wird.

-d, --home HOME_DIR ändert das persönliche Verzeichnis des Benutzers

Wenn die Option -m angegeben wird, wird der Inhalt des aktuellen Home-Verzeichnisses in das neue Home-Verzeichnis verschoben, das erstellt wird, wenn es noch nicht vorhanden ist. Wenn das aktuelle Home-Verzeichnis nicht vorhanden ist, wird das neue Home-Verzeichnis nicht erstellt.

-e, --expiredate EXPIRE_DATE Das Datum, an dem das Benutzerkonto deaktiviert wird. Das Datum wird im Format JJJJ-MM-TT angegeben. Ganzzahlen werden als Tage nach dem 01.01.1970 interpretiert.

Bei Eingabe von -1 oder einer leeren Zeichenkette wird das Feld für das Ablaufdatum des Kontos in der Shadow-Kennwortdatei leer gelassen. Das Konto bleibt ohne Datumsbeschränkung verfügbar.

Für diese Option ist eine /etc/shadow-Datei erforderlich. Wenn noch kein Eintrag vorhanden ist, wird ein Eintrag erstellt.

-f, --inactive INACTIVE definiert die Anzahl der Tage, nachdem das Passwort sein maximales Alter überschritten hat, in denen sich der Benutzer noch anmelden kann, indem das Passwort sofort ersetzt wird. Diese Schonfrist, bevor das Konto inaktiv wird, wird in der Shadow-Passwortdatei gespeichert. Eine Eingabe von 0 deaktiviert ein abgelaufenes Passwort ohne Verzögerung. Eine Eingabe von -1 löscht das entsprechende Feld in der Shadow-Passwortdatei. Weitere Informationen finden Sie unter shadow(5).

Diese Option erfordert eine /etc/shadow-Datei. Ein /etc/shadow-Eintrag wird erstellt, wenn noch keiner vorhanden ist.

-g, --gid GROUP Der Name oder die numerische Kennung der neuen primären Gruppe des Benutzers. Die Gruppe muss existieren.

Im persönlichen Verzeichnis des Benutzers werden alle Dateien, die der alten primären Gruppe zugeordnet waren, auf diese Gruppe übertragen.

Die Gruppenzugehörigkeit von Dateien außerhalb des persönlichen Verzeichnisses des Benutzers muss per Hand angepasst werden.

Die Änderung der Gruppenzugehörigkeit von Dateien innerhalb des Home-Verzeichnisses des Benutzers wird ebenfalls nicht durchgeführt, wenn die Home-Verzeichnis-Besitzer-UID von der aktuellen oder neuen Benutzer-ID abweicht. Dies ist eine Sicherheitsmaßnahme für spezielle Home-Verzeichnisse wie /.

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]] Eine Liste zusätzlicher Gruppen, in denen der Benutzer ebenfalls Mitglied ist. Die einzelnen Gruppen werden durch Kommas ohne Leerzeichen voneinander getrennt.

Die Gruppen müssen vorhanden sein.

Wenn der Benutzer derzeit Mitglied einer Gruppe ist, die nicht aufgeführt ist, wird der Benutzer aus der Gruppe entfernt. Dieses Verhalten kann über die Option -a geändert werden,

mit der der Benutzer an die aktuelle Liste zusätzlicher Gruppen angehängt wird.

-l, --login NEW_LOGIN Der Name des Benutzers wird von LOGIN in NEW_LOGIN geändert. Es wird nichts anderes geändert. Insbesondere das Home-Verzeichnis oder der Mail-Spool des Benutzers sollten wahrscheinlich manuell umbenannt werden, um den neuen Anmeldenamen widerzuspiegeln.

-L, --lock Sperrt das Passwort eines Benutzers. Dadurch wird ein „!“ vor das verschlüsselte Passwort gesetzt, wodurch das Passwort effektiv deaktiviert wird. Diese Option kann nicht zusammen mit -p oder -U verwendet werden.

Hinweis: Wenn Sie das Konto sperren möchten (nicht nur den Zugriff mit einem Passwort), sollten Sie auch EXPIRE_DATE auf 1 setzen.

-m, --move-home verschiebt den Inhalt des Home-Verzeichnisses des Benutzers an den neuen Speicherort. Wenn das aktuelle Home-Verzeichnis nicht existiert, wird das neue Home-Verzeichnis nicht erstellt.

Diese Option ist nur in Kombination mit der Option -d (oder --home) gültig.

usermod versucht, die Eigentümerschaft der Dateien anzupassen und die Modi, ACL und erweiterten Attribute zu kopieren, aber danach sind möglicherweise manuelle Änderungen erforderlich .

-o, --non-unique ermöglicht die Änderung der Benutzerkennung auf einen nicht eindeutigen Wert.

Diese Option ist nur in Kombination mit der Option -u gültig. Da eine Benutzerkennung als Schlüssel zur Zuordnung zwischen Benutzern einerseits und Berechtigungen, Dateibesitzern und anderen Aspekten, die das Systemverhalten bestimmen, andererseits dient, kann mehr als ein Anmeldename auf das Konto der gegebenen UID zugreifen.

-p, --password PASSWORT legt ein neues Passwort für den Benutzer fest. PASSWORT muss verschlüsselt sein, wie von crypt (3) zurückgegeben.

Hinweis: Vermeiden Sie diese Option in der Befehlszeile, da das Passwort (oder das verschlüsselte Passwort) für Benutzer sichtbar ist, die die Prozesse auflisten.

Das Passwort wird in die lokale Datei /etc/passwd oder /etc/shadow geschrieben. Dies kann von der in Ihrer PAM-Konfiguration konfigurierten Passwortdatenbank abweichen .

Sie sollten sicherstellen, dass das Passwort den Passwortrichtlinien des Systems entspricht.

-r, --remove Entfernt den Benutzer aus benannten zusätzlichen Gruppen. Nur mit der Option -G verwenden.

-R, --root CHROOT_DIR Wendet Änderungen im Verzeichnis CHROOT_DIR an und verwendet die Konfigurationsdateien aus dem Verzeichnis CHROOT_DIR. Es werden nur absolute Pfade unterstützt.

-P, --prefix PREFIX_DIR Änderungen innerhalb der Verzeichnisstruktur ab PREFIX_DIR anwenden und auch die dort befindlichen Konfigurationsdateien verwenden. Diese Option führt keine Chroot aus und ist für die Vorbereitung eines Cross-Compilation-Ziels vorgesehen. Einige Einschränkungen: NIS- und LDAP-Benutzer/-Gruppen werden nicht überprüft. Die PAM-Authentifizierung verwendet die Hostdateien. Keine SELINUX-Unterstützung.

-s, --shell SHELL ändert die Anmelde-Shell des Benutzers. Eine leere Zeichenkette für SHELL löscht das Feld in /etc/passwd und meldet den Benutzer bei der Standard-Shell des Systems an.

-u, --uid UID Der neue Wert der Benutzerkennung.

Dieser Wert muss eindeutig sein, es sei denn, die Option -o wird verwendet. Der Wert darf nicht negativ sein.

Für das Postfach des Benutzers und alle Dateien, die ihm gehören und sich in seinem persönlichen Verzeichnis befinden, wird die Eigentümerkennung automatisch angepasst.

Der Eigentümer von Dateien außerhalb des persönlichen Verzeichnisses des Benutzers muss per Hand angepasst werden.

Die Änderung der Benutzereigentümerschaft von Dateien innerhalb des Home-Verzeichnisses des Benutzers wird auch nicht durchgeführt, wenn die Home-Verzeichnis-Eigentümer-UID von der aktuellen oder neuen Benutzerkennung abweicht. Dies ist eine Sicherheitsmaßnahme für spezielle Home-Verzeichnisse wie /.

Es werden keine Prüfungen in Bezug auf UID_MIN, UID_MAX, SYS_UID_MIN oder SYS_UID_MAX aus /etc/login.defs durchgeführt.

-U, --unlock Entsperrt das Passwort eines Benutzers. Dadurch wird das „!“ vor dem verschlüsselten Passwort entfernt. Diese Option kann nicht zusammen mit -p oder -L verwendet werden.

Hinweis: Wenn Sie das Konto entsperren möchten (nicht nur den Zugriff mit einem Passwort), sollten Sie auch EXPIRE_DATE festlegen (z. B. auf 99999 oder auf den EXPIRE-Wert aus /etc/default/useradd).

-v, --add-subuids FIRST-LAST fügt dem Konto des Benutzers einen Bereich untergeordneter Benutzerkennungen zu.

Diese Option kann mehrmals angegeben werden, um dem Benutzerkonto mehrere Bereiche hinzuzufügen.

Es werden keine Prüfungen in Bezug auf SUB_UID_MIN, SUB_UID_MAX oder SUB_UID_COUNT aus /etc/login.defs durchgeführt.

-V, --del-subuids FIRST-LAST entfernt aus dem Benutzerkonto einen Bereich untergeordneter Benutzerkennungen.

Diese Option kann mehrfach angegeben werden, um mehrere Bereiche aus dem Benutzerkonto eines Benutzers zu entfernen. Wenn sowohl --del-subuids als auch --add-subuids angegeben werden, erfolgt das Entfernen aller untergeordneten UID-Bereiche, bevor ein untergeordneter UID-Bereich hinzugefügt wird.

Es werden keine Prüfungen in Bezug auf SUB_UID_MIN, SUB_UID_MAX oder SUB_UID_COUNT aus /etc/login.defs durchgeführt.

-w, --add-subgids FIRST-LAST fügt dem Benutzerkonto einen Bereich untergeordneter Gruppenkennungen zu.

Diese Option kann mehrmals angegeben werden, um dem Benutzerkonto mehrere Bereiche hinzuzufügen.

Es werden keine Prüfungen in Bezug auf SUB_GID_MIN, SUB_GID_MAX oder SUB_GID_COUNT aus /etc/login.defs durchgeführt.

-W, --del-subgids FIRST-LAST entfernt einen Bereich untergeordneter Gruppenkennungen aus dem Benutzerkonto.

Diese Option kann mehrmals angegeben werden, um mehrere Bereiche aus dem Benutzerkonto eines Benutzers zu entfernen. Wenn sowohl --del-subgids als auch --add-subgids angegeben werden, erfolgt das Entfernen aller untergeordneten gid-Bereiche, bevor ein untergeordneter gid-Bereich hinzugefügt wird.

Es werden keine Prüfungen in Bezug auf SUB_GID_MIN, SUB_GID_MAX oder SUB_GID_COUNT aus /etc/login.defs durchgeführt.

-Z, --selinux-user SEUSER definiert den SELinux-Benutzer, der LOGIN zugeordnet werden soll. Eine leere Zeichenkette („“) entfernt den entsprechenden Eintrag (falls vorhanden). Beachten Sie, dass das Shadow-System den selinux-user nicht speichert, sondern dafür semanage(8) verwendet.

--selinux-range SERANGE definiert den SELinux-MLS-Bereich für das neue Konto. Beachten Sie, dass das Schattensystem den selinux-range nicht speichert, sondern dafür semanage(8) verwendet.

Diese Option ist nur gültig, wenn die Option -Z (oder --selinux-user) angegeben ist.

Parameter

Umgebungsvariablen

Exit-Status

Konfiguration

The following configuration variables in /etc/login.defs change the behavior of this tool:

Dateien

/etc/group Group account information
/etc/gshadow Secure group account information
/etc/login.defs Shadow password suite configuration
/etc/passwd User account information
/etc/shadow Secure user account information
/etc/subgid Per user subordinate group IDs
/etc/subuid Per user subordinate user IDs


Anhang

Siehe auch

Dokumentation

Man-Page
Info-Pages

Links

Projekt
Weblinks