UTF-8 TeraTerm Pro with TTSSH2 を使ってみる

SOFTWARE


TeraTerm Pro

Windows 用の SSH クライアントとして、寺西さん が開発した TeraTerm Pro というソフトウェアがあります。

以前にも EZ-NET: Tera Term Pro で SSH 接続 で触れたことがありますけど、TeraTerm 自体は TELNET クライアントながらもそれに TTSSH という拡張機能を追加インストールすることで SSH 対応となり、Windows 用の SSH クライアントとしては選択肢がなかった感じだったとはいえ、それでもなかなか使い心地はいい感じで愛用していたツールでした。

気になる点としては、起動直後のタイミングでよく、ログインダイアログが他のアプリケーションにアクティブ状態を取られてしまって入力の際に煩わしさを感じたり、通信が絶たれたことを検出した時に自動的にウィンドウが閉じてしまったりして、困るほどではないにせよ、使いにくいかなと思うところはありました。また、多くの接続先を持っているような場合には、ログイン先の選択とアカウント情報の入力がなかなか面倒なところもあったりして。

 

そんな中、ある日 Windows をインストールする機会があって、そのときに TeraTerm も入れておこうとインターネットでソフトを探してみたところ、"UTF-8 TeraTerm Pro with TTSSH2" というソフトウェアが見つかったのでした。

このソフトは、TeraTerm Pro にさまざまな機能拡張を盛り込んだパッケージとなっていて、これをひとつインストールするだけで TTSSH で拡張された TeraTerm Pro が利用できるようになるとのことでした。TTSSH のインストール自体はさほど難しくないとはいえ、一連のインストール手続きで自動的に整備されるというのは、手軽さプラスでとても嬉しいところです。

他にも UTF-8 文字コードが表示できたり、SSH2 にも対応して、充実したソフトウェアに仕上がっているような感じです。また、TeraTerm Menu という、接続先を事前に登録しておいてタスクトレイから簡単に選択できる機能も組み込まれていたりして、そういった使い勝手の面でもとても魅力な感じです。

そんな感じで今回たまたま発見したソフトウェアではありますけど、これを機にさっそく利用してみようと思います。

 

UTF-8 TeraTerm Pro with TTSSH2 をインストールする

SourceForge.jp Project Info - UTF-8 TeraTerm Pro with TTSSH2 ( http://sourceforge.jp/projects/ttssh2/ ) から UTF-8 TeraTerm Pro with TTSSH2 (Japanese version) のバージョン 4.50 ( teratermj_utf8-4.50.exe ) をダウンロードします。

そして、ダウンロードした "teratermj_utf8-4.50.exe" を実行すると、インストーラが起動されます。セットアップを進めるにあたって使用する言語を選択して [OK] を押せば、その言語で表示されたセットアップウィザードが起動しますので、その手順に従ってインストールを進めて行けばいい感じです。

途中の "コンポーネントの選択" でインストールする機能を選択することができるのですけど、標準だと "TeraTerm Menu" と "Collector" という機能がインストールされないようになっていますので少し注意が必要です。

 

UTF-8 TeraTerm Pro with TTSSH2 を使ってみる

TeraTerm Pro

UTF-8 TeraTerm Pro を起動してみて感じたこととしては、とりあえず接続の際のダイアログボックスの印象がなんだかすっきりしたような気がするところでした。

実際には機能が追加されている感じですっきりした訳ではないのですけど、なんとなく操作しやすそうな印象を受けます。SSH のバージョンも "SSH" と "SSH2" とから選択することができるようになっていたり、プロトコルも "IPv4" や "IPv6" といった中から選べるようになっていました。

接続先とのコネクションが張られた後の SSH 認証画面としては、以前と同じような感じです。

 

TeraTerm Menu

"TeraTerm Menu" は接続先をあらかじめ登録しておくことで、接続先を簡単に選択できるようにするためのものです。

タスクトレイに常駐している "TeraTerm Menu" アイコンの上で右クリックをして、ポップアップメニューの "List Configuration" を選択することで、登録画面が表示されます。

ここの [Name] のところでリストアップ時に表示される名称を指定した上で、[Host Name] で接続先の IP アドレスまたはドメイン名を、また必要に応じて [User Name] と [Password] を指定することで、自動ログインも行わせることが可能になっていました。

そのほかの注意点としては、SSH 接続を行いたい時は、[use SSH] にチェックを入れます。また、標準のポート以外を接続先とする場合には、[Host Name] の指定のところで、接続先名に続けてコロン ( : ) をおいて、続けてポート番号を指定します。

入力が終わったら中央上の左矢印ボタンを押して [List Item] の候補にすれば、これで登録作業は完了です。登録が終わったら、タスクトレイの "TeraTerm Menu" アイコンを左クリックして、表示された候補の中から接続したいものを選べば、あらかじめ設定した情報を元に接続を試みてくれます。

 

この画面だけでは設定が行いきれない場合には、[details] ボタンを押すことで表示される "Configuration Details" ダイアログを使用します。

ここの "Option" 項目を使用することで、さまざまな接続方法を指定することができるようになっています。指定できるオプションは次のような感じだそうです。 ただしここでは、このうちのいくつかだけしか実際には利用できない感じでした。

/B TELNET バイナリオプションだそうです。
/C=1 シリアルポートを選択します。左の例では COM1 を意味することになります。
/F=TERATERM.INI TeraTerm で使用する設定ファイルを選択します。左の例では TERATERM.INI が読み込まれることになります。
/FD=C:\TTEMP ファイル転送用ディレクトリを指定することができるようです。ファイルの転送には kermit や XMODEM といった仕組みを SSH サーバ側に搭載されている必要があるはずです。
/H タイトルバーを表示しないようにします。ただ、試してみたところ、タイトルバーも然ることながらウィンドウも表示されなくて、どうにもならない感じになってしまいました。
/I 最小化状態で起動するようにします。
/K=KEYBOARD.CNF キーボードファイルを選択することができるようです。
/KR=UTF8 受信時の文字コードを指定します。左の例では UTF-8 を指定したことになります。この他にも "SJIS", "EUC", "JIS" と、Mac OS X 辺りを想定した "UTF8m" という指定ができるような感じです。
/KT=UTF8 送信時の文字コードを指定します。左の例では UTF-8 を指定したことになります。この他にも "SJIS", "EUC", "JIS" を指定することができるようです。
/L=C:\TEMP\LOG.TXT 指定したファイルへログを記録することができます。左の例では LOG.TXT にログが収集されていきます。
/LA=J 言語モードを指定します。左の例では日本語 (J) を指定したことになります。他にも、英語 (E) や、ロシア語 (R) が選択できるようになっているようです。
/M=MACRO.TXT 起動時に実行するマクロを指定することができるようです。
/P=22 ポート番号を指定することができるようですが、TeraTerm Menu では、ホスト名にコロン ( : ) をつけてポート番号を指定しないといけなそうな感じでした。左の例では 22 番ポートを指定していることになります。
/R=REPLAY.TXT ファイルを再生することができるそうです。試してみると、TeraTerm の画面に REPLAY.TXT の内容が表示されるだけな感じで、どういった用途で利用するのか、良く判らないところでした。
/T=1 TELNET プロトコルを使用する ( 1 ) か、使用しない ( 0 ) かを選択することができるそうです。
/V ウィンドウが見えない状態で起動するようにするのだそうです。実際にやってみたところ、プロセスは起動して接続は確率されているものの、タスクバーにも画面にも TeraTerm のウィンドウが表示されなくて、どうしようもなくなってしまう感じでした。
/W="TITLE" ウィンドウのタイトルを指定できます。左の例ではタイトルバーの "Tera Term" と表示されていた部分のところに TITLE と表示されたウィンドウが起動します。
/X=0 ウィンドウの表示座標 (水平位置) を指定できるそうです。ただ、試してみた感じでは、この値は考慮されている様子は伺えるものの、意図した場所には表示されない感じでした。一応、左の例ではウィンドウの左端を指定していることになるはずです。
/Y=0 ウィンドウの表示座標 (垂直位置) を指定できるそうです。ただ、試してみた感じでは、この値は考慮されている様子は伺えるものの、意図した場所には表示されない感じでした。一応、左の例ではウィンドウの上端を指定していることになります。
/TIMEOUT=3600 接続が自動的に絶たれるまでの秒数を指定することができるようです。ただ、試してみても特に切断されることはない感じでした。一応、左の例では 1 時間 (3600 秒) を指定したことになっていると思います。
/ssh1 SSH1 での接続を試みます。
/ssh2 SSH2 での接続を試みます。

 

気になったこと

使ってみて、UTF-8 TeraTerm Pro の方は満足行くほどの作りになっていたと思うのですけど、ちょっと気になった点としては、TeraTerm Menu が生成する一時ファイルの内容でした。

一時フォルダに ttm61.tmp といったファイルが生成されるのですけど、自動ログインする設定になっていると、このファイルの中にパスワードが記載されていて、テキストエディタなどで簡単に見ることが出来てしまうんですよね。しかもこの一時ファイルは、接続を修了した後も一時フォルダに残っていて、その辺りが少し気になる感じです。

便利とはいえこの感じだと、安全のために自動ログインは使用しないようにした方がよさそうです。

ただ [Host Name] だけの指定だと、空の User Name で認証を試みてしまって再認証ではユーザ名を入力することができなかったり、[User Name] だけを指定すると、認証がいったん失敗して再認証の手続きとなってくれるのですけど、パスフレーズの欄が入力不可になっていたりして、なんとも使い勝手がよくないです。いったん他の "RSA/DSA鍵を使う" などを選択して、再び "プレインテキストを使う" を選択すれば接続はできるようになるのですけど、なんだか変な感じです。

かといって "TeraTerm Menu" の認証モードで "launch only" を選択すると、入力した [Host Name] 等の情報ではなく TeraTerm Pro が記憶しているディフォルトの情報で埋められた接続ダイアログが表示されてしまったりして、何の意味もない感じでした。そんな感じで "TeraTerm Menu" に関しては、ちょっと利用しない方がいいかもしれない気がします。せめてサーバ側に権限の低いアカウントを用意してそれを指定するのがよさそうです。

さらには Collector という機能が、TeraTerm を複数立ち上げた時にそのウィンドウをまとめて管理するためのソフトだろうと思うのですけど、これが TeraTerm のみならず Microsoft Internet Explorer 7.0 のウィンドウにも影響を及ぼしてしまうようで、ブラウザの下に Collector バーが付加されてしまっては、さらに新しいウィンドウでリンクを表示しようとしてもエラーとなって接続できない感じになってしまいました。

インストーラでも TeraTerm Menu と Collector は標準ではインストールされなくなっているのもありますし、この分だと、こまごまとしたツールについてはお試し的な感じでいたほうがいいかもしれません。

 

それと、TeraTerm の機能としての /L オプションで指定できる通信での作業記録を残せるログ機能なのですけど、指定されているファイルに記録が追記されて行く感じで、際限なく増えて行きそうなのが少し心配なような気がしました。この辺りのログ最大容量を指定できて、超えた分はカットされて 行く感じになったりするといいかもしれないのになって感じです。

それともうひとつ、TeraTerm Menu の登録リストがエクスポートできたら便利だろうと思います。設定自体はレジストリ \\HKEY_CURRENT_USER\Software\ShinpeiTools\TTermMenu にあるのでそれを用いて他の PC に設定を写すことは可能でした。なお、レジストリ内に記録されているパスワードは、少し工夫して原文ではなくなっている様子です。