Einen xserver auf einem entfernten Rechner starten und mit x11vnc / vncviewer verschluesselt zugreifen

Wenn man einen Rechner nur per Netzwerk ereichen kann und dort noch kein XServer gestartet wurde dann muss das eben auch per Netz erledigt werden. Im Normalfall wird man beim Versuch aus einer ssh Session heraus einen XServer zu starten erstmal eine Fehlermeldung erhalten die auf Zugriffsrechte hinweist.

Grund dafuer ist eine Einstellung in der Datei /etc/X11/Xwrapper.config

Dort gibt es eine Einstellung „allowed_users“. Dafuer gibt es 3 Einstellungen:
1. root
2. anybody
3. console

1. Wuerde bedeuten das nur Root einen XServer starten duerfte.
2. Jeder darf einen XServer starten.
3. Nur benutzer die auf einer Konsole angemeldet sind duerfen einen Xerver starten.

Auf Debian Systemen ist 3. ueblicherweise die Voreinstellung. Um nun zu ereichen das XServer auch von einem Netzwerk Login gestartet werden koennen muss 2. eingestellt werden. Auf einem Debian System kann wird diese Einstellung ueblicherwiese ueber

$ dpkg-reconfigure x11-common

gesetzt. Direktes Editieren der Datei /etc/X11/Xwrapper.config ist auch moeglich.

Dann verbindet man sich per ssh mit dem Zielrechner.

$ ssh user@192.168.251.2
Dort muss nun erstmal die Einstellung in /etc/X11/Xwrapper.config vorgenommen werden.

Bevor man x11vnc das erste mal startet sollte ein passwort vergeben werden.
$ x11vnc -storepasswd

Zuerst wird der XServer gestartet:

$ startx -- :0 &

Dann startet man x11vnc auf dem Zielrechner:

$ x11vnc -localhost -usepw -display :0

In einer anderen Konsole den vncviewer wie folgt Starten:

$ vncviewer -via user@192.168.251.2 localhost:0

hiernach muss dann das normale Benutzerpasswort fuer die ssh Session eingeben werden. Danach wird das vnc Passwort abgefragt, dann popt das vncfenster auf, auf dem die Ausgabe des XServers auf dem Bildschirm des entfernten Rechners zu sehen ist. Wenn man den Quellen und Dokus glauben darf ist bei dieser Vorgehensweise die komplette Verbindung ueber ssh verschluesselt.