10.4. Windows Remote-Login Tools
If Windows systems are to interact with Linux systems via text-mode tools, you must locate matching Windows clients to Linux servers or locate Windows servers for Linux clients. The first task is considerably easier and likely to be more productive than the second; although text-mode Windows login servers do exist, they aren't nearly as useful as Linux remote text-mode login servers because Windows was never designed with this sort of operation in mind.
10.4.1. Locating Client Software
Windows client software for both Telnet and SSH protocols is fairly easy to find. In fact, all versions of Windows that support TCP/IP networking ship with a Telnet client. Type TELNET in a DOS prompt window or select the Telnet item from the Start menu to launch this client.
If you're not satisfied with the features of the standard Windows Telnet server or if you want to use SSH to access your Linux system, you'll need to look elsewhere. One excellent resource is the Free SSH web site's Windows page, http://freessh.org/windows.html, which lists Windows SSH clients and servers, of both the free and the pay variety. Many of these SSH clients can also handle Telnet and other protocols, so they're well worth investigating.
As an example of a Windows text-mode login client, consider PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). This program can handle rlogin, Telnet, and SSH protocols. When you first launch it, you'll see a PuTTY Configuration dialog box, as shown in Figure 10-1. To open a basic SSH session, type the hostname or IP address of the server in the Host Name (or IP Address) field, check that the Protocol item is set to SSH, and then click Open. The first time you connect, the system will notify you that the server's host key is not cached. This is normal for an initial connection, so click Yes to accept the key. The system will then prompt you for a username and password in the access window and, if you enter them correctly, you'll be in and able to use the remote system.
Figure 10-1. PuTTY enables you to specify many options for your remote login sessions
For more advanced uses, you can adjust various options by clicking their categories in the list in the Category field of the PuTTY Configuration dialog box. If you regularly use particular settings (including connections to specific servers), you can make the adjustments you want, type a session name in the Saved Sessions field, and click Save to save your settings. Thereafter, double-clicking on the session name launches a session with those settings.
10.4.2. Windows Telnet and SSH Servers
Windows, unlike Linux, was not designed with remote text-mode use in mind. Although Windows has DOSa text-mode OSin its history, Windows simply never embraced the notion of remote text-mode access in the way Linux has. Furthermore, Windows is tied more tightly to its GUI for both common user programs and system administration than is Linux, so using it from a text-mode login will tie your hands in terms of the tasks you can accomplish.
These caveats aside, remote text-mode access tools for Windows are available. Because these tools are of limited utility, I don't describe them in great detail, but they do deserve a few pointers. A few of the available servers include:
As noted earlier, the Free SSH site's Windows page (http://freessh.org/windows.html) provides pointers to Windows SSH servers as well as SSH clients, so you can consult it for links to more servers. As a general rule, the free offerings are scarce, but several commercial products are available.
One of the difficulties in using a text-mode Windows remote-access tool manifests itself when you try to run programs that move the cursor around the screen in an arbitrary way, such as text editors. Under Linux, a set of libraries between programs and the screen display handle the translation for any number of display typesa text-mode console, an xterm window, a remote Telnet session, and so on. (In fact, some Windows Telnet and SSH clients provide options that influence how they interact with these libraries by changing their terminal emulation mode, which can improve their ability to handle features such as colored text.) Windows lacks these libraries, so the remote-access server must either implement these translations themselves or ignore the issue. The former is a difficult task, so many servers ignore the issue. The result is an inability to run text-mode programs that do more than display text in a simple linear fashion. For instance, typing EDIT in an OpenSSH for Windows session effectively hangs the session.
Despite these limitations, text-mode login tools for Windows can be handy in some situations; you can run simple tools and scripts that don't rely on GUI components or the more advanced text-mode features. If you have a specific use in mind for the access, you might be able to track down or write a program to do a job, thus saving considerable bandwidth (and, hence, time) that might otherwise be required to use a GUI login tool. You can also use an SSH server as a way to establish encrypted connections to other servers running on the Windows machine, by using SSH's port-forwarding capabilities.