Puttyごった煮版のpfwdでsshポートフォーワード¶
社外から社内のネットワークにssh経由で接続することがとても多いので、puttyのsshトンネル機能を使っています。でも、トンネルを張るためにputtyのコンソールが一つ常に開いているというのが邪魔で、タスクトレイに常駐するsshトンネルツールないかなあと色々調べてみました。
putty.exe:
ここが出発点。トンネル出来るのはとても便利なんだけどコンソールが邪魔。
-
cygwinを利用したWindows用のOpenSSHサーバー。ssh接続するとcmd.exeを遠隔 操作できる。Installer付きなのでセットアップは簡単。sshクライアントも 付いてるけどDOS窓が邪魔。SSHサーバーにトンネル設定できれば 解決なんだけど、sshdはあまり詳しくない。
とりあえずこれはこれで便利なので何かの機会に利用しよう。 (Unix Service for Windows のsshdは有料らしい?)
plink.exe:
putty付属のコンソール用sshクライアント。 やっぱりDOS窓が邪魔なんだけど、よく考えると何かの子プロセスとして起動 してやればDOS窓開かなくて済みそうな。。
plinkw.exe:
PuTTY ごった煮版 のDOS窓のないplink. 本家にはない。 WindowsアプリなんだけどWindow表示しないので、パラメータを指定して起動 すると画面の邪魔にもならず良い感じ。終了とかどうするんだろ?
‥‥と思いきや、ネットワークが切断したらダイアログが出てきて、 OK押したら終了してしまった。再接続機能が欲しいなあ。
pfwd.exe:
PuTTY ごった煮版 のポートフォワードツール。本家にはない。 タスクトレイに常駐してくれて、ネットワーク切断時には再接続してくれる。 しかし、とても惜しいことに切断時にダイアログが出てきて、再接続に 成功するか終了するまで消えない。邪魔。。。後一歩。
ちなみにputty-0.59, 0.60ごった煮版のpfwdは再接続に失敗して終了する らしいので、0.58版で試してみました。
ここで取り得る選択肢は、「plinkあたりをタスクトレイ常駐するプログラムから 子プロセスとして呼び出して切断したら接続をリトライする」ようにするか、 「pfwd.exeを改造してダイアログ出さずにリトライする」ように改造する。
タスクトレイ常駐は pywin32でSysTrayIcon でネタだししたので、ちょっと 頑張れば出来そう。pfwdの改造はすぐ出来そう。うーむ。