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
.
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).
FIXME: これを行うために XFree 3.3.6 の設定ファイルをどう変更するべきかに ついての debian-security スレッドの情報を追加する。
もしローカルで使うためだけに (つまり、きれいなグラフィカルログインのために) ディスプレイマネージャをインストールしたいなら、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 サービスを開始しないよう設定されています。