SSHダイナミック転送により、学内限定のページを見る方法

【目次】

  1. 注意事項
  2. はじめに - SSHダイナミック転送について
  3. SSHクライアントの設定
  4. ブラウザの設定

注意事項

計算機の処理能力は無限ではありません。この方法で学外からでも見ることのできるサイトに接続するなどして、必要のない通信を発生させると、ほかの人の迷惑となりかねません。利用時はくれぐれもマナーを守り、用件が終わった後はすぐに接続を終了させてください。

学内のネットワークでは、ファイル交換ソフトの利用は禁止されています。接続前にそのようなソフトの通信が学内のネットワークに流れ込まないよう、ポート番号などの設定を再確認してください。万全を期して終了させておくことをお勧めします。

システム保守に指定されている日はこの方法は使用できません。

はじめに - SSHダイナミック転送について

SSHポートフォワーディングでWebページを閲覧する場合、接続先ごとにポートを一つ消費し、アクセス時のアドレスの形も変わってしまうため、実際に使うには不便があります。
たとえば、ポートフォワーディングでhttp://www.cc.kyushu-u.ac.jp/ec/manual/を閲覧したい場合、www.cc.kyushu-u.ac.jpを任意のポート(たとえば1080)に登録し、http://localhost:1080/ec/manual/としてアクセスすることになります。閲覧するページがあるホストが少数であればこの方法で対応できるのですが、閲覧するページ内のリンクが絶対パスであった場合にリンクをそのままで使えないなど操作に制約が出てしまいます。

SSHにはダイナミック転送という仕組みが用意されていて、SSHクライアントにSOCKSプロキシとして振る舞わせることができます。
そのため、アプリケーションが対応していれば通常と同様の操作で学内ネットワークの利用ができるようになります。

なお、ポート転送とダイナミック転送は併用できますので、すでに使用しているポート番号を避ければ、ポート転送を前提とした各種アプリケーションの設定を変更する必要はありません。これによりSOCKSプロキシ非対応のアプリケーションやきめ細かな設定ができないソフトも使い続けることができます。逆に、アプリケーション側に支障がなければ複数のポート転送をダイナミック転送ひとつにまとめてしまうことも可能です。

SSHクライアントの設定

SSHによるダイナミック転送を行うには、まずホスト計算機への接続に用いるソフトの設定を行う必要があります。以下にPortForwarderとPuTTYの手順を掲載しますので、各自の環境に合わせて選択の上使用してください。

PortForwarderの設定

PortForwarderによるポート転送を参考に環境を整えます。一度ah.s.kyushu-u.ac.jpへの接続試験をしておいたほうが良いでしょう。

config.iniを編集します。現在の内容に追加して、あるいはLocalForwardの部分を上書きして以下の行を入力します。

DynamicForward localhost:1080 (1080の部分は空きポート番号を任意で指定)

config.iniの例:DynamicForwardの一行を入れる
 図1:config.iniの例(赤線のDynamicForwardの行を入れる)

再度、PortForwarderを起動します。PortForwarderにはパスワードの保存機能はありませんが、公開鍵認証を用いることによってパスワード入力を省略することができるようになります。詳しくは「PortForwarderでパスワード入力を省略する」を参照してください。

接続を終了するときは、タスクトレイのアイコンを右クリックし、「Exit」を選択します。

pfwd.exeの設定

PortForwarderのかわりに、PuTTYに含まれるpfwd.exeを使用することも可能です。

インストールフォルダに含まれる設定ファイルのサンプル(pfwd_sample.ini)を参考に、pfwd.iniを作成します。
pfwd_sample.iniの改行コードがLFなので、TeraPadなどのエディタを使用して改行コードの設定を維持したほうが無難です。

[SSH]
Host=ah.s.kyushu-u.ac.jp
Port=22
Compression=1
ProtocolVersion=2
User=ab12345

; パスワード
; ・省略時にはセッションに設定されているものが使われます
; ・ダイアログボックスから入力したい場合は空文字を指定します
; ・平文パスワードの先頭に"@"を付けると暗号化パスワードに変換されます
Password=

[FORWARD]
01=D1080
pfwd.iniの設定例

pfwd.exeは未知のホスト鍵があると終了してしまうため、PuTTY本体で接続したことのあるホストにしか接続できません。最初の一回のみPuTTY本体で接続してください。

pfwd.exeを起動させます。
 pfwdの動作
図2:pfwd.exeのアイコン
タスクトレイにアイコンが現れ、接続されます。設定ファイルにパスワードを書き込んでいる場合(センターとしては非推奨)はそれ以外の操作は必要ありません。

接続を終了するときは、タスクトレイのアイコンを右クリックし、「閉じる」を選択します。


ブラウザの設定

Internet Explorer の設定

IEの[ツール]メニューまたはコントロールパネルから「インターネットオプション」を呼び出します。
[接続]タブにある[LANの設定(L)]ボタンをクリックします。
インターネットオプションの接続タブにあるLANの設定ボタンをクリックする
 図3:インターネットオプション

プロキシサーバーのグループボックス内の「LANにプロキシサーバーを使用する」にチェックを入れ、[詳細設定(C)]ボタンをクリックします。

 図4:LANの設定ウィンドウ

表示されるダイアログボックスでSocks(C)欄に「localhost」,ポート番号にはconfig.iniに設定した番号を入力します。
Socks(C)欄に入力できない場合は、「すべてのプロトコルに同じプロキシ サーバーを使用する(U)」のチェックをはずします。

 図5:プロキシの設定(例)

[OK]ボタンを押してダイアログボックスを3つとも閉じると、学内ネットワークを経由した接続に切り替わります。

用件が済み次第速やかに「LANの設定」ウィンドウの「LANにプロキシサーバーを使用する」からチェックを外して接続を終了させてください。

FireFoxの設定

FireFoxのメニューバーから[ツール(T)]-[オプション(O)]の順に選択し、設定画面を表示させます。
[詳細]ページで[ネットワーク]タブを選択し、[接続設定(E)]ボタンをクリックすることでプロキシの設定画面となります。

 図6:FireFoxの設定画面

「インターネット接続」ダイアログボックスで、「手動でプロキシを設定する(M)」のラジオボタンをクリックし、SOCKSホスト(C)欄に「localhost」ポート番号欄に設定ファイルに記述した番号(例:1080)を入力します。

 図7:プロキシの設定(例)

[OK]ボタンで2つのダイアログボックスを閉じるとプロキシを用いた接続になります。

用件が済み次第速やかに「インターネット接続」ダイアログボックスのラジオボタンを「インターネットに直接接続する(D)」に戻して接続を終了させてください。

図8:プロキシ切り替えアドオン
QuickProxyやFoxyProxyといったアドオンを導入することでタブ・接続先ごとの設定や簡単なon/offが可能になります。

その他のアプリケーションの設定

ブラウザだけでなく、SOCKSプロキシに対応しているFTPクライアントやメーラーなどもこの方法で接続できます。ただし、複数の接続先に対して一括で設定を適用してしまうソフトもありますので、個別の保存ができないアプリケーションにはポート転送を使う方が良いでしょう。

詳しい設定方法は各アプリケーションのヘルプを参照してください。
いずれの場合も
SOCKSプロキシの欄に「localhost」
ポート番号欄に設定ファイルに書き込んだ番号(例:1080)
を書き込むのは共通です。


Last modified: Sun Sep 21 19:58:00 JST 2008