Windows to UNIX Connectivity


The primary interface from Windows-based systems to UNIX systems was traditionally a command-line shell accessed by using a terminal or terminal emulator. (For more detailed information, see Chapter 2, Windows and UNIX Compared. ) Modern terminal access to UNIX systems is either from the command line or from a graphical user interface (GUI).

  • Command-line access tools include telnet, Berkeley r access commands ( rsh , rexec , rcp ), and secure shell ( ssh ).

    • The telnet client allows the user to operate in the multi-user environment provided by the host, with access provided by the telnet server.

    • The rsh command allows the user to run commands remotely from a local environment.

  • The GUI access tool is X Windows.

    • An X Windows server provides a graphical interface to local or remote applications.

Developers and users of UNIX applications typically use one or more of these access methods . The access method used affects both the migration strategy and the migration process itself. While migrating applications, developers need access to the UNIX development servers from their Windows desktops. Even during a rewrite to Win32, which replaces the UNIX environment permanently, developers must have access to the UNIX environment.

Developers need access for operations such as:

  • Running the UNIX application to check the original functionality.

  • Referring to UNIX code, the build configuration, or management scripts.

  • Migrating any missing portions of code or scripts.

Users require UNIX connectivity when the migrated application continues to use UNIX-style interfaces, such as in some migrations to the Interix environment.

The Windows operating system includes a basic telnet client and supports the rsh , rexec , and rcp client commands.

With an X Windows server on the desktop, developers can also use a GUI to connect to UNIX applications. Windows operating systems do not provide X Windows. For X Windows connectivity, developers need a third-party X Windows server.

The following sections describe the main connectivity solutions available.

Note  

In X Windows terminology, server refers to the software running on the user s desktop that provides the user interface, and client is the application running on the UNIX server.

Terminal Emulation and Command-Line Connectivity

UNIX developers use the tools described in this section to access UNIX development servers from the command line. If the UNIX application has a command-line interface, these tools are also helpful to users.

Windows Telnet Client

The Windows telnet client provides basic command-line access to UNIX systems. Its command syntax is identical to that of the telnet clients found on UNIX operating systems. The Windows telnet client runs in a window. Users can cut and paste text between the UNIX command line and Windows-based applications. Users run the client from the command prompt or by using Run on the Start menu.

The Microsoft HyperTerminal application also includes a telnet client. HyperTerminal offers more configuration options than the command-line telnet client. Terminal types for the client range from ANSI to VT52 to VT100. It is straightforward to cut and paste text between HyperTerminal and Windows-based applications.

A third-party telnet client may be required for command-line tools that use terminal characteristics beyond those provided by HyperTerminal, such as function keys or full-screen operation.

Windows Telnet Server

Developers who need to connect from UNIX to Windows-based servers can install the telnet server included in the Windows server operating systems.

– To connect from UNIX to a Windows-based server

  1. Use the tlntadmn command to modify the NTLM authentication registry option. You need to change the default value from 2 to 1 as follows :

    1. Run the tlntadmn command utility.

    2. Choose option 3 to configure registry settings.

    3. Choose option 7 for NTLM settings.

    4. Change the value to 2 .

    5. Exit the utility.

  2. Start the server by typing net start tlntsvr .

Note  

Standard telnet is inherently insecure in that passwords are transmitted over the network in clear text. Some UNIX telnet servers and clients make use of Kerberos authentication, and the Windows client and servers can use NT authentication for added security. If the application to be migrated makes use of standard telnet, consider migrating it to the more secure Windows version of telnet.

Remote Shell (rsh), Remote Copy (rcp), and Remote Execute (rexec)

Using the Berkeley r commands for remote access into UNIX servers simplifies access. Authentication occurs only once on the logon UNIX system, and then a user does not need to log on again to connect to other systems.

Because of this, it is easy to run remote shells ( rsh ) and remote commands ( rexec ) and to copy files between remote machines ( rcp ).

The remote clients are included in Windows. The syntax for the Windows commands is:

 rsh [Host] [-l UserName] [-n] [Command] rcp [{-a  -b}] [-h] [-r] [Host][.User:] [Source] [Host][.User:] [Path\Destination] rexec [Host] [-l UserName] [-n] [Command] 

On Windows-based clients, the UserName parameter is required if user names on UNIX and Windows are different.

The Windows 2000 Resource Kit includes an rsh tool, Rshsvc.exe.

Note  

Authentication for Berkeley r commands is based on the existence of a valid client host and username combination as command parameters. Because this information is revealed, these commands can present a security risk. For this reason, the commands are often disabled and replaced by the ssh command, as described in the following subsections.

Secure Shell (ssh)

The secure shell provides extra authentication and encryption features. It is often used to replace Telnet and the Berkeley r commands where security is an issue. The ssh command functionality is similar to the rsh command, except that ssh can be made very secure (client and user information is not revealed to third parties).

Windows operating systems do not include a secure shell client or server. However, third-party products do provide ssh functionality.

Windows

Users who require GUI access to a UNIX server from the Windows-based desktop normally use an X Windows server. Remote desktop management services are provided by Windows Terminal Services (and its corresponding implementations on UNIX and Linux).

X Windows

Windows operating systems do not include an X Windows server. However, the Interix environment does include X Windows clients, which can be used to develop applications that use an X Windows user interface.

Third-party products that provide Windows-based X Windows servers are well integrated with the Windows desktop. Users of the third-party products can cut and paste text graphics between X Windows and Windows. Third-party Windows-based X Windows servers include:

  • Hummingbird Exceed. For more information, see the Hummingbird Web site at http://www.hummingbird.com.

  • MKS Toolkit. For more information, see the MKS Web site at http://www.mks.com .

  • WRQ Reflection(r) X. For more information, see the WRQ Web site at http://www.wrq.com .

These products provide support for most X Windows standards. Each product also includes extras. For example, MKS Toolkit also includes more than 300 UNIX commands that can be used within Windows.

Remote Desktops

Windows operating systems handle multiple users in a different way than UNIX does. A single user at a time logs onto a Windows-based computer. However, using Windows 2000 Terminal Services is analogous to using X Windows on UNIX. By using Terminal Services, a Windows-based server can provide a desktop to remote users on clients spread over a network. This is often referred to as thin client because the client only has to handle input and output whereas the application runs on the server.

For UNIX to Windows connectivity, UNIX and Linux implement the RDP protocol used by Terminal Services. (At the time of writing, these products are new. It has not been determined whether they are appropriate for a commercial environment.)

To connect a remote desktop from a UNIX client to a Windows-based server, implement Citrix MetaFrame. Citrix MetaFrame has clients for a wide range of operating systems, including UNIX and Linux. (For more information about Citrix MetaFrame, see the Citrix Web site at http://www.citrix.com/products/ .) An X Windows interface to UNIX is required.




UNIX Application Migration Guide
Unix Application Migration Guide (Patterns & Practices)
ISBN: 0735618380
EAN: 2147483647
Year: 2003
Pages: 134

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net