2009年4月9日木曜日

Xming+putty+ポートフォワーディング

Xmingの存在は前々から知ってたけど、なんかこないだ使おうとしたときにはうまくいかなかったのだな。Xmingってのはなにかってゆーと、CygwinのXサーバー部分をとってきたようなもんで、Windows上でLinuxのXwindowつかえるというなんだか便利な代物。CygwinもVMwareも中々重たい代物なのでXwindow使うためだけには立ち上げたくないよね~てな向きには最適ぽい。研究室の自分のデスクにLinux機+windows機の2台が置いてあるってな状態になったのであきらめずに試してみる。
通常の場合のXming+puttyの使い方はココに書いてある通り。
http://zodiac30.cse.kyutech.ac.jp/~fujiwara/setup/xming-putty/
XmingつかったXDMCPもできます。その場合はLinux側の設定をちょっといじる必要あり。
CentOS5の場合、/etc/gdm/custom.confをちょろっといじって

[xdmcp]
Enable=True

として、rebootすればOK。あとはWindows側でXLaunch起動、One Windowを選択、IP入れるとログイン画面が出るはず。

さて問題は、自宅から研究室のLinux機を使うとき。セキュリティ上、Linux機にはグローバルIPふってないし、LAN外からはアクセスできない。なわけでポートフォワーディングかませて、大学のSSH接続用の鯖→グローバルIP付きの研究室の鯖→自分とこのマシン、ていうややこしいトンネルを掘らなければいけない。Xmingでそれがつかえるのか??というのが今回の問題。
結論から言うと、Puttyのコマンドラインオプションで解決できた。
たとえば、目的のマシンの22番ポートに自分とこの5100番をポートフォワードしてるとき、
Xlaunchで設定するときに
start a programを選択 →Using PuTTYを選択
Connect to computer :localhost

次のページで

Additional parameters for PuTTY or SSHのところに
-P 5100

と入れておけばよい。
-Pはポート番号を指定するputtyのオプション。
puttyはそれ以外にもコマンドラインでオプションを与えて実行できるので、バッチも作れる。いつも使うのは-loadでセッションをロードするバッチを作っておいてもいいかも。
http://the.earth.li/~sgtatham/putty/0.57/htmldoc/Chapter3.html#S3.7

てなわけで、MultiWindowのは起動できた。mathematica使ってみたがおっそい…。まぁいろいろ経由してきてるんだからしゃぁないか。LAN外からのXDMCPはうまくいかず。これだけ遅いならVNCを試したほうがいいかもなぁ。

0 コメント: