FreeBSD QandA 1002
Q. X の program を、別の端末に表示しようとしたら
Xlib: connection to "サーバ:0.0" refused by server
Xlib: Client is not authorized to connect to Server
Error: Can't open display: サーバ:0.0
と、error になって、表示できませんでした。
A. X が、どこからの connection でも、すべて表示できたら、
セキュリティのかけらもないので、デフォルトでは、その
X server が立ち上がっているマシン以外からの接続は、拒絶します。
X server : pc.hogehoge.or.jp
remote client : client.hogohoge.or.jp
の時、pc.hogehoge.or.jp 側で、環境変数 DISPLAY が
pc.hogehoge.or.jp:0.0 のような指定がされている状態で、
% xhost +client.hogehoge.or.jp
とすると client.hogehoge.or.jp からの*すべて*の X の接続を許可するようになります。
% xhost +
では、すべてのマシンからの接続を許可します。
いつも設定しておきたいなら ~/.xinitrc などの中で、pc で X を起動する時に
自動実行しましょう。
xon のバージョンによっては、xhost +host を、自動でやってくれるものもあります。
また、xauth を使用すれば、もうすこし細かい制限もできます。(ref.man xauth)
また remote host がそれなりに遠い場所にあるなどで安全面で不安があるなら、
ssh を入れて、それでログインしてから X client を起動すると
local host への X の転送は勝手にやってくれます。
間違い・追加情報を見付けた場合は、
修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで
お知らせください。