Manchmal erscheint es sinnvoll, für Gäste einen Zugang am Rechner zu haben. Alle Inhalte die ein Gast abspeichert werden nach dem ausloggen wieder gelöscht. Jeder neue Login startet mit einem vollkommen frischen Profil und Home-verzeichnis.
Dieses Paket stellt auf einfache Weise so einen Gast-Zugang zur Verfügung.
##Systemvoraussetzungen
Dieser Gast-Zugang ist über systemd gelöst. Dies ermöglicht es sehr einfach den Gastzugang zu aktivieren (auch mehrere), und auch wieder zu deaktivieren.
Wenn am System btrfs als Dateisystem genützt wird, wird das Home-Verzeichnis als Btrfs-Snapshot von /etc/skelXXX angelegt. Beim Ausloggen wird der gesamte Snapshot wieder gelöscht.
In GDM erscheint der Gastzugang sofort nach dem aktivieren mittels systemd
Zur Einrichtung muss man sich einmal als Gast anmelden, den Desktop so konfigurieren, wie man ihn dem Gast zur Verfügung stellen möchte (Alias, Shortcuts, Desktop-Icons, Favoriten, Gnome3-Erweiterungen...).
Auch den Browser mit allen Addons, Startseite, Suchmaschinen usw. so herrichten, wie man das für seinen Gast-User will.
Ich hab startpage.com und metager.de als Suchmaschinen hinzugefügt und als Standardsuchmaschine aktiviert, Google entfernt (Startpage ersetzt Google 1:1).
Als Erweiterungen empfehle ich dezentraleyes, uBlock-Origin, Libredirect, Neat Urls, Snapdrop
Wenn der Desktop fertig eingerichtet ist, die Browser-History und allfällige Cookies löschen **eingeloggt bleiben und als root das gesamte /home/gast nach /etc/skelgast kopieren/synchronisieren**.
Für die Anpassung des zweiten Vorlagehome-Verzeichnisses gilt das selbe wie oben beschrieben.
## Beenden aller Userprozesse
Seit einigen Versionen von logind ist es Standard, dass logind beim ausloggen (der letzten Usersession) alle noch laufenden Prozesse des Users beendet.
Dies ist eigentlich ein gutes Verhalten, da z.B. zeitgeist-datahub oder hplip-systray weiterlaufen würden und so weitere Usersessions erzeugt würden, wenn sich ein User erneut einloggt.
Werden alle außerhalb einer Session laufenden Prozesse beendet wird auch screen oder tmux beendet. Das ist ein unerwünschtes Verhalten, deshalb wird in Debian standardmäßig diese Option wieder deaktiviert.
Prinzipiell ist es sehr sinnvoll alle User-Prozesse beim ausloggen zu beenden (systemd-Standardverhalten), daher muss man es in Debian manuell aktivieren:
Für das Problem mit screen/tmux ist gibt es eine Anleitung für eine Service-Unit für screen/tmux, die für jene User vom Administrator aktiviert werden muss, welche screen nutzen können sollen oder wollen.
Soll das Debian-Standardverhalten für die User-Sessions aber beibehalten werden, so muss für eine korrekte Funktion der Guestsession aber das Beenden aller User-Prozesse für Guest explizit erlaubt werden:
In /etc/systemd/logind.conf ist noch wichtig folgende Zeile zu aktivieren:
editor /etc/systemd/logind.conf
KillOnlyUsers=gast
(das "#" am Zeilenbeginn entfernen und "gast" hinzuzufügen.)
##Deaktivieren des Gastzuganges
Soll dieser Gastzugang deaktiviert werden, so führt man folgende Befehle als root aus: