CygwinかVMwareか

良い記事

そんな私はPutty + VMware Workstation派。

Cygwinだと困ること

ビルドできないものがあるのと、web開発だと、リリース環境との違いを意識するのが面倒。
ビルド速度については、coLinuxより速いケースもあるし、個人的にはCygwinを導入しない主因ではない。
それよりも色々気をつけないといけないという気がして、安心感がいまいち足りない。
なんだかんだでVMwareは楽。電車の中でもデバッグできるしスナップショットもある。

サスペンドすると接続切れる問題

これは重大。うろ覚えだが、Windows XP + VMware Workstation 5/6のときは、host onlyまたはNATにしていれば、ホストとゲストのSSH接続は切れなかったような記憶がある。
これがWindows 7だと、待機状態から復帰すると全ての接続が切れてしまいげんなりしていた(VMware Workstation 6と8で確認)。
が、試しにVMwareのNATの設定にあるゲストOSへのポートフォワーディングを設定して、そこ(127.0.0.1)へSSHを張ってみたところ、切れないことが判明。すごく快適になった。

PuTTYPoderosaではポートフォワーディングできない

誤解。
むしろ、PuTTYのほうが、ポートフォワーディング先がいくつかあるとき(例えば会社では直接つながるけど、自宅では会社経由でつなぐとか)に、GUIで手軽に選べると思う。
怠惰なのでクリックして選びたい。ユーザ名とかFQDNを入力したくない。

PuTTY 0.61

なんとPuTTYは四年ぶりにバージョンアップしていて、Windows 7のタスクリストに対応している。
これがあると(設定画面を経由せずに)セッションを直接選べる。


Windows Vistaまでは、スタートメニューと同列にフォルダを作成しておいて、セッションのショートカットを置けばよかった。(画像左側)
Windows 7からはこれができないようなのだが、タスクリストに入れると近い感じになった。(画像右側)
スタートメニューにPuttyを表示させておいて、右端の矢印をクリックすると、Recent Sessionsなどが選べる。矢印をクリックしないといけないのがやや面倒ではある。
Recent Sessionsだと順番がばらばらなので選びづらいが、右クリックして「いつも表示」を選べば順番が固定されるのでましになる。

PuTTYの鍵生成の問題

puttygen.exeの問題点は二つ。

  1. 1024bitを指定してもなぜか1023bitになる
  2. AESで暗号化された秘密鍵がインポートできない

なので、以下の手順で鍵を生成するとよい。

  1. Linux上)ssh-keygenにて、パスフレーズなしで秘密鍵を生成する
    コマンドは ssh-keygen -t rsa -b 1024 など
  2. puttygenでそれをインポートする(必要ならパスフレーズを設定する)
  3. Linux上で必要であれば)opensslでパスフレーズつきに変換する
    コマンドは openssl rsa -in in.key -out out.key など