TelnetServer Features

Pragma Telnet Server is a full-featured telnet server with these highlights:

Advanced Console Support

Allows history scroll back with the ability to run console application. Advanced Console screen mode is a combination of Pragma’s unique Stream mode and Full Console support.

Application Wrap

Application Wrap enables character or console based programs that have difficulty running in a telnet or terminal session to run on Windows.

Active-Directory Support

Microsoft Windows Active-Directory support, including native mode.

NTLM Authentication

NTLM, Windows NT LAN Manager, is Windows challenge/response authentication protocol for network access. The interactive user credentials are passed using an encrypted certificate calculation that proves the identity of the client to the server.

Session Reconnect

Reconnect to an orphaned session matched by username and client IP address.

Printing Support

Pragma Telnet Server supports printing across a telnet session to a printer connected to a telnet client or terminal. This allows telnet session print jobs to be sent back through to the telnet client. Very useful for point-of-sale (POS) systems. The user prints with their application and the job will be sent back to the client and can then be routed to the local printer or any other printer accessible by the telnet client application.

AutomaticSystem BeepPass Through

Any system beep run inside a Fortress SSH session will automatically pass to the client, causing the client to beep. A console beep can be sent to the client by turning off the ENABLE_PROCESSED_OUTPUT for the console.

Sample code in C:

GetConsoleMode( hOutput, &Mode );
Mode &= ~ENABLE_PROCESSED_OUTPUT;
SetConsoleMode( hOutput, Mode );

Secured (Encrypted) Login

There are 2 choices for logon security:

1.) Plain/Clear Text, which is the Telnet standard.

2.) Pragma Systems proprietary encryption - when used with our console telnet client.

Encrypted Sessions

Encrypted sessions, using Microsoft’s Crypto system built within Windows. It uses RSA industry standard 40-bit or 128-bit encryption algorithms for the tightest security available.

See Encrypted Sessions for more information.

NET USE Cleanup

When a user ends the telnet session, Pragma Telnet Server will automatically disconnect any network drives that were connected during the telnet session. This is a configurable option, see NET USE Cleanup for more information.

Multiple User Configuration

Most of the telnet session configurations can be specified on a per-user basis. As a possible security option, only configured users can be given access to the server.

Group Access Management and Configuration

Specify that only users of specific Windows groups be allowed telnet access. Session configuration can be assigned based on the group.

IP Address Filtering

Deny or Grant access to any configured InetD service by the client IP Address.

Session Monitoring

This option opens a console window on the server for each telnet session so that an administrator can actually see what is going on in each telnet session. See Monitor Sessions for more information.

Auto Logon option

This option allows users to automatically log in to the server. See Auto Logon for more information.

Graceful Termination of Applications

Specify how open processes started by the telnet session should be handled when the telnet session is dropped.

Service Logon

Give user information for any configured InetD service to launch a service as a specific user.

User Defined Command Shell

Customizable login-shell allowing UNIX-like shell or custom applications to be run when a telnet clients logs on. Initial directory set to the user’s home directory (if specified).

User Defined Login Script

A shell initializing program and/or login script can be run to setup the user’s environment. 

User Environment Variables

Specify environment variables to be set up in the telnet session.

Console Subsystem Support

Integration with console subsystem to provide telnet users with easy command shell features, with up-arrow for last command, command editing, and function key support. This makes the remote user's telnet session act as if they are typing the commands to a local command shell or program.

Console Application Support

Can run any console mode or text-mode program that can be run on Windows, including 16-bit DOS applications. Examples are EDIT, VI, EMACS, DEBUG, TREE, DIR, NETSTAT, NET, COMPILER, LINKER, FTP, and LYNX.

Multi-user support

Multiple users can log in simultaneously.

Session Limit per User

The number of sessions for a single user can be limited.

Dynamic Character Mapping

Pragma Telnet Server supports user defined character maps. This will improve the look of any session from any terminal, by assigning a new value to a character that is represented undesirably. See Dynamic Character Mapping for more information.

Session Logging

Pragma Telnet Server supports logging user sessions to a file. A text or HTML format file can be saved, to be viewed at another time. This will track user logon, logoff and all typing done by remote user. See Logging Options for more information.

Optimized Screen Scraper Procedure

Improved full console screen handling. Increases speed of screen redraws and allows client size changes during a session. See Full Console Settings for more information.

User Defined Packet Size

Users may specify the largest packet size sent to the client. This optimizes the data transfer rate for connections on Modems to a T-1. See Full Console Settings for more information.

Slow Connection

There is an option for slow clients, like hand held clients, or slow connections. This will reduce redraw problems due to information being lost by slow clients. See Full Console Settings for more information.

Server Heartbeat

A server heartbeat can be sent to monitor sessions that may have terminated abnormally, without notification to the server. This option is very useful in situations where the client computer loses power and the connection is lost. In this situation Winsock does not always recognize the connection as lost and therefore the server believes the connection is still good. See General Settings for more information.

GUIStart Application

Included with Pragma Telnet Server is a program to launch GUI applications on the server, without setting the “Interact with Desktop” setting for InetD service. Ideal for remote execution of programs to be used by someone on the server.

Pragma Session Manager

Pragma Session Manager is a connection-oriented application to manage server connections. Information is refreshed automatically as soon as a telnet session is established with the server.  This can be used to logoff users from the server or any remote machine.

Error Message Handling

Both in the Event Log and also error messages displayed to the user. 

Environment variables

PRAGMASYS_TELNETD_PID identifies the process id of the telnetd.exe of the current session.

PRAGMASYS_MODE identifies the session screen mode of the current session (Advanced Console/Full Console/Stream/Full Stream). PRAGMASYS_MODE also identifies the authentication type (Password/NTLM).

PRAGMASYS_REMOTE_ADDR identifies the IP address of the client machine.

PRAGMASYS_CHARMAP identifies the character map type. Default character map type is vtxxx.

PRAGMASYS_INETD_PID identifies the process id for the InetD service.

PRAGMASYS_INETD_SOCK identifies the socket handle for the current session.

CRTERM identifies client negotiated terminal type. 

Created Named Mutex Semaphores

These are for blocking TelnetServer socket I/O and can be used by developers writing code to run in a telnet session and need full control of the TCP/IP socket. The semaphores have the following names, with the XXX replaced with the PRAGMASYS_TELNETD_PID environment variable for the current session.

Input/ Reading Semaphore

TelnetDInputXXXMutex

Output/Writing Semaphore

TelnetDOutputXXXMutex

One of the installation components is Programming Examples, which includes source code that gives an example of how to use the named mutex semaphores. If this component was not chosen at installation, the install may be run again, with just the Programming Examples component chosen. The examples are also included in readable format on the TelnetServer CD, in the Examples directory.

See Programming for Telnet Sessions for more information.

Color Support

Full ANSI color support.

Gray Scale Support

4 level gray scale support for monochrome terminals.

Reverse Video

Enable the User Shell to run in reverse video, dark foreground on light background.

PC Keyboard Support

Support for PC keys such as PAGEUP, PAGEDOWN, INSERT, DELETE and others.

Multiple Terminal Emulation

ANSI, Digital VT100, VT220, VT320, VT420, and WYSE terminal support – Dynamic character mapping using the charmap.ini file

Complete support of Internet RFC 854, RFC 855, RFC 856, RFC 857, RFC 858, RFC 859, RFC 1184

Pragma Telnet Server follows the standard TELNET protocol specifications, preventing conflicts with any telnet client that also follows the standards. Pragma Telnet Server does include some proprietary protocol, when used with Pragma's Console Telnet Client.

See Appendix C

Windows User Authentication

Integration with Windows’ native security to allow user logon authentication via Windows' user account database.

Variable Screen Size Support

Support for screens larger or smaller than 80x24. Pragma Telnet Server can support any console window size, depending on the resolution of the server. The maximum would be the server maximum window size, not buffer size. The maximum window size is the largest console window that can be opened without a right scroll bar.

Control C support

Control-C to abort a running program.