Benutzer und Gruppen verwalten

Aus LinuxUser 07/2023

Benutzer und Gruppen verwalten

© Bluebay / 123RF.com

Zugriffskontrolle

Auf dem Familien- oder WG-Rechner legen Sie unter Ubuntu mit wenigen Klicks mehrere Benutzerkonten an, die mehr Privatsphäre bieten, aber dennoch den Datenaustausch untereinander erlauben.

Wenn Sie das bei der Installation festgelegt haben, meldet Ubuntu Sie nach dem Booten automatisch an. Ihr Passwort benötigen Sie nur gelegentlich für administrative Zwecke. Wenn Sie sich den Rechner jedoch mit anderen Personen teilen, ist es sinnvoll, dass jeder sein eigenes Benutzerkonto verwendet.

Wir zeigen, wie Sie unter Ubuntu mehrere Konten verwalten und Dateien mit anderen Benutzern des Rechners teilen. Ein Zweitkonto bietet auch dann Vorteile, wenn Sie den Rechner allein nutzen – beispielsweise dann, wenn Sie die Konfiguration eines Programms zerschossen haben und prüfen möchten, wie die Einstellungen richtig aussehen sollten. Auch für das Home-Banking und für dienstliche Aufgaben ergeben getrennte Accounts durchaus Sinn.

Benutzer anlegen

Um unter Ubuntu neue Konten anzulegen, drücken Sie [Super], geben im Suchfeld Benutzer ein und klicken dann auf den Treffer Einstellungen | Benutzer. Damit aktivieren Sie die Benutzerverwaltung aus dem Gnome Control Center, in der Sie aber zunächst nur Ihr eigenes Passwort ändern können. Für weitergehende Änderungen benötigen Sie Root-Rechte. Entsprechend zeigt Ubuntu hier den Hinweis Entsperren, um Nutzer hinzuzufügen und Einstellungen zu ändern an (Abbildung 1).

Abbildung 1: Für die umfassende Benutzerverwaltung benötigen Sie das Root-Passwort.

Abbildung 1: Für die umfassende Benutzerverwaltung benötigen Sie das Root-Passwort.

Klicken Sie auf Entsperren und geben Sie dann Ihr Passwort ein. Der Dialog verändert sich nun ein wenig: Unter anderem lässt sich jetzt das automatische Anmelden umschalten. Interessanter ist, dass Sie nun unten im Fenster auf Benutzerkonto hinzufügen klicken können. Jetzt öffnet sich ein neuer Dialog.

Tragen Sie zunächst den Vor- und Nachnamen ein. Ubuntu schlägt dann automatisch als Benutzernamen die kleingeschriebene Kombination dieser Namen vor. Per Klick auf die Dropdown-Schaltfläche neben dem Benutzernamensfeld wählen Sie aus einigen alternativen Namensvorschlägen: Ubuntu hat zum Beispiel nur den Vornamen (antonia), nur den Nachnamen (arndt) und auch Kombinationen mit einer Initiale (antoniaa, aarndt) im Angebot (Abbildung 2). Alternativ vergeben Sie selbst einen Nutzernamen.

Abbildung 2: Ubuntu schlägt selbstständig mögliche Benutzernamen vor, die es aus Vor- und Nachnamen generiert.

Abbildung 2: Ubuntu schlägt selbstständig mögliche Benutzernamen vor, die es aus Vor- und Nachnamen generiert.

Soll der neue Benutzer auch das Recht bekommen, systemweite Einstellungen zu ändern, aktivieren Sie die Option Systemverwalter. Beachten Sie, dass Systemverwalter alle Verzeichnisse öffnen und dort enthaltene Dateien einsehen dürfen – auch die von allen anderen Benutzern inklusive Ihnen.

Der Dialog sah bis zur Ubuntu-Version 22.04 ein wenig anders aus: In älteren Releases konnten Sie per Klick auf eine der beiden Schaltflächen Standard und Systemverwalter entscheiden, ob Sie ein einfaches oder ein Systemverwalterkonto anlegen.

Unter Passwort ist die Option Benutzer legt das Passwort bei der ersten Anmeldung fest voreingestellt. Das bietet die praktische Möglichkeit, ein Konto anzulegen, ohne dem neuen Benutzer das Passwort aufzuschreiben oder auf andere Weise mitteilen zu müssen. Das Risiko, dass vor dem ersten Login ein Fremder den Rechner benutzt und selbst das Passwort setzt, ist da eher gering.

Möchten Sie das Passwort selbst setzen, zum Beispiel weil Sie sich ein Zweitkonto anlegen, klicken Sie stattdessen auf Jetzt Passwort festlegen und tragen das Kennwort dann zwei Mal in die unteren Felder ein. Statt der eingegebenen Zeichen erscheinen nur Punkte; ein Klick auf das Augensymbol rechts neben dem Feld blendet den Klartext ein.

Ubuntu lässt hier keine beliebigen Passwörter zu und gibt Hinweise, wie sich das Kennwort verbessern lässt. Eine Farbkodierung begleitet das schrittweise mit dem Wechsel von Rot über Gelb nach Grün. Die zugrunde liegenden Regeln sorgen allerdings gelegentlich für Verwirrung: So markierte die Prüfung zwar meinpasswort in Grün (zulässig), während pi=3,1415 nur Gelb (noch zulässig) erreichte und eine 100-stellige Zahl als unzulässig bewertet wurde (Abbildung 3).

Abbildung 3: Jede Distribution hat eigene Vorstellungen davon, was ein sicheres Passwort auszeichnet.

Abbildung 3: Jede Distribution hat eigene Vorstellungen davon, was ein sicheres Passwort auszeichnet.

Wenn Sie das Passwort aus Ubuntu-Sicht akzeptabel gestalten und es im zweiten Feld fehlerfrei wiederholen, aktiviert sich ganz oben die Schaltfläche Hinzufügen. Ein Klick darauf legt das Konto an und schließt den Dialog.

Wenn Sie mehrere Konten nacheinander anlegen und sich dabei zu viel Zeit lassen, wird übrigens ein erneutes Entsperren nötig. Dahinter steckt die Sorge, dass Sie zwischenzeitlich vom Arbeitsplatz weggegangen sein könnten und ein Fremder die Gelegenheit nutzt, sich ein Administratorkonto einzurichten.

Unsicheres Passwort vergeben

Wollen Sie ein Passwort verwenden, das Ubuntus Benutzerverwaltung nicht akzeptiert, vergeben Sie beim Anlegen des Kontos zunächst ein anderes Kennwort. Öffnen Sie dann ein Terminalfenster und geben Sie dort die Befehlszeile aus Listing 1 ein, wobei Sie User durch den Namen des neuen Benutzers und Passwort durch Ihr Wunschpasswort ersetzen. Das Programm Chpasswd dient zur automatischen Vergabe von Passwörtern in Skripten. Zwar prüft auch dieses Tool das Passwort auf Sicherheit, es trägt aber auch unsichere Passwörter ein und gibt lediglich eine Warnung aus.

Listing 1

Unsicheres Passwort

$ sudo su echo User:Passwort | chpasswd

Benutzerwechsel

Haben Sie bei der Erstinstallation die automatische Anmeldung eingeschaltet, bleibt es zunächst dabei: Beim Booten meldet Ubuntu Sie automatisch und ohne Passwortabfrage mit diesem Konto an. Sie können sich aber einfach abmelden (Klick auf die Icons am rechten oberen Rand, Klick auf das Ausschaltsymbol, Auswahl von Abmelden). Dann erscheint ein Anmeldedialog, in dem Sie ein Konto zum Login auswählen (Abbildung 4). Klicken Sie das gewünschte Konto an und geben Sie im nächsten Schritt das Passwort ein. Falls es noch keines gibt, wählen Sie an dieser Stelle ein neues aus. Am Hinweis Geben Sie ein neues Passwort ein. Sie müssen Ihr Passwort sofort ändern — von root erzwungen erkennen Sie, dass noch kein Kennwort existiert.

Abbildung 4: Der Login-Dialog erscheint, nachdem Sie sich aus einer laufenden Sitzung abmelden oder das Feature <span class="ui-element">Benutzer wechseln</span> verwenden.

Abbildung 4: Der Login-Dialog erscheint, nachdem Sie sich aus einer laufenden Sitzung abmelden oder das Feature Benutzer wechseln verwenden.

Ubuntu lässt auch das Anmelden mehrerer Benutzer gleichzeitig am Rechner zu; dann laufen mehrere Sessions parallel. Davon kann immer nur eine aktuell sein, also auf dem Bildschirm sichtbar und mit Maus und Tastatur benutzbar. Zwischen den Sessions wechseln Sie bequem und schnell, indem Sie im Ausschaltdialog nicht Abmelden wählen, sondern Benutzer wechseln. Dadurch bleibt die bestehende Session aktiv, alle Programme laufen im Hintergrund weiter.

Um weitere aktive Sessions zu ermitteln, verwenden Sie das Kommandozeilenwerkzeug Loginctl. Rufen Sie es ohne Parameter auf, zeigt es eine Liste aller aktiven Sitzungen an (Abbildung 5). Mit loginctl kill-session und Angabe einer Session-ID beenden Sie eine Sitzung. Mit loginctl kill-user klappt das auch unter Angabe des gewünschten Nutzernamens. Das funktioniert aber nur, wenn Sie ein Administratorkonto verwenden und Ihr Passwort eingeben. Als unerwarteter Nebeneffekt landen Sie danach am Anmeldebildschirm: Ihre eigene Session bleibt aber aktiv, und Sie können nach Benutzerauswahl und Passworteingabe weiterarbeiten.

Abbildung 5: Der Aufruf <code>w</code> zeigt alle am System angemeldeten Benutzer an, <code>loginctl</code> die Gnome-Sitzungen.

Abbildung 5: Der Aufruf w zeigt alle am System angemeldeten Benutzer an, loginctl die Gnome-Sitzungen.

Geteilter Zugriff

Haben Sie mehr als ein Benutzerkonto eingerichtet, stellt sich die Frage, wie Sie Dateien zwischen den Home-Verzeichnissen hin und her transferieren. Ubuntu gibt jedem Heimatordner nur Zugriffsrechte für den jeweiligen Besitzer.

Das überprüfen Sie, indem Sie ein Dateimanagerfenster öffnen, per Klick auf Persönlicher Ordner in Ihr eigenes Home-Verzeichnis umschalten und dann mit [Alt]+[Pfeil-oben] eine Verzeichnisebene nach oben in den Ordner /home wechseln. Schneller geht es mit [Strg]+[L], der Eingabe von /home und dem Bestätigen mit [Eingabe]. Sie sehen dann für jedes Benutzerkonto einen Ordner. Jeden außer Ihrem eigenen kennzeichnet ein rotes X als nicht zugreifbar (Abbildung 6).

Abbildung 6: Der Zugriff auf fremde Home-Verzeichnisse ist zun&auml;chst verboten.

Abbildung 6: Der Zugriff auf fremde Home-Verzeichnisse ist zunächst verboten.

Versuchen Sie, mit einem Doppelklick auf einen der gesperrten Ordner zuzugreifen, gelingt das nach zweimaliger Eingabe Ihres Passworts doch. Das gilt zumindest dann, wenn Sie mit einem Systemverwalterkonto angemeldet sind, also beispielsweise mit dem ersten Konto, das Sie bei der Ubuntu-Installation angelegt haben. Systemverwalter können jederzeit die für den Zugriff auf fremde Ordner nötigen Root-Rechte anfordern.

Allen Benutzern ohne Systemverwalterstatus bleibt der Zugriff verwehrt. Eine Lösung besteht darin, einen gemeinsamen Austauschordner zu nutzen. Damit alle gewünschten Nutzer Zugriff darauf erhalten, ist ein wenig Arbeit nötig: Zunächst brauchen Sie eine neue Benutzergruppe, der Sie dann alle Konten hinzufügen.

Suchen Sie nach einer Möglichkeit, Benutzergruppen zu verwalten, werden Sie in Ubuntus Systemeinstellungen nicht fündig. Sie könnten das Paket gnome-system-tools nachinstallieren und dann die enthaltene Anwendung Benutzer und Gruppen verwenden. Das ist aber umständlich, und für die exakte Zugriffsregelung des Austauschordners benötigen Sie sowieso ein Terminalfenster.

Öffnen Sie also ein solches mit [Strg]+[Alt]+[T] und geben Sie darin die Befehle aus Listing 2 ein. Für dieses Beispiel gehen wir davon aus, dass Sie eine Gruppe anlegen möchten, die aus den drei Familienmitgliedern ernie, bert und tiffy besteht. Den Gruppen- und Nutzernamen passen Sie an die lokalen Gegebenheiten an.

Listing 2

Gruppe anlegen

$ sudo su
# groupadd family
# usermod -aG family ernie
# usermod -aG family bert
# usermod -aG family tiffy
# mkdir /home/family
# chown ernie:family /home/family
# chmod u=rwx,g=rwxs,o=/home/family

Weil alle folgenden Kommandos Systemverwalterrechte benötigen, werden Sie mit sudo su zum Administrator (Zeile 1. Am geänderten Shell-Prompt (#) erkennen Sie, dass Sie jetzt Root-Rechte besitzen (Zeile 2).

Der Befehl groupadd legt eine neue Gruppe namens family an. Die drei darauf folgenden usermod-Aufrufe fügen dieser Gruppe die Benutzer ernie, bert und tiffy hinzu (Zeile 3 bis 5). Mit mkdir erstellen Sie den Austauschordner /home/family (Zeile 6), chown setzt die Eigentumsverhältnisse auf ernie als Besitzer und family als Besitzergruppe (Zeile 7). Der Besitzer kann ein beliebiger Nutzer aus der Liste der Zugriffsberechtigten sein, die Gruppe muss jedoch die neue Gruppe sein.

Die Magie steckt im letzten Kommando chmod (Zeile 8). Für den Besitzer und für die Gruppenmitglieder vergibt der Aufruf damit alle denkbaren Rechte für das Verzeichnis:

  • lesen (read, r),
  • schreiben (write, w), und
  • betreten beziehungsweise ausführen (execute (x)).

Das zusätzliche s bei den Gruppenrechten sorgt für folgendes Spezialverhalten: Alle neuen Dateien und Ordner, die Sie oder andere Benutzer im Austauschordner anlegen, erhalten automatisch family als Besitzergruppe, sodass auch alle anderen Gruppenmitglieder Zugriffsrechte erhalten. Das Attribut s heißt SGID-Bit (Set-Group-ID-Bit).

Das normale Verhalten beim Anlegen einer Datei oder eines Ordners besteht darin, dass die eigene Standardgruppe zur Besitzergruppe wird (siehe Kasten “Standardgruppen”). In Abbildung 7 sehen Sie, wie sich der Unterschied auswirkt: Im oberen Fenster erzeugte Benutzer ernie zwei Testdateien, eine im Ordner /tmp (keine besonderen Attribute eingestellt) und eine im Ordner /home/family/ (SGID-Bit gesetzt). Nur die zweite Datei gehört der Gruppe family, sodass im zweiten Fenster die Benutzerin tiffy Schreibzugriff darauf erhält. Für die Datei in /tmp fehlen ihr die nötigen Schreibrechte, denn dieses File gehört der Gruppe ernie, der tiffy nicht angehört.

Standardgruppen

Jeder Benutzer muss Mitglied einer Standardgruppe sein, die Mitgliedschaft in weiteren Gruppen ist optional. Erzeugt ein Benutzer eine neue Datei, wird diese Standardgruppe als Eigentümergruppe eingetragen; Zugriffsrechte für die Gruppe gelten dann für Mitglieder genau dieser Standardgruppe.

Abbildung 7: Im Austauschordner geh&ouml;ren dank SGID-Bit alle neuen Dateien und Ordner der Gruppe <span class="ui-element">family</span>.

Abbildung 7: Im Austauschordner gehören dank SGID-Bit alle neuen Dateien und Ordner der Gruppe family.

Der Chmod-Aufruf lässt sich auch kürzer fassen, wenn Sie die numerische Darstellung der Zugriffsrechte und weitere Attribute verwenden. Dann lautet der Befehl chmod 2770 /home/family. Die 2 steht für das SGID-Bit, die 7 jeweils für Lesen, Schreiben und Betreten – einmal für den Dateibesitzer, einmal für die Besitzergruppe. Die 0 am Ende steht dafür, dass sonstige Benutzer keinerlei Zugriffsrechte auf den Ordner erhalten.

Wie diese Standardgruppe festgelegt wird, regeln die Linux-Distributionen uneinheitlich. Ubuntu und Debian arbeiten mit benutzereigenen Gruppen (englisch: UPG, user-private groups). Legen Sie ein neues Benutzerkonto an, fügt Ubuntu dem System automatisch eine gleichnamige Gruppe hinzu und macht diese zur Standardgruppe des neuen Benutzers.

In dieser Gruppe ist der Benutzer dann allein. Bei Distributionen, die so vorgehen, haben der Besitzer und die Besitzergruppe immer Lese- und Schreibrechte für neu erzeugte Dateien. Hier funktioniert der SGID-Trick für gemeinsame Ordner: Bei einem SGID-Verzeichnis gehören neu darin angelegte Dateien stets der Gruppe, die das Verzeichnis besitzt, egal, wer sie anlegt. Der Umask-Wert steht standardmäßig auf 0002, was bedeutet, dass sonstige Benutzer keine Schreibrechte für neue Dateien erhalten – es bleiben die Rechte rw-rw-r--.

Andere Distributionen ordnen Benutzer stattdessen einer gemeinsamen Standardgruppe users zu. Um Sicherheitsprobleme zu vermeiden, erhalten hier nur Gruppenmitglieder Leserechte für neue Dateien, also Mitglieder von users – schließlich sind alle regulären Benutzer Mitglieder dieser Gruppe. Der Umask-Wert lautet in diesem Modell 0022: Gruppenmitglieder und sonstige Benutzer erhalten hier keine Schreibrechte, es bleiben also die Rechte rw-r--r--. Der SGID-Trick für den Austauschordner funktioniert auf einem solchen System nicht.

Welches dieser Verfahren Ihre Distribution einsetzt, finden Sie heraus, indem Sie eine Datei erzeugen und sich mit stat die User- und Gruppennamen sowie IDs dieser Datei ausgeben lassen. Listing 3 zeigt das am Beispiel von Ubuntu (ab Zeile 1) und OpenSuse (ab Zeile 8). Alternativ ermitteln Sie Ihre Gruppen-ID auch mit id (Zeile 14): Der Befehl gibt die User-ID und den Benutzernamen, die Gruppen-ID und den Gruppennamen sowie die Liste aller weiteren Gruppen aus, denen Sie angehören.

Listing 3

Gruppenrechte

$ lsb_release -i 2>/dev/null
Distributor ID: Ubuntu
$ touch /tmp/test
$ stat -c "%U(%u), %G(%g) %A" /tmp/test
esser(1000),esser(1000) -rw-rw-r--
$ umask
0002
$ lsb_release -i
Distributor ID: openSUSE
$ touch /tmp/test
$ stat -c "%U(%u), %G(%g) %A" /tmp/test
esser(1000),users(100) -rw-r--r--
$ umask 0022
$ id uid=1000(esser) gid=1000(esser) Gruppen=1000(esser),4(adm),24(cdrom),25(floppy),27(sudo),30(dip),46(plugdev),100(users),118(lpadmin),1004(family)

GUI neu starten

Für eigene Tests mit dem neuen Austauschordner schließen Sie alle Fenster außer dem Terminal und geben dann den Befehl killall -u $USER ein. Das Kommando meldet Sie nicht nur ab, sondern terminiert auch alle weiteren Prozesse, die zu Ihrem Konto gehören. Im Test unter Ubuntu war dieser Schritt (und eine folgende Wiederanmeldung) nötig, um die Gruppenmitgliedschaft zu aktivieren. Ein Reboot löst das Problem ebenfalls.

Erzeugen Sie nun einige Dateien und Verzeichnisse im neuen Austauschordner, melden Sie sich dann ab und als eines der anderen Gruppenmitglieder wieder an. Sie sollten jetzt in der Lage sein, den Austauschordner zu betreten und auf die darin liegenden Dateien genau wie auf eigene Dateien zuzugreifen, also lesend und schreibend.

Allein am PC

Auch als alleiniger Benutzer des PCs profitieren Sie von mehreren Benutzerkonten, indem Sie beispielsweise sicherheitskritische Online-Aktivitäten wie Banking oder den Zugriff auf den beruflichen E-Mail-Account mit einem separaten Konto erledigen. Dank der Sitzungsverwaltung von Ubuntu fällt der Wechsel zwischen zwei Konten leicht, sobald Sie sich auf beiden Accounts eingeloggt haben.

Ein weiteres beliebtes Anwendungsgebiet für Extra-Konten sind Reparaturversuche: Gelegentlich starten Programme nicht mehr ordentlich, weil zum Beispiel der Absturz einer Anwendung dazu führte, dass Teile der Konfigurationsdateien beschädigt wurden und jeden neuen Start sabotieren. In dem Fall starten Sie das Programm einmal unter einem frischen Account und vergleichen dann die Inhalte der Konfigurationsdateien im alten und im neuen Konto. Mit etwas Geduld können Sie so die Fehlerursache finden und die Konfiguration reparieren, ohne alles zurück auf null zu setzen.

Listing 4

Ablauf verfolgen

$ strace -f -e trace=file -o trace.log gnome-text-editor

Abbildung 8: Mit Strace finden Sie heraus, welche Konfigurationsdateien ein Programm &ouml;ffnet. Vergleichen Sie Versionen eines alten und eines frisch angelegten Accounts, um Problemquellen zu finden.

Abbildung 8: Mit Strace finden Sie heraus, welche Konfigurationsdateien ein Programm öffnet. Vergleichen Sie Versionen eines alten und eines frisch angelegten Accounts, um Problemquellen zu finden.

Hier hilft es auch, unter beiden Accounts beim Programmstart zu verfolgen, welche Dateien geöffnet werden. Geben Sie zum Beispiel den Befehl aus Listing 4 ein, um den Editor zu starten und alle Dateizugriffe (öffnen, lesen/schreiben, schließen) in die Datei trace.log zu protokollieren. Die Ausgabe ist ein wenig kryptisch, Sie erkennen aber schnell, an welchen Stellen die Dateinamen auftauchen (Abbildung 8). (tle)

Glossar

[Super]

DIN 2137 und ISO/IEC 9995 erlauben auf Tastaturen zwei betriebssystemspezifische Tasten. Unter unixoiden Betriebssystemen bezeichnet man diese als Super-Tasten. Auf den meisten Keyboards tragen sie ein Windows-Logo (“Windows-Taste”), auf Mac-Tastaturen ein Schleifenquadrat.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 07/2023 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben