ブラウザでウェブサイトを閲覧する際、PuTTYでSSH接続した接続先を一旦経由して接続させることが可能です。

アクセス先のサイトが特定のIPアドレスからのみに閲覧を制限している場合や、インターネット接続に利用しているネットワークでSSH以外の特定のプロトコルを制限されている場合などに有効です。

例えば、自宅から大学のネットワークを経由して学術論文のWebサイトへアクセスしたり、大学のネットワークでSSHは使えるもののFTPの利用は制限されているといった場合に、一旦SSHを経由して別サーバーからFTP接続させたり(いわゆる“FTP over SSH”)することができます。

手順

  1. まずPuTTYの基本設定をします。SSH接続したい接続先のホスト名などを入力します。
  2. 左のメニューから「SSH」>「トンネル」を選択します
  3. 「源ポート」に適当なポート番号(12345など使われていなさそうな番号)を入力し、「ダイナミック」を選択します
  4. 「追加」をクリックすると、上の一覧に指定したポート番号が追加されます。
    (「D1234」 のDは「ダイナミック転送」を表すD)
  5. 下の「開く」をクリックして接続します。

    端末が表示されるので、ログインしてコマンドが打てる状態にしておきます。

    PuTTY側の準備は以上となります。
  6. ブラウザのプロキシ設定でSOCKS5プロキシとして、
    • IPアドレス: 127.0.0.1
    • ポート番号: 3.で指定したポート番号(例では12345)

    を指定します。

    ■ Firefoxの場合:

    「オプション」 → 一番下の「ネットワークプロキシ」から「接続設定」をクリックし、「手動でプロキシを設定する」を選んで以下のように設定(「SOCKS v5」にチェックが付いていることを念のため確認)

    ■ Firefox以外の場合:

    「コントロールパネル」→「インターネットオプション」を開き、「接続」タブ→「LANの設定」をクリックします。

    プロキシサーバーの使用にチェックを入れ、「詳細設定」をクリックします。
    もし「設定を自動的に検出する」にチェックが付いている場合、ネットワーク側の設定によって正常に反映されない場合があるのでチェックを外します。

    Socksの入力欄にIPアドレスとポート番号を入力し、「OK」をクリックします。

以上で設定は完了です。

ブラウザからIPアドレスを確認するサイトなどへアクセスすることで、接続元が変わっていることが確認できます。

通常の接続へ戻したい場合は、SSH接続を終了した上で、

  • Firefoxの場合:
    「オプション」→「ネットワークプロキシ」の「接続設定」
    →「このネットワークのプロキシ設定を自動検出する」などにチェック
  • Firefox以外の場合:
    「コントロールパネル」→「インターネットオプション」→「接続」タブ→「LANの設定」→「LANにプロキシサーバーを使用する」のチェックを外す

というように設定を変更することで元に戻せます。

今回はブラウザでの方法を紹介しましたが、Socks5のプロキシ接続に対応しているソフトウェアであればSSHを経由しての接続が可能です。
例えば、FTPのファイル転送ソフトなども同様のプロキシ設定を行うことでSSHを経由した接続が可能となります。