X端末を使用することで、以下のような事が可能になります。
例:1
自分が使用しているアプリケーションを、相手の画面へ出力させる
(画像を渡したいときなどに、相手の許可なく表示することが可能)
この場合、表示させるアプリケーションがXクライアント(自ホスト)出力先がXサーバ(リモートホスト)
例:2
ssh等でリモートホストへ接続し、wiresharkなどのアプリケーションを接続元のディスプレイで表示させる
この場合、リモート先で起動したwiresharkがXクライアント(リモートホスト)出力先がXサーバ(自ホスト)
※例:2の場合、通常エラーになりますが、理由はリモートホストのDisplay出力設定がリモートホストに向いているから。
【行うこと】
・サーバ側で、xhostで受け入れるクライアントを設定します。 (現在はxauthを使用するよう推奨されている)
・サーバ側で、tcp nolistenの設定を解除します。 (最近のは、Xのtcp接続が許可されていない)
・クライアント側で、環境変数の設定(DISPLAY)を行う
【手順】
1.サーバ側で、xhostコマンドを実施
# xhost 192.168.0.1 ←IPでの指定
# xhost client.localdomain ←ホスト名での指定
# xhost + ←全てのホストを許可 (※もちろん推奨ではありません)
# xhost client.localdomain ←ホスト名での指定
# xhost + ←全てのホストを許可 (※もちろん推奨ではありません)
2.サーバ側で、psコマンドを実行しXがnolisten tcpで起動していないか確認(nolistenオプションがついていない場合は、5.へ進みます)
# ps aux|grep X
3.nolistenオプションがついていた場合、以下のファイルの[security]セクションの#DisallowTcp=trueをDisallowTcp=falseに変更
/etc/X11/gdm/gdm.conf
4.サーバ側のXを再起動し、psコマンドでnolistenが消えていることを確認
5.クライアント側で、環境変数の設定を実施
# export DISPLAY=192.168.0.20:0.0
Xサーバを指定 0.0はディスプレイ番号0でもOK
6.クライアントからwiresharkを起動すれば、Xサーバ側に表示される。
0 件のコメント:
コメントを投稿