PenguiNet is a Microsoft Windows Secure Shell (SSH) and Telnet client that was developed by Silicon Circus. Since PenguiNet is a terminal emulator, you’ve probably guessed that it has full VT100 and VT102 support. However, PenguiNet also has some other nice features, such as the ability to act as a Linux terminal emulator (including color support). PenguiNet was also designed with security in mind. It supports Secure Shell Connections (SSC1 and SSC2), as well as secure file transfers via the SCP (Secure Copy) protocol. In this Daily Feature, I’ll discuss some of the PenguiNet features that IT pros will find useful.

Install PenguiNet 2.01
To begin the installation, you must first download the PenguiNet software. Once you’ve downloaded the 1.7 MB executable Setup file, run the Setup program to begin the installation process. The Setup wizard asks you typical questions, such as whether or not you accept the end user license agreement and where you want to install the program files.

Once Setup completes, the PenguiNet program should launch automatically. If the program doesn’t start automatically, you can access it from the Start | All Programs | PenguiNet menu.

Configure PenguiNet 2.01
When PenguiNet initially opens, you’re taken to a completely blank terminal screen with a menu bar on top. Before you’ll be able to connect to a host, you must configure PenguiNet with some session information. You can find most of the configuration options by selecting the Profile command on the Connect menu. The Profile command allows you to create a profile that you can use each time you attach to a given host. If you need to connect to a host for a single session, you can use the Quick option on the Connect menu to enter a few startup parameters and get online quickly.

Upon selecting the Profile command, you’ll see the screen shown in Figure A. Notice on the left side of the figure that there’s a large pane with the word Default in it. This means that any configuration options that you fill in will become a part of the default profile. This is fine if you normally only connect to a single host. However, if you routinely connect to multiple hosts, you’ll probably want to create a profile with a more descriptive name. You can use the Add button to create additional profiles. You can then select the newly created profile and configure its parameters. Once you’ve configured a profile, the Connect button in the bottom left corner of the screen will be activated. Simply select a profile and click the Connect button to attach to the host.

Figure A
The Profiles command lets you create profiles for connecting to different hosts.

Login tab
On the right side of the Profiles screen, you’ll notice that there are several tabs, and that the Login tab is selected by default. In Figure A, the Profile Name field on the Login tab is grayed out. This is because the Profile Name field is informational only. The displayed name corresponds to the profile that’s selected in the pane on the left. The field only exists so that you can verify that you’re editing the correct profile.

The next field is the Host field. What you fill in here depends on the type of host you’re connecting to. Typically, the Host field would contain either a host name or an IP address.

Next, you must select the connection protocol that you want to use from the Protocol drop-down list. Your choices are Telnet, SSH, and SCP.

Beneath the Protocol field is the Port field. The Port field is updated automatically, based on the protocol you’ve selected. Normally, Telnet sessions use port number 23, while SSH and SCP use port 22. However, if your firewall requires the protocols to pass through different port numbers, you can manually enter the appropriate values.

The next step in the configuration process is selecting the terminal type. Your choices are Linux and VT100. After selecting the terminal type, enter the user name and the password that you’ll use for the session with the host. Finally, the Login tab contains a Confirm On Connection check box that you can select to generate a confirmation message when a connection is established.

SSH tab
The next tab is the SSH tab. The various configuration portions on this tab are only accessible if you’ve chosen SSH as your protocol on the Login tab. You can see an example of the SSH tab in Figure B.

Figure B
The SSH tab allows you to configure the SSH protocol.

This tab begins by asking you for the SSH version. The default choice is automatic detection of the SSH version, but you can force the use of either SSH 1 or SSH 2. Next, you can select the SSH compression level. The default choice is Level 6. You can choose from anywhere between Level 0, which represents no compression, to Level 9, which delivers the maximum compression but the slowest performance.

Next you must select the authorization type. The default choice is password-based authorization. However, you can also enable authorization via a public/private key pair. If you select the public/private key pair option, the SSH1 Key Pair and the SSH 2 Key Pair fields will become available to you, and you can fill in the necessary keys.

You may have noticed the Port Forwarding button in Figure B. If you click this button, it opens the SSH Port Forwarding dialog box. This option is useful in situations in which it’s impossible to attach directly to the host, or in which the host uses a different port number than the one you’re using.

Appearance tab
The Appearance tab lets you adjust the cosmetics of the session. The main thing that you’d probably want to adjust on this tab is the font. By default, the session is configured to use a Linux font that’s difficult to read, in my opinion.

The Appearance tab also allows you to select an alternate color scheme and create a custom title for the terminal window. You even have the options of enabling an input bar and a blinking cursor. While these options may sound trivial, they’re actually helpful.  Coming from a PC background, I was always frustrated that the terminal I used as a mainframe programmer in the early 1990s had no visible cursor.

The final option on the Appearance tab sets the initial terminal window size. The options are the default size, a full screen, or a window that displays a specific number of characters (80 x 25 by default).

Sound tab
The Sound tab simply allows you to enable or disable the terminal bell. If the terminal bell is enabled (the default choice), you can assign it the Windows default beep or a custom sound.

Options tab
Finally, the Options tab contains a few miscellaneous options you might want to consider before using PenguiNet. For example, you can choose to connect the session as soon as PenguiNet starts, or you can disable the connection completely. Other options on this tab include disabling the use of SOCKS servers, Nagle algorithms, and Keep Alives.

The one unique feature of the Options tab is the Keyboard button. Anyone who has ever worked on a terminal knows that terminal keyboards don’t function like PC keyboards. Therefore, you can use a few check boxes on the Keyboard dialog box to customize the behavior of your keyboard. For example, you can translate backspace to delete, translate delete to backspace, and use the keypad for PF1 to PF4.

PenguiNet comes with a free 30-day trial period, after which you must purchase a keyfile to continue using the program.