==============================================================================
■SSH2対応TTSSH             【利用手引き】
==============================================================================

●はじめに
  本プログラムはTTSSH(An SSH Extension to Teraterm)をSSH2に対応させたモジュールであり、
  TeraTerm上でSSH2(Secure Shell version 2)を利用することが可能となります。


●収録ファイル
  アーカイブを解凍すると次に示すファイルがあります。

  ---------------------+-----------------------------------
  readme-j.txt            いまお読みのテキストファイル
  ttxssh.dll              DLL本体
  msvcr71.dll             MFC7.1ランタイム
  TERATERM_sample.INI     INIファイルサンプル
  ---------------------+-----------------------------------


●インストール方法
  TeraTermがインストールされているフォルダへDLL本体とMFC7.1ランタイムをコピーします。
  すでにオリジナル版TTSSHが格納されている場合は、事前にバックアップを取っておいてから
  上書きしてください。
  
  ※注意：
    SSH2対応TTSSHはUTF-8対応TeraTerm Pro上でしか動作しません。
    UTF-8対応TeraTerm Pro: http://hp.vector.co.jp/authors/VA013320/
  
  
●SSHの利用方法
  以下の手順によりSSH(Secure Shell)を使った通信を行うことができます。
  
  １．DLLのコピー
      UTF-8対応TeraTerm Proがインストールされているフォルダへ"ttxssh.dll", "msvcr71.dll"を
      コピーします。
  
  ２．TeraTermメニューの"New connection"を呼び出し、"Service"で'SSH'を
      選択する（ポート番号は22）。
      
  ３．"SSH Authentication"ダイアログが出てくるので、ユーザ名とパスワードを
      入力して、OKボタンを押下する。
      
  ４．ユーザ認証に成功すれば、サーバ側のプロンプトが出てくる。


●SSH自動ログイン
  以下のコマンドライン・オプションの使用により、SSH1およびSSH2を利用してユーザの
  自動ログインが可能となります。
  
  書式）パスワードおよびkeyboard-interactive認証
     ttermpro.exe ホスト名:22 /ssh [/1|/2] /auth=password /user=ユーザ名 /passwd=パスワード
  書式）公開鍵認証
     ttermpro.exe ホスト名:22 /ssh [/1|/2] /auth=publickey /user=ユーザ名 /passwd=パスワード /keyfile=秘密鍵ファイル

  例）SSH1によるパスワード認証ログイン（ユーザ名 nike パスワード kukuri）
     ttermpro.exe 192.168.1.3:22 /ssh /1 /auth=password /user=nike /passwd=kukuri

  例）SSH2によるパスワード認証ログイン（ユーザ名 nike パスワード kukuri）
     ttermpro.exe 192.168.1.3:22 /ssh /2 /auth=password /user=nike /passwd=kukuri

  例）SSH2による公開鍵認証ログイン（ユーザ名 kitakita パスワード oyaji 28 秘密鍵ファイル d:\tmp\id_rsa）
     ttermpro.exe 192.168.1.3:22 /ssh /2 /auth=publickey /user=kitakita /passwd=oyaji@28 /keyfile=d:\tmp\id_rsa

  ※空白の扱い
    パスワードおよびパスに空白を含める場合、スペース(' ')の代わりにアットマーク('@')を
    使用してください。また、アットマークという文字を使用する場合は、2つ続けて('@@')と
    記述してください。


■TTSSHのビルド方法
  TTSSHのビルド方法について以下に示します。ビルドにはVisual Studio .NET 2003(VC++7.1)、ActivePerlが必要です。
  
  1. ソースコードをSourceForge(http://sourceforge.jp/projects/ttssh2/)からチェックアウトする
  2. zlibのソースコード(http://www.gzip.org/zlib/)を ttssh2\zlib ディレクトリに展開する
  3. OpenSSLのソースコード(http://www.openssl.org/)を ttssh2\openssl ディレクトリに展開する。OpenSSLをビルドする（以下参照）。

      - Build OpenSSL.
            + cd openssl
            + perl Configure VC-WIN32
                (Yes, you need perl to build OpenSSL!)
            + ms\do_ms
            + nmake -f ms\nt.mak
            + cd ..
                (Now you are back in PortForwarder folder.)
        See the instruction in the OpenSSL documentation for details.

  4. ttssh2\ttssh.sln をVisual Studioで開く
  5. ソリューションをビルドする
  6. ビルドに成功するとttssh2\ttxssh ディレクトリにDLLが生成される



■開発環境
  OS: Windows XP Professional
  コンパイラ: Visual Studio .NET 2003
  
  ソフトウェア：
  TeraTerm Pro 2.3
  IPv6 0.81
  TTSSH 1.5.4
  

■著作権
  本プログラムはフリーソフトウェアです。
  TeraTerm Proは寺西高氏の著作物です。
  IPv6版TeraTerm Proは加藤淳也氏の著作物です。
  TTSSHはRobert O'Callahan氏の著作物です。
  TTSSHのSSH2化のコードについては、著作権は平田豊にあります。
  本プログラムは無償で利用できますが、作者は本プログラムの使用にあたり
  生じる障害や問題に対して一切の責任を負いません。

  e-mail : yutakakn@mail.goo.ne.jp
  URL    : http://hp.vector.co.jp/authors/VA013320/
  CVS    : http://sourceforge.jp/projects/ttssh2/
  TeraTerm Pro: http://hp.vector.co.jp/authors/VA002416/
  IPv6版TeraTerm Pro: http://win6.jp/TeraTerm/index.html
  TTSSH original:http://www.zip.com.au/~roca/ttssh.html


■制限事項
  ・パケットの圧縮はサポートしていません
  ・ポートフォワーディングはサポートしていません


■改版履歴

2005.5.?? (Ver 2.14)
  ・秘密鍵ファイルダイアログに3ファイルフィルタを追加した。
  ・zlibのバージョンをバージョン情報に追加した。

2005.4.24 (Ver 2.13)
  ・キー作成ダイアログを追加した（Setup - SSH KeyGenerator）。
  ・OpenSSL 0.9.7gへ差し替えた

2005.4.9 (Ver 2.12)
  ・SSH2チャネルルックアップ機構を追加
  ・キー再作成時にアプリケーションエラーとなるバグを修正（2.10でのデグレード）。
  ・"Duplicate session"においてSSH自動ログインを行うようにした。


2005.3.31 (Ver 2.11)
  ・SSH2認証ダイアログの Use challenge/response to log in にアクセラレータキーを割り当てた。
  ・シリアルポートを開いた状態からAlt-Nで新規接続を開こうとしたとき、フォーカスを当てるようにした。
  ・SSHログファイル(TTSSH.LOG)の採取データを増加した
  ・NetScreen(HITACHI) workaround対応。SSH2_MSG_CHANNEL_REQUEST送信時において、wantconfirmをfalseにした（サーバからのリプライを期待しない）。
  ・OpenSSL 0.9.7fへ差し替えた


2005.3.13 (Ver 2.10)
   ・ttxssh.dllのバージョン情報が古いままだったので修正した。
   ・SSH client ID(SSH-2.0-TTSSH/X.XX Win32)にバージョン情報を含めるようにした。
   ・Tru64 UNIX workaroundを追加。Miguel氏に感謝します。
   ・SSH2 log dump機構を追加した
   ・SSH server IDにCR+LFが含まれていた場合、CRの除去ができていなかったバグを修正。
   ・すでにログイン処理を行っている場合は、SSH2_MSG_SERVICE_REQUESTの送信は行わないようにした。
   ・パスワード認証の前に行うkeyboard-interactiveメソッドで、デフォルト設定値([TTSSH] KeyboardInteractive)を無効(0)にした。OpenSSH 4.0では無効なメソッドを使用するとコネクションが切られてしまうため。また、認証ダイアログのラベル名を設定の有無により変更するようにした。
   ・SSH2（keyboard-interactive認証）接続においてchallenge/response loginに対応した。

2005.2.22 (Ver 1.09)
  ・ドットで始まるディレクトリにあるSSH2秘密鍵ファイルが読み込めない問題へ対処した。
  ・HeartBeat(keep-alive), SSH2 keyboard-interactiveの設定をTTSSHのダイアログ上から行えるようにした。

2005.1.30 (Ver 1.08)
  ・keyboard-interactive認証をサポートした。それにともない、teraterm.ini ファイルのTTSSHセクションの"KeyboardInteractive"エントリを追加した。
  ・バージョンダイアログにホームページのURL・OpenSSLバージョンを追加した。
  ・SSH2認証ダイアログで、rhostsおよびTISがグレーになる前に、Enterキーを押下すると、アプリケーションエラーとなる現象に対処した。
  ・公開鍵認証自動ログインをサポート。/auth=publickey, /keyfileコマンドラインオプションを追加。

2005.1.6 (Ver 1.07)
  ・telnet接続時にターミナルサイズ変更を行うと、アプリケーションエラーとなるバグを修正（1.06でのデグレード）。

2005.1.5 (Ver 1.06)
  ・ターミナルサイズ変更に対応した。
  ・キー再作成時にアプリケーションエラーとなるバグを修正（1.05でのデグレード）。

2004.12.27 (Ver 1.05)
  ・'Auto window close'が無効の場合、切断後の接続ができない問題を修正した。
  ・SSH2 KEX処理のメモリリークを修正した。
  ・SSH2秘密鍵読み込み失敗時のエラーメッセージ出力を強化した。

2004.12.23 (Ver 1.04)
  ・公開鍵認証をサポート

2004.12.18 (Ver 1.03)
  ・パケット受信時におけるHMACチェックを追加
  ・メッセージ認証アルゴリズムに HMAC-MD5 を追加
  ・KEXにおけるRSAおよびDSSのkey verify処理を追加

2004.12.16 (Ver 1.02)
   ・SSH自動ログインにおいて、まれにアプリケーションエラーとなる現象へ対処した。
   ・SSH1接続時の"SECURITY WARNING"ダイアログで、キャンセルするとアプリケーションエラーとなる現象へ対処した。

2004.12.11 (Ver 1.01)
  ・SSHハートビート（キープアライブ）機能を追加した。ハートビート間隔は、 teraterm.ini ファイルのTTSSHセクションの"HeartBeat"エントリで設定可能（デフォルトは60秒）。

2004.12.8 (Ver 1.00)
  ・SSH1/SSH2自動ログインをサポート（password認証のみ）。/auth, /username, /passwdオプションを追加。
  ・SSHのデフォルトバージョンを SSH2 に変更した
  ・接続ダイアログのtab orderを修正した。
  ・接続ダイアログの起動時、ホスト名にフォーカスが当たるようにした。
  ・SSH2自動ログイン・サンプルマクロ(ssh2login.ttl)を同梱した

2004.11.7 (Ver 1.00 beta1)
  ・暗号アルゴリズム AES128 をサポートした
  ・KEXアルゴリズム diffie-hellman-group14-sha1 (OpenSSH 3.9以降)をサポートした
  ・KEXアルゴリズム diffie-hellman-group-exchange-sha1 をサポートした
  ・ホストキーアルゴリズム ssh-dss をサポートした
  ・バージョン情報ダイアログにSSH2情報を出力するようにした
  ・OpenSSL 0.9.7eへ差し替えた
  ・READMEをBoris Maisuradze氏に英文化していただきました。感謝します。

2004.10.25 (Ver 1.00 alpha4)
  ・ウィンドウサイズ制御の不具合を修正した。
  ・データ通信確立後のDH鍵再作成に対応した。
  ・その他細かいバグフィックス

2004.10.17 (Ver 1.00 alpha3)
  ・ウィンドウサイズ制御処理を追加した
  ・コネクションを切断する際、サーバ側へ SSH2_MSG_CHANNEL_CLOSE を送るようにした。
  ・terminal typeが環境変数TERMへ渡されるようにした

2004.10.11 (Ver 1.00 alpha2)
  ・SSH1をサポートした
  ・SSH sessionが切断されるバグ（"Oversized packet received from server"と表示されて、
    コネクションが切れる問題）を修正した
  ・/1, /2 オプションの追加
  ・TERATERM.INI ファイルにSSH protocol versionのエントリを追加した

2004.8.8 (Ver 1.00 alpha1a)
  ・DLLをrelease build版へ差し替えた

2004.8.5 (Ver 1.00 alpha1)
  ・初公開

以上
