Mazn.net

やってみて 調べてみて 苦労しなけりゃ 箱は動かじ

sshダイナミックフォワーディング@cygwin

      2013/07/15

OpenSSHクライアントのsshコマンドでトンネリングをする方法として-Lオプションを使って、ポートやフォワード先を指定する方法は知っていたが、-DオプションでSOCKSプロキシとして使えるとは知らなかった。-Lオプション(ssh -L 5555:192.168.1.1:6666 ホスト名)では、使うトンネルの数だけオプション書くのは面倒だなぁって思ってたから、まじで便利です。接続方法は簡単です。

$ ssh -D 1234 接続先IP

これで、localhostの1234ポートがSOCKSになります。

puttyやIEなどSOCKSに対応しているアプリケーションならば、すぐに使えます。

sshコマンドでSOCKSはそのままでは使えません。connect.cというファイルがネット上にありますので、使わせて頂きます。

今回はcygwin上でsshを使うので、上記リンク先にあるWindowsのバイナリ(connect.exe)をダウンロードし、/usr/local/bin に保存しておきます。

使用方法は、~/.ssh/config に以下のように設定します。ここでは192.168.1.1 や HOST1といったサーバに接続する場合にSOCKS(port 1234)が使われます。

Host 192.168.1.* 192.168.2.* HOST1
  ProxyCommand /usr/local/bin/connect.exe -S localhost:1234 %h %p

なお、HOST1が接続先のサーバでDNSや/etc/hostsで名前解決できないと、エラーになります。ローカルで名前解決後にSOCKSに接続するには、-R localを使えば可能です。

Host 192.168.1.*
  ProxyCommand /usr/local/bin/connect.exe -R local -S localhost:2222 %h %p

GPLライセンスなので、ここに置いておきます。

connect.c
connect.exe (Windows版バイナリ)

 - IT技術, ネットワーク ,

336px

Message

メールアドレスが公開されることはありません。

  関連記事

no image
vncviewerで特定のポートに接続する@Linux

vncのサーバにvncviwerで接続する時に、 $ vncviewer サーバ …

no image
KVMを使ってみる@CentOS 5.4

RHEL 5.4からKVMが使えるようになり、それに伴いCentOS 5.4でも …

no image
PostfixをMaildir形式に変更してCourier-IMAP使用@Debian Etch

SquirrelMailでWebメールを使おうと思ったところ、IMAPサーバが必 …

no image
スイッチの初期化 @ Cisco Catalyst 2960

スイッチのパスワードを忘れてしまいログインできなくなった場合は初期化することにな …

no image
vimでシンタックスのハイライトがおかしくなる

vim では、テキストファイルの種類に応じて色をつけてくれる機能(ハイライト機能 …

no image
gitで現在の変更を一時的に退避して他の修正をする

ソースコードにある目的をもって機能追加している際、機能とは関係ないバグを見つける …

no image
設定とメールを任意のフォルダに移動@Thunderbird 2

長年使っていたBeckyからThunderbirdに移行を始めました。 Beck …

no image
gmailでフィルタリング転送した時メールは受信トレイに残るの?

gmailの基本転送機能は全てのメールをあるアドレスに転送しますが、フィルタを用 …

no image
COMODO Defense+ の 信頼ベンダー(trusted vendor)リストを削除する

最近COMOD Firewall を入れると、Defense+ の信頼ベンダーリ …

no image
システム上のユーザ一覧情報の取得

NISやLDAPなどを使用していると、きちんとと設定されているのか、誰が認証でき …