【ハウツー】

Windowsでポートフォワーディングを簡単に! デベロッパ要チェックの"Tunnel4J"

1 ssh(1)ベースのポートフォワーディングツール

    後藤大地  [2006/12/15]

    Tunnel4Jとは

    Tunnel4JはJavaで開発されたSSHフォワーディングアプリケーション。JCraftにおいて開発されているJschライブラリをSSHエンジンとして採用しているGUIデスクトップアプリケーション。LinuxやFreeBSD、Mac OS Xユーザには同アプリケーションはそれほど必要ないが、限定されたターミナル、そしてssh(1)コマンドがデフォルトでは用意されていないWindowsプラットフォームで便利に使うことができるアプリケーションだ。

    ssh(1)ポートフォワーディングは通信を安全な経路で実施したい場合や、ファイアウォールで使用したいポートが閉じている場合などにそれを回避する目的で使われることが多い。一般ユーザというよりはデベロッパ向けのアプリケーションだ。Windowsプラットフォームを使っている場合にはなかなか便利なので、紹介しておきたい。

    ポートフォワーディング

    ssh(1)には、ローカルホストへの接続をリモートホストに転送したり、その逆を行う"ポートフォワーディング"という機能が用意されている。Tunnel4JはこれをJavaで実装したものだが、Tunnel4Jで使われている指定方法はssh(1)コマンドの-Lオプションや-Rオプションでの指定をそのまま使っている。つまり、Tunnel4Jにおけるポートフォワーディングの指定方法を理解するには、ssh(1)における指定方法を理解しておく必要がある。ここで簡単に説明しておく。

    プロンプト1は、ローカルホストのl_portポートへのアクセスを、hostnameにuserで接続し、さらにそこからlast_hostのr_portに向けて転送する。

    プロンプト2は、hostnameにuserで接続し、hostnameのr_portポートへのアクセスを、ローカルホストにデータ転送し、さらにlast_hostのl_portポートに向けて転送する。

    プロンプト1 ローカルホスト→リモートホストへのポートフォワーディング: -L

    % ssh -L l_port:last_host:r_port user@hostname

    プロンプト2 リモートホスト→ローカルホストへのポートフォワーディング

    % ssh -R r_port:last_host:l_port user@hostname

    これだけではやや理解しにくいかもしれない。以下、いくつか使用例を挙げ、どのように動作するかを説明しておこう。

    新着記事

    特設サイトの情報

      人気記事

      一覧

        イチオシ記事

        新着記事

        特別企画

        マイナビニュースマガジン