WebOS Goodies

WebOS の未来を模索する、ゲームプログラマあがりの Web 開発者のブログ。

WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。
Subscribe       

タブ型 SSH クライアント Poderosa

Opera によってメジャーになったタブ型のインターフェースが、ブラウザ以外のアプリケーションにもどんどん広がっています。この blog でも先日の記事でタブ型ファイラーの Avesta をご紹介しました。タブを採用すると複数のビューがひとつのウインドウにまとめられるので、複数のウインドウを開くことの多かったアプリケーションではとくに効果的ですね。

そんなアプリケーションのひとつが SSH クライアントではないでしょうか。以前ご紹介した PuTTY を利用すると簡単に SSH セッションを開始できますが、調子に乗ってウインドウを開いていると画面がシェルウインドウだらけになってしまいます。そんな状況を一挙に改善するのが、今回ご紹介する Poderosa、タブインターフェースを採用した Windows 用 SSH クライアントです。

インストール

Poderosa のインストールはとても簡単。基本的にはダウンロードページよりインストーラをダウンロードして実行するだけです。後は Windows アプリの一般的な手順でインストールできます。唯一、「追加タスクの選択」というところで「ファイル拡張子 .gts を Poderosa と関連づける」がデフォルトで OFF になっていますが、これはチェックを付けておくのがお勧めです。後述するショートカットを使って簡単にサーバーへの接続ができるようになります。

注意点として、.NET Framework 1.1 SP1 がインストールされていると Poderosa が頻繁にクラッシュすることがあるそうです。.NET Framework 側の問題ということですが、これはなんとかして欲しいですね。詳細はダウンロードページの説明を参照してください。

公開鍵認証で SSH サーバーに接続する

Poderosa を起動すると、以下のようなウインドウが表示されます。

SSH サーバーがパスワード認証を許可していれば、このダイアログの「Telnet/SSHによる接続を行う」ですぐにでもログインすることができます。しかし、最近は公開鍵認証を使うことが多いと思われますので、今回はそちらの手順をご紹介しようと思います。

ということで、ここでは「キャンセル」ボタンをクリックして「ようこそPoderosaへ」のダイアログを閉じてください。

認証鍵の生成

まず、認証に使う鍵を生成しましょう。PoderosaOpenSSH 用の公開鍵を直接生成できるので便利です。手順は以下のとおりです。

  1. メインメニューから [ツール]-[SSH鍵生成ウィザード] を選択し、「SSH鍵生成ウィザード」ダイアログを表示させます。
  2. 「パスフレーズ」と「確認入力」に鍵を暗号化するためのパスワードを入力します。このパスワードは SSH サーバーへの接続時に必要になりますので、忘れないようにしてください。
  3. 「次へ」ボタンを押します。
  4. 認証鍵を生成します。ダイアログ上でマウスを動かすと、その座標を乱数として鍵を生成します。このあたりは PuTTY と同じですね(^^;
  5. 生成が完了したら、「次へ」ボタンを押します。
  6. 「秘密鍵を名前をつけて保存」ボタンをクリックし、秘密鍵を保存します。
  7. 「OpenSSH形式で公開鍵を名前をつけて保存」ボタンをクリックし、公開鍵を保存します。
  8. 「完了」ボタンをクリックして、鍵生成ウィザードを閉じます。

これで認証鍵ペアが生成できました。

サーバーで公開鍵を登録

生成した公開鍵は何らかの方法で接続先の SSH サーバーに転送しなければなりません。公開鍵は他人に知られても問題ありませんが、改竄されると危険です。転送は改竄の危険がない方法で行ってください。ここではなんらかの方法で公開鍵を "~/public_key" にコピーしたと仮定します。

転送した公開鍵は以下のようにして "~/.ssh/authorized_keys" に追加します。PuTTY と異なり、もともと OpenSSH 形式になっているので "ssh-keygen" で変換する必要はありません。

cat ~/public_key >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

コピー後にパーミッションを 600 にしておかないと、OpenSSH が危険な状態とみなして接続を拒否してしまいます。"~/.ssh" 以下のファイルは常に 600 のパーミッションにしておく癖を付けるのが良いかと思います。

接続する

サーバー側の準備が整いましたので、いよいよ接続です。

  1. Poderosa を起動します。
  2. メインメニューの [ファイル]-[新規Telnet/SSH接続] を選択し(もしくは「ようこそPoderosaへ」ダイアログの「Telnet/SSHによる接続を行う」でもかまいません)、「新規接続」ダイアログを表示させます。
  3. 「ホスト」に接続するホストの FQDN を入力します。
  4. 「プロトコル」を「SSH2」に変更します。
  5. 「ユーザ名」に自分のログイン名を入力します。
  6. 「認証方法」を「公開鍵」に変更します。
  7. 「鍵ファイル」に先ほど生成した秘密鍵を指定します。
  8. 「パスフレーズ」に鍵の生成時に指定したパスフレーズを入力します。
  9. 「OK」ボタンをクリックします。
  10. サーバーの公開鍵を登録するかどうかを尋ねてきたら、「OK」ボタンを押します。

ログインに成功すると、以下のようにコンソール画面が表示されます。

ここまでは何の変哲もない SSH をサポートしたターミナルエミュレータですね。しかし、ここからが Poderosa の本領発揮ですよ!

Cygwin コンソールを開く

もし Cygwin がインストールされているなら、ツールバーの左から 3 番目、Cygwin のアイコンらしきボタンをクリックしてみてください。「Cygwinへの接続」ダイアログが表示されますが、とくに変更の必要はないのでそのまま「OK」ボタンをクリックします。

なんと!Poderosa がそのまま Cygwin のコンソールになるのです!!これは素晴らしい。もはやウインドウサイズが変更できない駄目なコマンドプロンプトに悩まされる必要はありません。ある意味、こちらのほうが使用頻度が高いかもしれませんね(笑)。

タブを使用する

まだありますよ!(^^)

ここまでで SSH サーバーと Cygwin の 2 つのセッションを開きましたが、それらはタブをクリックすることで簡単に切り替えられます。もちろん Ctrl+Tab でも OK です。

さらに、メインメニューから [ウィンドウ]-[スタイル]-[左右2分割] を選択してみてください。ウインドウが左右 2 分割されるはずです。しかし、この段階では右側のペインにはなにも表示されていないので、タブバーから Cygwin のタブを右側のペインにドラッグ&ドロップしてください。

見事に SSHCygwin のセッションが左右のペインに表示されました!!これはかなりいけてますね。左右だけでなく上下にも分割できますし、3 分割にすることもできます。分割操作はツールバーのボタンでもできますので、そちらを利用すれば素早く切り替えできます。

タブの操作性は Avesta に一日の長がありますが、それでもこれができると世界が変わりますね。とても快適です。

接続のショートカットへを保存する

PuTTY では、コマンドラインオプションなどを使うことでショートカットのダブルクリック一発で特定のサーバーへの接続を開始することができましたが、もちろん Poderosa でも同様の機能があります。それも、より簡単にショートカットを作成できるようになっています。

あるサーバーに接続して、このサーバーには頻繁に接続しそうだなと思ったら、おもむろにメインメニューの [ファイル]-[接続へのショートカットを保存] を選択し、好きな場所にショートカットを作成します。あとはこのショートカットをダブルクリックするだけで、同じ設定でサーバーに接続することができます(インストール時に .gts ファイルへの関連づけを行っている場合)。

たいていは頻繁に接続するサーバーは 2〜3 に限られると思いますので、この機能はとても便利です。

その他の機能

ここまででご紹介した以外にも、Poderosa にはいろいろな機能があります。ざっと挙げると以下のような感じでしょうか。

  • .NET のスクリプト言語(VBScript などでしょうか)でマクロが組める。
  • SSHCygwin 以外にも、シリアルポート経由の接続や Service for UNIX シェルとしても使える。
  • ポートフォワーディングに対応している。
  • GUI で簡単に設定できる豊富な設定項目。

この中でもとくに、ポートフォワーディングの機能に関しては後々ご紹介したいと思います。PuTTY も同様のことができるので、それといっしょにやるかもしれません。

本日はタブ型 SSH クライアント Poderosa をご紹介しました。使いやすさという面ではこれまで使ってきた SSH クライアントの中でも抜群で、お勧めです。唯一気がかりなのが、ここ 1 年くらい更新がないところでしょうか。とても優れたソフトウェアなので、ぜひ改良を続けていってほしいと思います。私にはこんな記事を書くくらいしかできないところが歯痒いところですが(^^; 私の早とちりだったようで、 Poderosa4β の公開が始まりました。多くの改良が施されているようなので、近日中にレポートしたいと思います。トラックバック・コメントでお知らせくださった方、ありがとうございます。

関連記事

この記事にコメントする

Recommendations
Books
「Closure Library」の入門書です。
詳しくはこちらの記事をどうぞ!
Categories
Recent Articles