[[Inhaltsverzeichnis(2)]] [[Bild(Wiki/Icons/users.png, 64, left)]] Linux kennt als Mehrbenutzer-Betriebssystem – wie alle unixartigen Betriebssysteme – das Konzept verschiedener Benutzer. Diese haben nicht alle unbedingt dieselben Rechte und Privilegien. Neben den eigentlichen Benutzerkonten für reale Personen existieren auf dem System noch viele Systemdienste mit einem eigenen Benutzerkonto. Dadurch wird erreicht, dass eine mögliche Schwachstelle in einem Dienst nicht zu große Auswirkungen auf das System haben kann. Im Gegensatz zu vielen anderen Linux-Distributionen wird unter Ubuntu dem Konto des Systemverwalters ''"root"'' kein Passwort zugewiesen, d.h. es gibt kein "klassisches" Administrator-Konto. Dies ist Absicht. Die Hintergründe und die Funktionen, um Aktionen mit Root-Rechten ausführen zu können, sind im Artikel [:sudo:] näher erläutert. Dieser Artikel beschreibt Grundbegriffe und Grundlagen der Benutzerverwaltung sowie grundlegende Werkzeuge für die Kommandozeile. Für grafische Werkzeuge siehe den jeweiligen [#Grafisch speziellen Artikel zum Desktop]. = Benutzer = Die Benutzernamen unter Linux sind eigentlich aussagekräftig genug, um hier keine großen Erklärungen abgeben zu müssen. Die meisten Systemdienste bringen auch ihren eigenen Benutzer mit. || Benutzername || Funktion || || `root` || Der Systemverwalter unter Linux || || `nobody` || Wird von Prozessen als Benutzerkennung verwendet, wenn nur ein Minimum an Rechten vergeben werden soll || || `cupsys` || Benutzer des Druckdienstes [:CUPS:] || || `www-data` || Benutzer des Webservers [:Apache:] || Diese Liste ließe sich noch deutlich erweitern, doch die meisten System-Benutzer sollten sich allein aus der Namensgebung heraus erklären. == Sonderfall: Benutzer root == Standardmäßig existiert unter Linux immer ein Konto für den Benutzer [:root:] mit der numerischen Benutzerkennung 0. Dies ist ein Systemkonto mit vollem Zugriff auf das gesamte System und damit auch auf alle Dateien und Einstellungen aller Benutzer. Bei Ubuntu wird dem Benutzer root allerdings kein Passwort zugewiesen. Dadurch kann sich niemand direkt unter dem Namen "root" anmelden, allerdings können dazu berechtigte Benutzer, d.h. die aus der Gruppe `sudo`, mit Hilfe der Programme [:sudo:] und [:PolicyKit/pkexec:pkexec] in die Rolle von root wechseln. Der erste anlegte Benutzer ist unter Ubuntu bzw. dessen Derivaten immer automatisch Mitglied der Gruppe `sudo` und kann so [:mit Root-Rechten arbeiten:]. Wie bei Bedarf weitere Nutzer dieser Gruppe hinzugefügt werden können ist weiter unten im Artikel erklärt. = Gruppen = Jeder Benutzer ist einer Hauptgruppe zugeordnet, kann daneben aber auch Mitglied weiterer Gruppen sein. Der Zugriff auf gewisse Hardware oder Dienste ist auf die Mitglieder einer bestimmten Gruppe beschränkt. So dürfen z.B. nur Benutzer, die zur Gruppe ''"audio"'' gehören, Klänge über die Soundkarte ausgeben. Möchte man nun einem Benutzer die Berechtigung für die Soundkarte geben, so erreicht man dies, indem man ihn in die Gruppe ''"audio"'' aufnimmt. Die Hauptgruppe eines Benutzers spielt im Zusammenhang mit den Zugriffsberechtigungen auf Dateien und Verzeichnisse eine Rolle. Jede Datei ist immer Eigentum genau eines Benutzers. Daneben ist den Dateien aber auch eine Gruppe zugeordnet. Wenn ein Benutzer eine Datei erzeugt, dann wird seine Hauptgruppe als Gruppe bei der erzeugten Datei eingetragen. Hier folgt nun eine Liste der Gruppen, die üblicherweise Benutzern zugewiesen werden. Nicht alle dieser Gruppenzugehörigkeiten lassen sich über die einfachen grafischen Obrflächen der Desktop-Umgebungen setzen. {{{#!vorlage Tabelle '''Gruppe''' '''Funktion''' '''20.04''' '''22.04''' +++ `sudo` Administrator-Aufgaben mittels [:sudo:] ausführen <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] +++ `adm` Nur Benutzer, die in dieser Gruppe sind, dürfen [:Logdateien:] ansehen <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] +++ `audio` Audio-Geräte verwenden <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] +++ `cdrom` CD-ROM Laufwerke benutzen <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] +++ `dialout` Serielle Geräte benutzen (z.B.: Modems, Palm Pilots) <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] +++ `dip` Werkzeuge verwenden, die eine Verbindung durch Einwahl herstellen <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] +++ `fuse` Auf Geräte des [:FUSE:] zugreifen <:>[[Bild(Wiki/Icons/Tango/dialog-cancel.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-cancel.png, 32)]] +++ `lpadmin` Drucker einrichten und über [:CUPS:] konfigurieren. <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] +++ `plugdev` Zugriff auf externe Speichergeräte automatisch ermöglichen <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] +++ `sambashare` Mit [:Samba:] Usershares einrichten <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] +++ `video` Video-Beschleunigung oder TV-Karten benutzen <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] <:>[[Bild(Wiki/Icons/Tango/dialog-ok.png, 32)]] }}} {{{#!vorlage Hinweis Durch die ständige Weiterentwicklung von Ubuntu kann es vorkommen, dass bestimmte Gruppenzugehörigkeiten nicht mehr benötigt werden, die Funktion aber trotzdem zur Verfügung steht. }}} = Werkzeuge zur Verwaltung von Benutzern und Gruppen = Benutzer und Gruppen können sowohl aus den Desktop-Umgebungen heraus als auch mittels Konsole bearbeitet werden. Im Folgenden werden die Grundfunktionen beschrieben. == Namenskonventionen == Die Namen von Benutzern und Gruppen unterliegen gewissen Einschränkungen: 1. Sie sollten mit einem Kleinbuchstaben beginnen. 1. Danach können weitere Kleinbuchstaben, Ziffern (0-9), - (Minuszeichen) oder _ (Unterstrich) folgen. Zur Kompatibilität mit Konten auf Samba-Rechnern wird außerdem $ am Ende des Benutzernamens unterstützt. 1. Sie dürfen nur einmal auf dem System vergeben sein. Diese Regeln sind in der Datei '''/etc/adduser.conf''' festgelegt. == Passwörter == Jedem Benutzer muss ein Passwort zugewiesen werden. Bei der Passwortvergabe sollte darauf geachtet werden, keine deutschen Sonderzeichen (ä,ö,ü,ß) zu verwenden. Sollte das Keyboardlayout einmal partout auf Englisch stehen, kann man sich sonst nicht mehr anmelden. == Grafisch == Die grafischen Oberflächen zur Benutzer- und Gruppenverwaltung sind in eigenen Artikeln beschrieben: * Ubuntu (Gnome): [:Benutzer_und_Gruppen_Ubuntu:] * Kubuntu (KDE): [:Benutzer_und_Gruppen_Kubuntu:] * Xubuntu (Xfce) sowie Ubuntu Unity: [:Benutzer_und_Gruppen_Xubuntu:] * Lubuntu (LXDE): [:Benutzer_und_Gruppen_Lubuntu:] * Ubuntu MATE: [:Benutzer und Gruppen Ubuntu MATE:] Ubuntu Budgie sowie Ubuntu Cinnamon haben eigene Werkzeuge, die noch nicht beschrieben sind. == Terminal == Selbstverständlich lassen sich auch alle Aktionen zur Benutzerverwaltung über ein Terminal ausführen. Hier soll keine vollständige Ausführung zu diesen Kommandos erfolgen, sondern nur eine kurze Einleitung gegeben werden, um eine Basis zu vermitteln. Mehr zu den einzelnen angeführten Befehlen findet sich in der [:Shell/Befehlsübersicht:Befehlsübersicht]. === Informationen über den aktuellen Benutzer === {{{#!vorlage Befehl id }}} === Anzeigen der Benutzer in einzelnen Gruppen === {{{#!vorlage Befehl less /etc/group }}} === Benutzer hinzufügen === {{{#!vorlage Befehl sudo adduser BENUTZERNAME }}} Weitere Details in [:adduser:]. === Benutzer löschen === * Nur Benutzer löschen: {{{#!vorlage Befehl sudo deluser BENUTZERNAME }}} * Benutzer inkl. der Daten aus dem Home-Verzeichnis löschen: {{{#!vorlage Befehl sudo deluser --remove-home BENUTZERNAME }}} Weitere Details in [:deluser:]. === Neuen Benutzer hinzufügen und seine primäre Gruppe bestimmen === {{{#!vorlage Befehl sudo adduser BENUTZERNAME --ingroup GRUPPENNAME }}} === Bestehenden Benutzer einer weiteren Gruppe hinzufügen === {{{#!vorlage Befehl sudo usermod -aG GRUPPENNAME BENUTZERNAME }}} === Standardgruppe eines Benutzers ändern === {{{#!vorlage Befehl sudo usermod -g GRUPPENNAME BENUTZERNAME }}} === Benutzer aus einer Gruppe entfernen === {{{#!vorlage Befehl sudo deluser BENUTZERNAME GRUPPENNAME }}} ## ## Folgender Befehl sieht mir eher nach usermod -g (also mit kleinem g) aus. Bitte überprüfen. ## ## === Hauptgruppe eines Benutzer ändern === ## Manchmal ist es nötig, dass ein Benutzer seine Dateien automatisch für eine andere Gruppe als seiner ursprünglichen Hauptgruppe zugänglich macht. Zum Beispiel möchte man einen FTP-Benutzer haben, der direkt in eine chroot-Umgebung des Apache-Servers Dateien hochladen kann. Sinnvoll ist es nun, dass die Dateien gleich mit der Gruppe 'www-data' erstellt werden. ## {{{#!vorlage Befehl ## sudo usermod -G GRUPPENNAME BENUTZERNAME ## }}} === Eine neue Gruppe erstellen === {{{#!vorlage Befehl sudo addgroup GRUPPENNAME }}} === Benutzernamen ändern === Der Benutzername lässt sich leicht mittels {{{#!vorlage Befehl usermod -l NEUERNAME ALTERNAME }}} ändern. Dies ist allerdings nur möglich, wenn der zu ändernde Benutzername gerade nicht aktiv (d.h. nicht am System angemeldet) ist. {{{#!vorlage Hinweis Dies funktioniert nicht bei einem mit ecryptfs verschlüsselten Benutzerverzeichnis. }}} Damit auch das [:Benutzerverzeichnis:] entsprechend zum neuen Namen `NEUERNAME` geändert wird, muss jetzt noch ein weiterer Befehl folgen: {{{#!vorlage Befehl usermod -d /home/NEUERNAME -m NEUERNAME }}} === Vollständigen Benutzernamen ändern === Wenn man nur den vollständigen Benutzernamen (Vor-/Nachname) ändern möchte, nicht aber den Anmelde-Benutzernamen, kann man dies mit {{{#!vorlage Befehl sudo chfn -f NEUER_VOLLSTÄNDIGER_NAME BENUTZERNAME }}} erreichen. Siehe auch [:chfn:]. === Passwort ändern === * Eigenes Passwort ändern: {{{#!vorlage Befehl passwd }}} * Passwort eines anderen Benutzers ändern: {{{#!vorlage Befehl sudo passwd BENUTZERNAME }}} Weitere Informationen erhält man im Artikel [:passwd:]. == Voreinstellung ändern == Wenn man die Voreinstellung ändern möchte, so dass die Dateien künftig neu angelegter Benutzer nicht von anderen Benutzern lesbar sind, so geht das im Terminal mit dem Befehl: {{{#!vorlage Befehl sudo dpkg-reconfigure adduser }}} Die Frage ''"Wünschen Sie systemweit lesbare Home-Verzeichnisse"'' sollte man hier dann auf ''"Nein"'' setzen. = Problembehebung = == Neue Gruppenzugehörigkeit sofort aktivieren == Wenn man einen Benutzer einer weiteren Gruppe zuordnet, muss sich dieser Benutzer prinzipiell erst ab- und wieder neu anmelden, bevor die neue Gruppenzugehörigkeit aktiv wird. Mit dem Befehl [:newgrp:] kann man das umgehen. == Nummerierung der UID/GID == In seltenen Fällen kann es nützlich sein festzulegen, wie Benutzerkonten (UID) und Gruppen (GID) nummeriert werden. Normalerweise beginnt Ubuntu hier bei `1000`. Der Startwert kann in der Datei '''/etc/login.defs''' festgelegt werden. Beispiele: {{{ UID_MIN 500 GID_MIN 500 }}} == USB-Gerät ist nicht als /dev/ttyUSB... verfügbar == Das kann dadurch verursacht sein, dass der aktuelle Benutzer nicht in der Gruppe `tty` eingetragen ist. Kontrollieren lässt sich das für den aktuellen Benutzer mit dem Befehl: {{{#!vorlage Befehl groups }}} Wie der aktuelle Benutzer zur Gruppe `tty` hinzugefügt werden kann, ist oben beschrieben. Eine Möglichkeit, den Benutzer `xyz` zur Gruppe hinzuzufügen, ist: {{{#!vorlage Befehl sudo addgroup xyz tty }}} = Links = * [:Shell/Befehlsübersicht#Benutzerverwaltung:Benutzerverwaltung] {Übersicht} Kommandozeilenwerkzeuge * [:Rechte:] - Verwaltung der Besitz- und Zugriffsrechte für Ordner und Dateien in Linux * [:chown:] - Eigentümer und/oder Gruppe von Dateien und Ordnern ändern * [:chgrp:] - Gruppenzugehörigkeit von Dateien und Ordnern ändern * [:chmod:] - Zugriffsrechte von Dateien ändern * Besonderheiten bei Desktops: [[Seitenliste('Benutzer und Gruppen *' ) ]] # tag: Einsteiger, System, Sicherheit