2018/05/06

ssh した先で GUI Application を起動する

前回の記事では IP Reachable であれば DISPLAY を設定することで GUI Application も動く、と書きました。
ssh に関して言えば、もっとスマートな解決方法があったようです。


ssh と -X -Y option

man ssh を見ると、 X11 に関するオプションがいくつかありますね。
特に X11Fowarding が yes で -X か -Y を付けると
  • The DISPLAY value set by ssh will point to the server machine.
とのこと。勝手に DISPLAY を設定してくれるっぽい。便利。

X11Fowarding option は sshd_config の方(サーバ側)の option で見たことがあります。
なるほど、ここで使うのか(というか ssh した状態で GUI 使うって発想がそもそも無かった……)。


-X option with ssh proxy

-X や -Y の方が優れている点として、ssh proxy を通していても GUI が使える点があります。
具体的には -W option を使って、
  • global IP を持っているマシンに ssh
  • そこから local IP を持っているマシンに ssh
をしている状態でも動きます。

ちなみにその時の DISPLAY の値は
  • $ ssh -Y 10.20.30.40
  • $ echo $DISPLAY
    • localhost:10.0
とか。localhost の host はどこなの状態。IP reachable とかそんなレベルじゃない。

いやまー、 22 番にアクセスしてきた socket を使ってデータを送受信している、みたいなオチだとは思う。
が、「通信が相互に疎通可能である状態ならGUIでもOK」と書いた身としては、すみません嘘つきました、という気持ち。


参考

0 件のコメント:

コメントを投稿