Linux fernsteuern mit ssh, X11 und VNC
XDM
Um X-Logins von anderen Rechnern bei XDM zu erlauben, muss eine Änderung in /etc/X11/xdm/Xaccess vorgenommen werden. Mit locate Xaccess
kann danach gesucht werden, falls die Datei an einem anderen Ort gespeichert ist. Folgende Zeile muss aktiviert werden, indem das erste '#' entfernt wird.
#* #any host can get a login window
Bei XFree86 Version 4 muss ausserdem die Datei xdm-config (gleiches Verzeichnis) verändert werden:
! SECURITY: do not listen for XDMCP or Chooser requests ! Comment out this line if you want to manage X terminals with xdm DisplayManager.requestPort: 0
wird zu:
! SECURITY: do not listen for XDMCP or Chooser requests ! Comment out this line if you want to manage X terminals with xdm ! DisplayManager.requestPort: 0
Der Unterschied ist nur ein '!'. Das Komplizierteste ist eigentlich, dass das Ausrufezeichen, und nicht wie sonst üblich das Doppelkreuz, in dieser Datei Kommentare einleitet.
Nach einem Neustart von XDM ist der Applikations-Server bereit.
KDM
KDM ist die KDE-Version des XDM. Bei meiner SuSE 8.1 liegt die Konfigurationsdatei in /etc/opt/kde3/share/config/kdm/kdmrc. Dort sollte folgender Abschnitt enthalten sein:
[Xdmcp] Enable=true Xaccess=/etc/X11/xdm/Xaccess Willing=/etc/X11/xdm/Xwilling
Die XDM-Konfigurationsdateien werden auch benutzt.
In SuSE kann man KDM auch in /etc/sysconfig/displaymanager konfigurieren und anschließend SuSEconfig aufrufen. SuSEconfig wird jedoch keine selbstveränderte kdmrc überschreiben.
Andere Distributionen können ähnliche Werkzeuge bereitstellen.
GDM
Die GDM-Konfigurationsdatei ist in /etc/gdm/gdm.conf zu finden. Im Abschnitt [xdmcp]
muss der Eintrag Enabled=false
in Enabled=true
geändert werden. Fertig. (Debian Woody.)
Zugriff auf den XDMCP-Server
Zugriff auf den XDMCP-Server bedeutet Einloggen. Auf dem Client (lokaler Rechner) muss X11 installiert und konfiguriert sein. Das ist alles. Eigentlich braucht man hier nicht einmal Programme, Window-Manager oder anderes. Nur X11 muss das graue Muster anzeigen können, das die Monitore so grausam zum flimmern bringt :-)
Von der Kommandozeile tippt man (evt. mit anderer IP-Adresse):
/usr/X11/bin/X -query 192.168.0.81 :1
und schon landet man beim Login des entfernten Rechners.
VNC
VNC steht für Virtual Network Computing und besteht aus zwei Teilen: Dem Server, der vom Viewer ferngesteuert wird, und dem Viewer.
Es gibt Viewer für Linux, Windows und Java. Letzterer läuft auf allen Plattformen, die einen Java-fähigen Webbrowser haben.
Server gibt es für Linux und Windows. Durch diese Kombinationsmöglichkeiten ist VNC im Gegensatz zu X11 ein Werkzeug für heterogene Netze.
Beim VNC-Server für Linux macht es Sinn, das Skript vncserver anzupassen. Verändert man die Zeile, die mit $geometry
beginnt, in $geometry = "950x650";
, dann passt der VNC-Desktop inkl. Fensterdekorationen schön auf einen 1024x768-Bildschirm. Das Skript ~/.vnc/xstartup wird beim Start des Servers ausgeführt und ist ideal, um den bevorzugten Windowmanager bzw. Desktop Environment zu starten.
#!/bin/sh # Sample ~/.vnc/xstartup xrdb $HOME/.Xresources xsetroot -solid grey xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & startkde &