TTSSH: An SSH Extension to Teraterm

By Robert O'Callahan (roc+tt@cs.cmu.edu)

Various traffic analysis vulnerabilities have been discovered in the SSH protocol. TTSSH has been modified to provide as much protection as anyone knows how to provide. The modified version is TTSSH 1.5.4.

Many people ask me whether or not TTSSH will support SSH protocol version 2. It does not and it will not. There is an SSH2-capable Teraterm available from Yutaka Hirata. Note that I have not used it and cannot vouch for the code. Putty is also a good free SSH2-capable Windows SSH client.

What TTSSH Is

TTSSH is a free SSH client for Windows. It is implemented as an extension DLL for Teraterm Pro. Teraterm Pro is a superb free terminal emulator/telnet client for Windows, and its source is available. TTSSH adds SSH capabilities to Teraterm Pro without sacrificing any of Teraterm's existing functionality. TTSSH is also free to download and use and its source is available too, with an open source/free software license. Furthermore, TTSSH has been developed entirely in Australia, and can be exported from here to anywhere in the world (apart from places where people aren't allowed to own cryptographic software at all :-( ). There is even some documentation.

To be more precise, the current version of TTSSH (1.5.4) includes the following features:

Note that TTSSH is just an SSH client and does not include any other SSH tools (scp, ssh-keygen, ssh-agent, etc). Furthermore, because it's tied into Teraterm, it's only suitable for interactive use. For non-interactive uses such as interprocess communication, you want a straight port of the Unix client.

What's New

How to Obtain and Install TTSSH

Currently TTSSH is only available for Win32 platforms (Windows 95 and NT). Support for Windows 3.1 is plausible but I don't have the tools to build it. Perhaps someone will be able to help with this. Furthermore, it's only available for Intel platforms. Again, I don't have the tools to compile it anywhere else, and someone else may be able to help.

The following instructions will also serve to update an old version of TTSSH. Just say "yes" whenever it asks to overwrite a file.

  1. Download and install Teraterm Pro 2.3 if you haven't already.
  2. Download the TTSSH software package.
  3. Unzip it into the directory where you've already installed Teraterm 2.3. This will create files LIBEAY32.DLL, TTXSSH.DLL and TTSSH.EXE.
  4. Run "TTSSH.EXE" and the extension should be available. You should see a new "SSH" option in the "New Connection" dialog box and new menu items "Setup / SSH...", "Setup / SSH Authentication..." and "Help / About TTSSH...".
  5. If you have problems, make sure there is a copy of MSVCRT.DLL in your SYSTEM32 directory. The latest build of TTSSH requires this (this was an error in the build process, sorry).

How to Use TTSSH

There is now a TTSSH documentation page.

What the Government Wants You to Know

This code contains cryptographic software covered by US ITAR regulations and by the laws of various countries. Its distribution and use may be restricted by these laws and regulations. In particular, it is probably illegal to make the binary code publically available at a US site.

What I Want You to Know

All the usual free software legalese applies. There are no warranties of any kind. The software is provided entirely "as is", and use is entirely at the discretion and risk of the user. Enjoy!

Who to Thank

What to Do About Bugs

TTSSH has been tested in Windows 95 and NT 4.0. Mileage with other platforms may vary, but I'm interested in getting bug reports. However, please only send me bug reports for the latest version of TTSSH!

Bugs fixed in version 1.5.1 over 1.4:

Known bugs:

What the Terms and Conditions Are

You can download and use TTSSH for absolutely free. If you want to redistribute it, that should be fine, but check the README.TXT file included in the package. Note that the terms for the source package are a bit looser, so if you build your own version of TTSSH then you have even more rights.

Robert O'Callahan