linux:benutzer-und-gruppen

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
linux:benutzer-und-gruppen [2012/08/27 17:27] – [Benutzer zu Gruppe hinzufügen] stlinux:benutzer-und-gruppen [2025/02/02 22:39] (aktuell) – [Passwortablauf] st
Zeile 1: Zeile 1:
 +====== Benutzer und Gruppen ======
 +Die Benutzer und Gruppen werden bei [[linux:Linux]] in Textdateien definiert.
  
 +Wird ganz gut bei [[http://www.linux-fuer-blinde.de/einfuehrung/benutzer-gruppenverwaltung.php|linux für Blinde]] erklärt.
 +
 +===== Verwaltungsbefehle =====
 +^ Befehl ^ Beispielaufruf ^ Zweck des Programms ^
 +| chsh | chsh -s /bin/false user  | ändert die Shell  |
 +| chfn | |ändert Benutzerinformationen  |
 +| groupadd / addgroup  | |Anlegen einer neuen Gruppe  |
 +| groupdel | |Löschen einer Gruppe  |
 +| newgrp | |Wechseln der Gruppe  |
 +| gpasswd | |Verwalten einer Gruppe  |
 +| pwck | | verifiziert die Integrität der Passwortdateien 
 +| vipw / vigr  | |editiert Benutzer-/Gruppeninformationen. Dateibeschädigungen werden durch setzten von locks verhindert.  |
 +| useradd / adduser  | |Anlegen eines neuen Benutzerkontos; Die Datei ''/etc/default/useradd'' enthält Standardvorgaben  |
 +| userdel | |Löschen eines Benutzerkontos  |
 +| usermod | |Editieren eines Benutzerkontos  |
 +| passwd | |Benutzerpasswort festlegen  |
 +
 +===== wichtige Dateien ====
 +
 +^ Datei ^ Inhalt / Zweck ^
 +| /etc/passwd | Informationen über Nutzerkonten |
 +| /etc/shadow | enthält Benutzerpasswörter und andere kritische Angaben |
 +| /etc/group | enthält Informationen über Benutzergruppen |
 +| /etc/gshadow | enthält Gruppenpasswörter und andere kritische Angaben |
 +| /etc/shells | Liste der gültigen Login-Shells |
 +| /etc/skel | Enthält die "Vorlage" für Homeverzeichnisse neuer Benutzer |
 +
 +
 +===== Passwörter zurücksetzen =====
 +in /etc/shadow stehen die Passwörter verschlüsselt drin (als [[:Hash-Funktion|Hash]])
 +  Benutzername:Passwort: usw.
 +dann einfach die Zeichenfolge löschen oder durch einen anderen [[:Hash-Funktion|Hash]] ersetzen.
 +
 +Aufbau des Passwortfeldes: ''$Funktion$SALT$Gehashtes-PAsswort''
 +
 +**Zuerst** wird die [[:Hash-Funktion|Hash]]-Funktion benannt:
 +
 +^ Anfang  ^ steht für [[:Hash-Funktion|Hash]]-Funktion  ... ^
 +| $1$ | md5 |
 +| $2a$ | Blowfish |
 +| $2y$ | Blowfish, with correct handling of 8 bit characters |
 +| $5$ | sha256 |
 +| $6$ | sha512 |
 +
 +:!: Falls nicht $6$ / SHA-512 verwendet wird: Passwort aktualisieren lassen!
 +
 +**Anschließend** der SALT (zufällig generierte Zeichenketten gegen [[security:Angriffsmethoden und Gegenmaßnahmen#Rainbow-Table-Attacken]]).
 +
 +**Am Ende** das Gehashte Passwort.
 +
 +
 +===== Passwörter ändern =====
 +Wenn das aktuelle Passwort bekannt ist:
 +  * passwd BENUTZER
 +
 +===== Benutzer deaktivieren =====
 +
 +  - passwd -l BENUTZER
 +  - SSH-Schlüssel des Benutzers ''authorized_keys'' im Home-Verz. löschen
 +  - laufende Prozesse des Benutzers finden: <code>ps auxww | grep -i ^BENUTZER</code>
 +  - Home-Verz. verschieben
 +
 +===== Passwortablauf =====
 +
 +chage -E oder <nowiki>--</nowiki>expiredate
 +
 +"sudo -i", "sudo su" or "su -l" fragen nicht nach wenn Passwörter abgelaufen sind, bei Login via SSH (oder Konsole) wird gefragt.
 +
 +Beispiele:
 +  * Passwort am 31.12.2025 ablaufen lassen: <code bash>chage --expiredate 2025-12-31 $user</code>
 +  * in 90 Tagen ablaufen lassen: <code bash>chage --expiredate $(date -d +90days +%Y-%m-%d) $user</code>
 +
 +
 +anzeigen lassen:
 +
 +<code bash>chage --list $user</code>
 +<file>
 +Last password change : Jan 25, 2025
 +Password expires : Dec 31, 2025
 +Password inactive : never
 +Account expires : never
 +Minimum number of days between password change : 0
 +Maximum number of days between password change : 0
 +Number of days of warning before password expires : 7
 +</file>
 +===== Benutzer zu Gruppe hinzufügen =====
 +
 +  addgroup USER GRUPPE