読者です 読者をやめる 読者になる 読者になる

どせいたんさき。

ナスダヨー

sshでダイナミックに転送してなんかVPNみたいなことをする

目的

大学内部からじゃないと接続できない各種ジャーナルの Web ページを外出中でも閲覧したい.

解決方法

いろいろあるけれども ssh のダイナミック転送なる機能で SOCKS プロキシを利用する方法を学んだ*1.使いたいポート番号を選んで ssh-D オプションの引数として与えてあげればよいらしい.たとえばこんな感じである.

ssh -f -N -D 8080 hogehoge.fuga.piyo.jp

ちなみに -f はバックグラウンドで起動するため,-N はリモートにログインせずにポート転送のためだけに ssh を起動するためのオプションである.これで localhost の 8080 番を SOCKS プロキシサーバとして使うことができるようになった*2.あとはプロキシで接続したいアプリケーションで設定をすれば良い.

例えば Firefox なら Edit > Preference > Advanced > Network > Connection でプロキシの設定ができる.選択肢から Manual proxy configuration を選択して SOCKS プロキシサーバの設定をすれば良い.

また Ubuntu 12.10 なら network-manager を起動すれば Network proxy という設定項目がある.ここで,MethodManual に設定して SOCKS プロキシサーバの設定を記述してあげればシステムのプロキシ設定に従うすべてのアプリケーションで有効になるはず.

まだ学外からの接続は試していないけども,診断くんで調べてみた.プロキシを有効にして接続したところ REMOTE_HOST の部分がきちんと変わることを確認したので,きちんと設定できているのだと思う.

*1:ダイナミック転送も SOCKS プロキシも全く理解していないけども…….ssh で接続できるサーバがあればプロクシサーバとして利用できるみたいな理解でいいのだろうか???

*2:という言い回しで正しいのかな……