[SOLVED] Remote Desktop mit VNC trotz screen locker?
[SOLVED] Remote Desktop mit VNC trotz screen locker?
Kurz zum Anlass: In einer entfernten Laborumgebung im Gebäude brauche ich vorübergehend einen ferngesteuerten Laptop mit einem VNC Server. Da Debian Bookworm gerade raus ist, habe ich mal versucht auf die Schnelle einem Windows komplett das Bookworm Live Image überzubraten. Nachdem das Live Image auf dem Gerät erfolgreich startete, habe ich es mit calamares aus der Live-Umgebung installiert. Kleine Stolperfalle dabei übrigens, daß die Installation aus dem Image kurz vor Schluß (!) unbedingt doch noch einen Netzwerk-Connect braucht, um grub zu installieren.
Vorgefunden habe ich dann KDE mit Plasma (Wayland). Scheint irgendwie ein Hybrid aus Wayland im Kern und X11 an der Oberfläche zu sein. Blicke da aber noch nicht ganz durch. Test-Applikationen wie xeyes lassen sich jedenfalls wie eh und je per ssh umlenken.
VNC Server unter Wayland scheinen wohl noch in Progress zu sein. Zumindest KDE's Krfb schien zunächst zu funktionieren. Es stellte sich aber heraus, daß es in Bookworm keyboard und mouse nicht übermittelt. Dieser Bug ist erst in Trixie behoben, aus der ich Krfb dann geholt habe.
Jetzt läuft dieser VNC Server also, aber ich wünsche mir eine Möglichkeit, den Laptop bzw. dessen Desktop für Dahergelaufene zu sperren (z.B. Passwort), aber gleichzeitig von Ferne den entsperrten Desktop per VNC zu bedienen. Wenn ich KDE's Screen Locker benutze, sehe ich ja erwartungsgemäß den geperrten Desktop auch in meinem fernen VNC Client Krdc.
Scheint irgendwie auch folgerichtig bzw. logisch, aber ich weiß von Raspberry Pi Desktops, daß es da mal eine Lösung gab den echten Screen zu Locken, aber im VNC Client einen offenen Desktop zu haben. Raspberry benutzt allerdings den proprietären RealVNC wenn ich mich recht erinnere - und sowas will ich natürlich vermeiden.
Zur Not muß ich halt klassisch wieder einen firefox und Weiteres per X11-Forwarding über SSH heranholen.
Frage:
Habt ihr vielleicht eine Idee, ob und wie man aus dem Dilemma - lokal Desktop gesperrt, remote aber bedienbar - mit dem VNC Server Krfb herauskommen kann?
LG
PS: Etwas blöd finde ich, daß Krfb automatisch auf allen Interfaces lauscht. Ich würde diesen VNC-Server viel lieber einzig auf localhost 127.0.0.1 lauschen lassen und diesen Socket dann durch SSH tunneln.
Vorgefunden habe ich dann KDE mit Plasma (Wayland). Scheint irgendwie ein Hybrid aus Wayland im Kern und X11 an der Oberfläche zu sein. Blicke da aber noch nicht ganz durch. Test-Applikationen wie xeyes lassen sich jedenfalls wie eh und je per ssh umlenken.
VNC Server unter Wayland scheinen wohl noch in Progress zu sein. Zumindest KDE's Krfb schien zunächst zu funktionieren. Es stellte sich aber heraus, daß es in Bookworm keyboard und mouse nicht übermittelt. Dieser Bug ist erst in Trixie behoben, aus der ich Krfb dann geholt habe.
Jetzt läuft dieser VNC Server also, aber ich wünsche mir eine Möglichkeit, den Laptop bzw. dessen Desktop für Dahergelaufene zu sperren (z.B. Passwort), aber gleichzeitig von Ferne den entsperrten Desktop per VNC zu bedienen. Wenn ich KDE's Screen Locker benutze, sehe ich ja erwartungsgemäß den geperrten Desktop auch in meinem fernen VNC Client Krdc.
Scheint irgendwie auch folgerichtig bzw. logisch, aber ich weiß von Raspberry Pi Desktops, daß es da mal eine Lösung gab den echten Screen zu Locken, aber im VNC Client einen offenen Desktop zu haben. Raspberry benutzt allerdings den proprietären RealVNC wenn ich mich recht erinnere - und sowas will ich natürlich vermeiden.
Zur Not muß ich halt klassisch wieder einen firefox und Weiteres per X11-Forwarding über SSH heranholen.
Frage:
Habt ihr vielleicht eine Idee, ob und wie man aus dem Dilemma - lokal Desktop gesperrt, remote aber bedienbar - mit dem VNC Server Krfb herauskommen kann?
LG
PS: Etwas blöd finde ich, daß Krfb automatisch auf allen Interfaces lauscht. Ich würde diesen VNC-Server viel lieber einzig auf localhost 127.0.0.1 lauschen lassen und diesen Socket dann durch SSH tunneln.
Zuletzt geändert von whiizy am 23.06.2023 09:52:54, insgesamt 1-mal geändert.
Re: Remote Desktop mit VNC trotz screen locker?
Irgendwie ist das Windows-Denke. Dort kann man die Loginsession per Remote Desktop von der Ferne übernehmen, wobei gleichzeitig der lokale Bildschirm zwangsgesperrt wird.whiizy hat geschrieben:19.06.2023 21:42:23Scheint irgendwie auch folgerichtig bzw. logisch, aber ich weiß von Raspberry Pi Desktops, daß es da mal eine Lösung gab den echten Screen zu Locken, aber im VNC Client einen offenen Desktop zu haben.
Ich habe es bei mir so eingerichtet, daß die Remote Session via VNC eine völlig eigenständgie Session ist und mit der Session am lokalen Bildschirm nichts zu tun hat. Man ist dann sozusagen zweimal eingelogt, einmal am lokalen Bildschirm, der natürlic auch gesperrt sein kann. Ein zweites Mal ist man via VNC eingelogt.
Das läßt sich mit lightdm ziemlich einfach einrichten, entsprechende Einträge für eine VNC-Session sind bereits in der Datei /etc/lightdm/lightdm.conf vorhanden aber auskommentiert. Die nötigen Pakete wären lightdm und tightvncserver. Als Desktop habe ich aber LXDE am Laufen. Ob das auch mit KDE klappt, weiß ich nicht. Auf jeden Fall aber emuliert der tightvnssever nur eine X11-Session, Wayland geht damit nicht.
Der SSH-Tunnel ist kein Problem. Die Verbindung von aussen kann man mit iptables oder nftables verhindern.Ich würde diesen VNC-Server viel lieber einzig auf localhost 127.0.0.1 lauschen lassen und diesen Socket dann durch SSH tunneln.
Re: Remote Desktop mit VNC trotz screen locker?
Kann ich nicht beurteilen, ich habe überhaupt kein WindowsMSfree hat geschrieben:20.06.2023 19:50:33Irgendwie ist das Windows-Denke. Dort kann man die Loginsession per Remote Desktop von der Ferne übernehmen, wobei gleichzeitig der lokale Bildschirm zwangsgesperrt wird.
Es gibt in diesem Fall schlicht die Notwendigkeit, den Desktop auf dem Laptop fernzubedienen, aber sich gleichzeitig davor zu schützen, daß jemand die Aktivitäten am lokalen Laptop-Display beobachten oder im schlimmsten Fall den Laptop dort kapern kann.
Das klingt vernünftig, scheint aber gleichzeitig den höchsten Aufwand zu bedeuten, wenn gleich zwei desktop-sessions parallel gerechnet werden. Aber ist immerhin ein Ausweg aus dem Dilemma, daß in einer Einzel-Session beide User (lokal und remote) vor dem gleichen screenlocker sitzen.Ich habe es bei mir so eingerichtet, daß die Remote Session via VNC eine völlig eigenständgie Session ist und mit der Session am lokalen Bildschirm nichts zu tun hat. Man ist dann sozusagen zweimal eingelogt, einmal am lokalen Bildschirm, der natürlic auch gesperrt sein kann. Ein zweites Mal ist man via VNC eingelogt.
Die Auslassungen zu lightdm sind interessant, allerdings läuft unter KDE hier der sddm. Etwas versteckt kann man unten links im Greeter die Desktop Session umstellen von Plasma (Wayland) auf Plasma (X11). Vielleicht funktionieren bei Rückfall auf Plasma (X11) ja die Klassikertigervnc-standalone-server oder tightvncserver wieder. Unter der Wayland Session funktionierten die bei mir leider nicht mehr, deshalb war ich zu krfb gewechselt. Wenn es mit Wayland und krfb keine Möglichkeit für zwei unabhängige Desktop-Sessions gibt, werde ich wohl wieder auf Plasma (X11) zurückgehen und dort mein Glück versuchen.
... danke für diesen Tip. An dieser Stelle hat man zum Glück deutlich mehr Optionen.
Re: Remote Desktop mit VNC trotz screen locker?
Zumindest bei mir mit LXDE ist das überhaupt kein Problem. Das Bißchen CPU-Last, das dabei verursacht wird, ist nicht der Rede Wert. Die beiden Sessions belegen allerdings Hauptspeicher, man sollte also mindestens 1.5GB RAM haben, wenn man zwei Sessions laufen lassen will.whiizy hat geschrieben:20.06.2023 21:44:04Das klingt vernünftig, scheint aber gleichzeitig den höchsten Aufwand zu bedeuten, wenn gleich zwei desktop-sessions parallel gerechnet werden.
Das ist technisch gesehen falsch. KDE wird von sddm nach dem Login gestartet. Es läuft also nicht sddm unter KDE sondern KDE unter sddm.Die Auslassungen zu lightdm sind interessant, allerdings läuft unter KDE hier der sddm.
Davon abgesehen kann man einfach lightdm installieren. Das ersetzt normalerweise sddm und dann läuft KDE halt unter lightdm.
Diese Art von Remote Desktop ist in meinen Augen von hinten durch die Brust ins Auge. Warum sollte man eine lokale Session starten, und in dieser ein Programm, das 60 Screenshots pro Sekunde macht und diese dann per VNC oder RFB an den entfernten Rechner überträgt. Genau das lastet den Rechner stark aus.Vielleicht funktionieren bei Rückfall auf Plasma (X11) ja die Klassikertigervnc-standalone-server oder tightvncserver wieder. Unter der Wayland Session funktionierten die bei mir leider nicht mehr, deshalb war ich zu krfb gewechselt.
Wenn man es so einrichtet wie ich es skiziziert habe. läuft einfach ein zweiter X-Server auf dem System, nämlich der, den tightvncserver direkt zur Verfügung stellt. lightdm und der Desktop zeichnen dann direkt in den Xserver, was dieses umständliche Snapshooting des Desktops völlig unnötig macht.
Re: Remote Desktop mit VNC trotz screen locker?
Ich meinte das auch mehr in dem Sinn, daß mit KDE zusammen meist sddm verwendet wird, schon klar. Auf meinem Home-PC nutze ich übrigens auch LXDE mit lightdm.MSfree hat geschrieben:20.06.2023 22:05:49Das ist technisch gesehen falsch. KDE wird von sddm nach dem Login gestartet. Es läuft also nicht sddm unter KDE sondern KDE unter sddm.
... mit solchen Anwandlungen habe ich allerdings eher schlechte Erfahrungen gemacht. Zu leicht wird so ein konsistentes System ohne Not "strubbelig". So modular wie gehofft sind Displaymanager und Session dann oftmals doch nicht.Davon abgesehen kann man einfach lightdm installieren. Das ersetzt normalerweise sddm und dann läuft KDE halt unter lightdm.
So ähnlich muß das auf dem Raspian-System gelaufen sein, an das ich mich eingangs vage erinnert hatte. Ich weiß noch, daß ich mich dort per ssh eingeloggt hatte und an der Kommandozeile 'vncserver -localhost' gestartet habe. Diese Session hatte ich dann von 127.0.0.1 über ssh getunnelt und mit tigervnc-viewer bedient. Ist im Detail aber nicht mehr wichtig, denn das war ja auch ein klassisches X11 System.Diese Art von Remote Desktop ist in meinen Augen von hinten durch die Brust ins Auge. Warum sollte man eine lokale Session starten, und in dieser ein Programm, das 60 Screenshots pro Sekunde macht und diese dann per VNC oder RFB an den entfernten Rechner überträgt. Genau das lastet den Rechner stark aus.
Wenn man es so einrichtet wie ich es skiziziert habe. läuft einfach ein zweiter X-Server auf dem System, nämlich der, den tightvncserver direkt zur Verfügung stellt. lightdm und der Desktop zeichnen dann direkt in den Xserver, was dieses umständliche Snapshooting des Desktops völlig unnötig macht.
Mein Interesse in diesem Thread galt vielmehr der KDE Desktop Session Plasma (Wayland) und ob man hier möglicherweise irgendwie den lokalen Screen locken kann, ohne daß das gleichzeitig auch im remote VNC-client (hier z.B. krdc) passiert.
Re: Remote Desktop mit VNC trotz screen locker?
Und genaus diesen Aufruf (vncserver) führt lightdm in seinr Abwandlung als Xvnc aus, so daß du dich darum nicht kümmern mußt. Im Übrigen hatte ich bisher nie Probleme damit, lightdm zu installieren. Das hat hier noch nie etwas durcheinander gebracht. Der lightdm hat den vormals installierten Displaymanager einfach ersetzt und beim nachästen Boot hatte sich halt lightdm gemeldet statt beispielsweise sddm. Ob man damit nun eine KDE-Session, eine Gnome-Session oder eine anderen Desktop oder WIndowmanager startet, spielt keine Rolle.whiizy hat geschrieben:20.06.2023 22:52:26So ähnlich muß das auf dem Raspian-System gelaufen sein, an das ich mich eingangs vage erinnert hatte. Ich weiß noch, daß ich mich dort per ssh eingeloggt hatte und an der Kommandozeile 'vncserver -localhost' gestartet habe.
Wie gesagt, wenn man einfach eine zweite Xsession mittels vncserver aufmacht, erübrigt sich das Problem des gelockten Bildschirms von selbst, weil es zwei getrennte Sessions sind.Mein Interesse in diesem Thread galt vielmehr der KDE Desktop Session Plasma (Wayland) und ob man hier möglicherweise irgendwie den lokalen Screen locken kann, ohne daß das gleichzeitig auch im remote VNC-client (hier z.B. krdc) passiert.
Re: Remote Desktop mit VNC trotz screen locker?
Habe jetzt erstmal eine akzeptable Lösung für mich gefunden.
Was mich weitergebracht hat, war auf dem Laptop überhaupt keine KDE Desktop Session zu starten, also weder Plasma (Wayland) noch Plasma (X11). Ich lasse den Laptop nach dem Hochfahren direkt am grafischen Login-Bildschirm verharren.
Offenbar konkurriert eine Desktop-Session nämlich mit der VNC-Session. Außerdem ist so schonmal das erste Problem gelöst, daß der Bildschirm am Gerät gelockt bleibt.
Eine VNC-Session baue ich dann wieder auf, wie oben schonmal angedeutet:
Ich logge mich von Ferne als User per SSH auf dem Laptop ein und starte dann den VNC-Server mit dem Kommando 'vncserver -localhost'. Paket ist tigervnc-standalone-server. Dann lauscht der Server nur auf 127.0.0.1 und exponiert sich erst gar nicht in angeschlossenen Netzen.
Dafür muß ich dann aber den lokalen VNC Port 5901 per ssh tunneln - was aber gleichzeitig dazu dient die unsichere VncAuth zu schützen.
Früher habe ich in solchen Fällen den ssh-Tunnel mit einem Einzeiler erstellt. In diesem Fall hier benutze ich aber den VNC-Viewer KRDC von KDE. Über eine wählbare Option nimmt der einem den Tunnelaufbau bequem ab.
Etwas weniger "bequem" ist es, daß man sich durch drei Logins quälen muß bis man auf dem remote Desktop landet:
1.) SSH password
2.) VncAuth
3.) PolicyKit1 (NetworkManager / Allow control of network connections)
Natürlich kann man die Passwörter auch an verschiedenen Stellen speichern, das ist am Ende jedem selbst überlassen.
Will ich eine Plasma-Session am Laptop starten bzw. den Laptop wieder lokal nutzen, muß ich daran denken den VNC-Server erst wieder zu stoppen. Hier:
Ansonsten hängt der Plasma-Desktop nach der Login-Eingabe und kann bestenfalls mit ...
... wiederbelebt werden.
Ob überhaupt und wie man zwei Desktop-Sitzungen separat unter sddm/KDE betreiben kann, habe ich mit diesem Lösungsszenario also unelegant umschifft. Tut's aber erstmal
Was mich weitergebracht hat, war auf dem Laptop überhaupt keine KDE Desktop Session zu starten, also weder Plasma (Wayland) noch Plasma (X11). Ich lasse den Laptop nach dem Hochfahren direkt am grafischen Login-Bildschirm verharren.
Offenbar konkurriert eine Desktop-Session nämlich mit der VNC-Session. Außerdem ist so schonmal das erste Problem gelöst, daß der Bildschirm am Gerät gelockt bleibt.
Eine VNC-Session baue ich dann wieder auf, wie oben schonmal angedeutet:
Ich logge mich von Ferne als User per SSH auf dem Laptop ein und starte dann den VNC-Server mit dem Kommando 'vncserver -localhost'. Paket ist tigervnc-standalone-server. Dann lauscht der Server nur auf 127.0.0.1 und exponiert sich erst gar nicht in angeschlossenen Netzen.
Dafür muß ich dann aber den lokalen VNC Port 5901 per ssh tunneln - was aber gleichzeitig dazu dient die unsichere VncAuth zu schützen.
Früher habe ich in solchen Fällen den ssh-Tunnel mit einem Einzeiler erstellt. In diesem Fall hier benutze ich aber den VNC-Viewer KRDC von KDE. Über eine wählbare Option nimmt der einem den Tunnelaufbau bequem ab.
Etwas weniger "bequem" ist es, daß man sich durch drei Logins quälen muß bis man auf dem remote Desktop landet:
1.) SSH password
2.) VncAuth
3.) PolicyKit1 (NetworkManager / Allow control of network connections)
Natürlich kann man die Passwörter auch an verschiedenen Stellen speichern, das ist am Ende jedem selbst überlassen.
Will ich eine Plasma-Session am Laptop starten bzw. den Laptop wieder lokal nutzen, muß ich daran denken den VNC-Server erst wieder zu stoppen. Hier:
Code: Alles auswählen
vncserver -kill :1
Code: Alles auswählen
systemctl restart sddm.service
oder Reboot
Ob überhaupt und wie man zwei Desktop-Sitzungen separat unter sddm/KDE betreiben kann, habe ich mit diesem Lösungsszenario also unelegant umschifft. Tut's aber erstmal
Re: Remote Desktop mit VNC trotz screen locker?
Deswegen ja lightdm.whiizy hat geschrieben:22.06.2023 14:04:37Etwas weniger "bequem" ist es, daß man sich durch drei Logins quälen muß bis man auf dem remote Desktop landet:
Du startest nur den VNCviewer auf dem getunnelten Port, bekommst sofort das graphische Login des Displaymanagers und nach dem Login startet dein Desktop.
Ich fürchte, das liegt an Akonadi. Früher konnte man als ein und derselbe Benutzer mehrere KDE-Sessions offen haben, ohne daß die sich gegenseitig auf die Füße getreten sind. Seit Akonadi mit KDE 4.1 eingeführt wurde, habe ich mich von KDE veraschiedet, weil ich das Konzept, das dahinter steckt, als sehr lästig und fehlerträchtig erlebt habe.Ansonsten hängt der Plasma-Desktop nach der Login-Eingabe und kann bestenfalls mit ...
Gnome funktioniert übrigens aus ählichen Gründen nicht in zwei Sessions desselben Benutzers.
Re: Remote Desktop mit VNC trotz screen locker?
Weiß ich nicht, jedenfalls läuft hier kein Prozess akonadi, weder in Bullseye noch Bookworm. Ich erinnere mich allerdings, daß mich vor Jahren solcher Bloat in KDE auch genervt hatte. Mittlerweile gefällt mir KDE aber wieder, finde ich auch wieder aufgeräumt genug.
Nochmal zurück zum Thema, du sagst also, mit lightdm und LXDE kannst du zwei Desktop-Sessions komplett parallel fahren, also eine am Geräte-Display und die andere per VNC?
Auch wenn ich jetzt nicht mehr mit lightdm herumspielen werde - wäre einfach gut zu wissen, daß andere Desktop-Umgebungen das Problem tatsächlich irgendwie gelöst haben.
Nochmal zurück zum Thema, du sagst also, mit lightdm und LXDE kannst du zwei Desktop-Sessions komplett parallel fahren, also eine am Geräte-Display und die andere per VNC?
Auch wenn ich jetzt nicht mehr mit lightdm herumspielen werde - wäre einfach gut zu wissen, daß andere Desktop-Umgebungen das Problem tatsächlich irgendwie gelöst haben.
Re: Remote Desktop mit VNC trotz screen locker?
Ich kann sogar 3 und mehr Sessions komplett parallel fahren, eine am lokalen Bildschirm und alle weiteren per VNC. (Zumindest solange das RAM nicht ausgeht).whiizy hat geschrieben:22.06.2023 15:43:04du sagst also, mit lightdm und LXDE kannst du zwei Desktop-Sessions komplett parallel fahren, also eine am Geräte-Display und die andere per VNC?
Was die Funktionsweise von Akonadi angeht, gitb es einen kurzen und verständlichen Wiki-Artikel:
https://de.wikipedia.org/wiki/Akonadi