Product SiteDocumentation Site

5.4. X Window System へのアクセスを安全にする

今日では、X 端末はひとつのサーバが多くのワークステーションで必要とされる 多くの企業で使われています。これは危険かもしれません。なぜならファイルサーバに クライアント (X の観点からは X サーバです。X はクライアントとサーバの定義を 入れかえています) への接続を許可する必要があるからです。もし多くの文書に ある (非常に悪い) 提案にしたがうなら、あなたのマシンで xhost + と 入力することになります。これはすべての X クライアントにあなたのシステムへの 接続を許可します。すこしだけセキュリティをよくするには、特定のホストからの アクセスだけを許可するためにかわりに xhost +hostname コマンドを 使うことができます。
A much more secure solution, though, is to use ssh to tunnel X and encrypt the whole session. This is done automatically when you ssh to another machine. For this to work, you have to configure both the ssh client and the ssh server. On the ssh client, ForwardX11 should be set to yes in /etc/ssh/ssh_config. On the ssh server, X11Forwarding should be set to yes in /etc/ssh/sshd_config and the package xbase-clients should be installed because the ssh server uses /usr/X11R6/bin/xauth (/usr/bin/xauth on Debian unstable) when setting up the pseudo X display. In times of SSH, you should drop the xhost based access control completely.
最高のセキュリティのためには、他のマシンからの X アクセスが必要ないなら、 こう入力して tcp の 6000 番ポートをバインドすることを停止することです: startx -- -nolisten tcp
$ startx -- -nolisten tcp
注意: これは Xfree 4.0 (Debian 3.0 で提供される X サーバです) の デフォルトのふるまいです。もし Xfree 3.3.6 を動かしているなら (すなわち、 Debian 2.2 をインストールしているなら)、/etc/X11/xinit/xserverrcc を編集してこのような行を追加できます:
#!/bin/sh
exec /usr/bin/X11/X -dpi 100 -nolisten tcp
If you are using XDM set /etc/X11/xdm/Xservers to: :0 local /usr/bin/X11/X vt7 -dpi 100 -nolisten tcp. If you are using Gdm make sure that the DisallowTCP=true option is set in the /etc/gdm/gdm.conf (which is the default in Debian). This will basically append -nolisten tcp to every X command line [36].
You can also set the default's system timeout for xscreensaver locks. Even if the user can override it, you should edit the /etc/X11/app-defaults/XScreenSaver configuration file and change the lock line:
*lock:                  False
(which is the default in Debian) to:
*lock:                  True
FIXME: Add information on how to disable the screensavers which show the user desktop (which might have sensitive information).
X Window のセキュリティについてくわしくは http://www.linuxdoc.org/HOWTO/XWindow-User-HOWTO.html (/usr/share/doc/HOWTO/en-txt/XWindow-User-HOWTO.txt.gz) をごらんください。
FIXME: これを行うために XFree 3.3.6 の設定ファイルをどう変更するべきかに ついての debian-security スレッドの情報を追加する。

5.4.1. ディスプレイマネージャを調べる

もしローカルで使うためだけに (つまり、きれいなグラフィカルログインのために) ディスプレイマネージャをインストールしたいなら、XDMCP (X Display Manager Control Protocol) 関連を停止しましょう。XDM ではこれは /etc/X11/xdm/xdm-config のこういう行で行うことができます。
DisplayManager.requestPort:     0
For GDM there should be in your gdm.conf:
[xdmcp]
Enable=false
ふつう、Debian ではすべてのディスプレイマネージャはデフォルトでは XDMCP サービスを開始しないよう設定されています。


[36] Gdm will not append -nolisten tcp if it finds a -query or -indirect on the command line since the query wouldn't work.