JTH hat geschrieben: 09.01.2020 20:07:34
Auch wenns inzwischen ein bisschen von der eigentlichen Frage weggeht:
Das Thema ist aber äußerst spannend und ich finde, dass das auch noch zusammenpasst.... zumindest, weil das ja alles zusammenhängt.
Also... ich habe heute morgen mal ein wenig experimentiert und herausgefunden, dass das prima klappt. Ich kann sowohl ein exklusives User-Home-Dir als auch ganz normale Samba-Shares komplett individuell und generisch genau für einen User mounten. Das bedeutet, egal wieviel User sich im Laufe eines Tages an diesem System anmelden, jeder User findet genau sein Homedir und sein Daten vor. Und es bedeutet, dass alle Zugriffe ganz konkret an die persönlichen Rechte dieses User gebunden sind.... so wie sie
zentral auf dem Server unter Linux und für Samba vergeben sind.
Es gab allerdings 2 Probleme. Das erste hängt mit dem Sound zusammen. Pulseaudio wird offensichtlich parallel im Anmeldeprozess verarbeitet, so dass die Sound-Settings lokal in ~/.config/pulse lagen, und zwar
bevor das homedir vom Server gemountet war. Das funktionierte trotzdem, weil die Filehandles ja trotz drüber-mounten leben, ist aber dennoch eine total unsaubere Situation. Ich konnte das mit 'nem dirty-hack lösen, in dem ich kurzerhand aus /etc/xdg die pulseaudio.desktop entfernt habe. Die müsste dann in den Autostart im homedir ...habe ich aber nicht gemacht, weils mir gereicht hat, den Fehler zu beseitigen. Das weitere wäre ja nur wieder Funktion wiederherstellen. Aber darum gings ja nicht. Bei der nächsten Anmeldung war also alles, wie es soll... homedir plus andere mounts userindividuell erfolgreich vom Server.
Das zweite Problem war (wobei ich nicht weiss, ob man das überhaupt als Problem sehen muss), dieses Server-Homedir ließ sich bei Abmeldung des Users nicht wieder unmounten.... laufende Prozesse *hmmm*. Möglicherweise ist das bei entsprechenden Rechten aber gar kein Problem, weil lokale Homedirs ja auch immer lokal existieren. Ich habe mich deshalb nicht weiter damit befasst.
Aber prinzipiell konnte ich feststellen, dass das Mounten komplett generisch funktioniert.
Findest du? Ich sehe das eher genau andersherum:
Du hast Recht... das ist 'ne völlig überflüssige Problemquelle.... kann man einfach vermeiden... und zwar ohne "users"
Nur so aus Interesse: Hast du das irgendwo beschrieben? Du hast ja manche Projekte dokumentiert
Ja, sicher... umfangreich sogar... in drei Steigerungsstufen bezogen auf die Anforderungen. Mit der letzten Stufe habe ich das jetzt getetstet, was relativ einfach war.... einfach nur einen zusätzlichen expliziten Service-Unit-Start (aus zeitlichen Gründen im Ablauf explizit vor der Normalverarbeitung) aufs Homedir mit dem Usernamen als Instanz-Parameter eingetragen und rennt....
Okay, für mobilere Geräte passt das natürlich nicht zwangsläufig. Für ein fixes, lokales Netz scheint mir pam_mount aber der simpelste Weg, mit der wenigsten Folge-/Wartungsarbeit. Wie löst du es, wenn kein Netzwerk verfügbar ist? Scheitert dann die Anmeldung?
Nööö, es wird gar nicht erst gemountet. Ist dort auch beschrieben... *fg*
Das ist insgesamt ein abgestimmtes Verfahren auf bestimmte Situationen: lokale Anmeldung mit Netz, fremde AP-Anmeldung ohne mein Netz, fremde-AP-Anmeldung mit Netz via OpenVPN. Dazu gehören generische Mounts, wie auch generische und persistente Netzwerk-Verbindungen.
In dem Moment mit dem richtigen Netzwerk verbinden geht aber wohl über den Scope von PAM hinaus.
Das kann PAM nicht... die Schwächen von PAM, Networkmanager, DHCPD, systemd-networkd und warum keines von denen für bestimmte Situationen für meine Anforderungen auf "einfachster Bedienkomfort" tauglich ist, habe ich dort auch beschrieben.