ssh port forwarding(sshポートフォワード)(トンネリング)を使って直接アクセス許可のないLinuxサーバーのXクライアントを起動する方法

ITで知っておくべき知識
スポンサーリンク

sshのポートフォワード機能を使うと、ポートの許可がないLinuxサーバーでXクライアントを起動したり、かなり大胆なことを実行出来ます。

 

スポンサーリンク

ssh port forwarding(sshポートフォワード)はすばらしい

たまに、インターネット上にある直接アクセス許可のないLinuxサーバーのXクライアントを起動したい時があります。

 

例えば、外部にホスティングされているお客さんのLinuxサーバーにOracleをGUIでインストールしたい時です。

 

ローカルにあるLinuxサーバーなら、Gnome端末などから、

とすれば、そのままインストールできます。

 

ところが、

  • ローカルWindowsからはTARGETサーバーにsshでアクセス許可がない
  • ローカルWindowsからはTARGETサーバーにsshアクセス許可のあるサーバーにはアクセス可能である

というケースの場合、TARGETサーバーにOracleをGUIインストールしたい場合、「さて、どうしたものか?」ということになってしまいます。

 

 

こういったときに、自身はTARGETサーバーにアクセス許可はなくても、TARGETサーバーにsshアクセス許可のあるサーバーを踏み台にして、Xクライアントを起動することができます。

 

これが、sshのport forwardingというテクニックです。

 

sshのport forwardingを使えば、ローカルのWindows端末にTARGETサーバーのXクライアントを起動することができます。

 

ssh port forwarding(sshポートフォワード)を使って直接アクセス許可のないLinuxサーバーのXクライアントを起動する方法

 

次のようなことを実現します。

 

 

 

以下のものを事前にインストールしておきます。

  • ローカルWindowsにCygwinをX Serverも含めてインストール(Windowsで動作するX Serverであれば何でもいいと思います)

 

Windows端末から、「スタートメニュー」 → 「Cygwin-X」 → 「XWin Server」を起動します。

 

その後、X端末から以下のコマンドでアクセス許可のあるサーバーににssh port forwardingを使ってログインします。

 

 

次に、その端末から、TARGETサーバーにログインし、DISPLAY環境変数を設定します。

その後、TARGETのサーバーのXクライアントを起動します。

 

アクセス許可のないTARGETサーバーのXクライアントアプリがローカルのWindows端末で起動することを確認できます。

 

これはすばらしいかも。

 

sshについてのおすすめの本

 

↓ssh についてのおすすめの本はコチラ

ssh