TeratermとX Windowサーバでsshのx11フォワーディング機能を利用する

Oracleのインストール時などには良く使われているが、SSHではx11転送という機能がある。
UNIXライクのOSでは、GUIの処理をクライアント・サーバで分けて行わせる事が可能なのだが、この通信をsshに転送して利用する機能だ。

ようは、UNIX/Linux上で動作するGUI画面を、SSH経由でクライアントマシンで操作出来る機能だと思ってもらえれば良い。つまり、クライアント側をx11機能を提供するサーバとしてあげればいい。Windowsの場合、このx11機能を提供するサーバソフト(X Window サーバ)がデフォルトで存在しないため、別途用意してあげる必要がある。

で、この機能だがTeraterm + X Window サーバで利用することが可能だ。利用するための設定は、以下の手順で行える。
なお、すでにTeratermはインストール済であるものとする。

1.X Window サーバをインストール

まずは、このX Windowサーバが無いと始まらない。
これなしでTeraterm上でX11フォワーディングを行った場合、「サーバはこのマシンに転送を試みました。~」から始まる以下のようなエラーが出力されてローカル側でプログラムを実行出来ない。

Windowsで利用できるX Window サーバの種類はいくつかあるが、その中で今回はXmingというものを利用する。
Xmingについては、こちらのダウンロードページからダウンロードしてもらいたい。

ダウンロードするファイルは以下の2つ。

  • Xming
  • Xming-fonts

今回の場合は、それぞれ「Xming-6-9-0-31-setup.exe{.g_file_name_link}」「Xming-fonts-7-5-0-70-setup.exe{.g_file_name_link}」をダウンロードしている。

1-1.Xmingのインストール

まずは、Xmingのインストールを行う。ダウンロードした「Xming-6-9-0-31-setup.exe」を実行する。

インストール先のディレクトリはデフォルトのまま次へ進む。

インストールする種類についても、デフォルトのまま進む。

スタートメニューフォルダもデフォルトのまま進む。

ここもデフォルトのまま、XLaunchにのみチェックが入った状態で次へ進む。

インストール内容について確認が行われるので、そのまま進む。

インストールが行われる。

インストールが完了。

インストール完了後、Windows ファイアーウォールで許可をするか否かを聞かれるので、アクセスを許可する。

1-2.Xming-fontsのインストール

Xmingを入れただけだと、文字が正常に出力されない場合がある。
そのため、フォントのインストールも別途必要になる。

ダウンロードした「Xming-fonts-7-5-0-70-setup.exe」を実行する。

インストール先のディレクトリはデフォルトのまま次へ進む。

ディレクトリが存在している場合、警告が表示されるがそのまま進む。

インストールするフォントを選択する。基本はデフォルトでOKなので、そのまま進む。

スタートメニューのフォルダ設定もデフォルトでOK。

インストール内容について確認が行われるので、そのまま進む。

インストールが行われる。

インストールが完了。

これで、Xmingを利用する準備が整った。

2.TeratermでX11フォワーディング設定を行う

X Windowサーバは準備できたので、次はTeraterm側の設定を行う。
まず、Teratermの上部メニューから「設定」 > 「SSH転送」を選択する。

「SSHポート転送」というウィンドウが表示されるので、その中の「Xクライアントアプリケーションの転送」にチェックを入れる。

この設定が有効になるのは次以降の接続時なので、もし現在接続中であれば一度切断する。
常用的にX クライアントを利用するのであれば、一度Teraterm.iniに設定を保存するといいだろう。

さて、その後実際に利用した結果がこちら。
SSH接続先でX Windowアプリケーションである「xeyes」コマンドを実行したところ。

こちらは、デスクトップを「gnome-session」コマンドで起動した状態。

コマンドでの操作が苦手でも、GUIならば操作を出来るのでは無いだろうか。
なお、このX11フォワーディングを利用するには、サーバ側のsshd_configで有効にする必要がある。

最近のOSであればデフォルトで有効になっているはずなので、問題なく使える事が多いだろう。