5.4. Zugriff auf das X-Window-System absichern
Heutzutage werden X-Terminals in immer mehr Unternehmen benutzt, wo ein Server fr viele Arbeitspltze bentigt wird. Dies kann gefhrlich sein, weil Sie dem Datei-Server erlauben mssen, sich mit den X-Clients zu verbinden (X-Server aus Sicht von X. X vertauscht die Definition von Client und Server). Wenn Sie dem (sehr schlechten) Vorschlag von vielen Dokumentationen folgen, geben Sie auf Ihrer Maschine xhost +
ein. Dies erlaubt jedem X-Client, sich mit Ihrem System zu verbinden. Fr etwas bessere Sicherheit knnen Sie stattdessen das Kommando xhost +Rechnername
verwenden, um den Zugriff auf bestimmte Rechner zu begrenzen.
Allerdings ist es eine viel sicherere Lsung, SSH zu benutzen, um X zu tunneln und die gesamte Sitzung zu verschlsseln. Dies geschieht automatisch, wenn Sie sich an einer anderen Maschine via ssh anmelden. Damit dies funktioniert, mssen Sie den ssh-Client und den ssh-Server konfigurieren. Auf dem ssh-Client muss ForwardX11
in /etc/ssh/ssh_config
auf yes
gesetzt sein. Auf dem ssh-Server muss X11Forwarding
in /etc/ssh/sshd_config
auf yes
gesetzt sein und das Paket xbase-clients muss installiert sein. Dies liegt daran, dass der SSH-Server /usr/X11R6/bin/xauth
(bei Debian-Unstable (/usr/bin/xauth
) verwendet, wenn er das Pseudo-X-Display aufsetzt. In den Zeiten von SSH sollten Sie die xhost-basierte Zugriffskontrolle komplett ber Bord werfen.
Wenn Sie keinen X-Zugriff von anderen Maschinen bentigen, ist es fr die Sicherheit am besten, die Bindung auf dem TCP-Port 6000 abzuschalten, indem Sie einfach Folgendes eingeben:
$ startx -- -nolisten tcp
Dies ist das Standard-Verhalten unter XFree 4.1.0 (dem Xserver aus Debian 3.0 und 3.1). Wenn Sie XFree 3.3.6 laufen lassen (d.h. wenn Sie Debian 2.2 benutzen), knnen Sie
/etc/X11/xinit/xserverrc
editieren, damit Sie etwas erhalten wie:
#!/bin/sh
exec /usr/bin/X11/X -dpi 100 -nolisten tcp
Wenn Sie XDM benutzen, setzen Sie
/etc/X11/xdm/Xservers
auf
:0 local /usr/bin/X11/X vt7 -dpi 100 -nolisten tcp
. Wenn Sie GDM benutzen, stellen Sie sicher, dass die Option
DisallowTCP=true
in
/etc/gdm/gdm.conf
eingetragen ist (was standardmig unter Debian der Fall ist). Dies wird grundstzlich an jede X-Befehlszeile
-nolisten tcp
anhngen
.
Sie knnen auerdem eine standardmige Zeitgrenze fr die
xscreensaver
-Bildschirmsperre setzen. Auch wenn der Benutzer sie aufheben kann, sollten Sie die Konfigurationsdatei
/etc/X11/app-defaults/XScreenSaver
editieren und die lock-Zeile von
*lock: False
(das ist der Standardwert unter Debian) auf Folgendes ndern:
*lock: True
FIXME: Add information on how to disable the screensavers which show the user desktop (which might have sensitive information).
FIXME: Add info on thread of debian-security on how to change config files of XFree 3.3.6 to do this.
5.4.1. berprfen Ihres Display-Managers
Wenn Sie einen Display-Manager lediglich zur lokalen Nutzung (fr ein schnes graphisches Anmeldefenster) haben wollen, gehen Sie sicher, dass der XDMCP (X Display Manager Control Protocol) Krempel abgeschaltet ist. Unter XDM knnen Sie dies mit der folgenden Zeile in
/etc/X11/xdm/xdm-config
erreichen:
DisplayManager.requestPort: 0
Fr GDM mssen Sie in Ihre gdm.conf Folgendes eintragen:
[xdmcp]
Enable=false
Normalerweise sind unter Debian alle Display-Manager so konfiguriert, dass sie standardmig keine XDMCP-Dienste starten.