Console Access Server
Marcio Saito, Director of Technology-Revision 5.0- Mar/01
About this document
The demand for console management equipment is on the rise as a consequence of the increasing use of clusters and server farms to reach the processing capacity required by Internet and corporate applications.
This document discusses console port management (out-of-band management of servers and network equipment through their serial console ports) and provides information for intelligent product selection, solution design and implementation.
The information herein is result of our own experience and the contribution from many customers (too many to list) and is being constantly revised. Any feedback or contribution is very welcome and should be sent to marcio@cyclades.com.
Another reason to use a CAS is the need to access the console ports remotely. A console management solution should enable console access from anywhere, anytime, locally through the LAN or remotely through the Internet or dialup connections.
A Console Access Server has multiple RS-232 serial lines for connection to the console ports and at least one Ethernet LAN port for connection to the network. It provides connectivity so that access is easy, fast and convenient and security so that intruders are kept out.
With more mission critical applications being implemented on server farms rather than on a single large mainframe, Console Access Servers become indispensable elements in any large computer installation.
Generic Terminal Servers
Terminal Servers were used to connect serial terminals to Unix Systems. Some of those products have incorporated software features to adapt to the Console Access function. They usually come with strong Internet connectivity and security functions, but lack specific console features (convenient cabling, high port density, visual indication of the status of the ports, specific HW to prevent
unintended breaks, etc.). The Cyclades-PR3000/TS, Lantronix, Portmaster 2, Xyplex, Cisco 2511 are examples of generic terminal servers that can be used as console access servers.
PC-based Terminal Servers
With the availability of PC hardware and Open Source operating systems such as Linux and FreeBSD, building a terminal server by installing a multi-port serial board in a PC becomes a viable proposition for some users. These solutions are weak in port density and integration, but present potential advantages in scalability and flexibility to accommodate specific needs.
Charts with objective comparison between products available in the market are available at our WEB site.
Cabling, rack space and physical location
The CAS is attached to the LAN using standard cabling to an Ethernet hub or switch.
The serial ports are connected to consoles with RS-232 cross-cables. Because console baud rates are usually low, the serial cables can be as long as a few hundred feet. Frequently the cabling run through patch panels and the rack cable management systems.
For solutions based on the TS1000 or TS2000, the LAN connection can be either 10BT or 100BT (Fast Ethernet). The unit is all integrated in a single box with 1U of height and built-in power supply. Besides the network interfaces, the only external cables are the power cord and the CAS own console port.
For server-based solution using the Cyclades-Z, besides the external PC connections (power, LAN, etc), there will be a 1U box per each 16 ports, with the boxes interconnected in a chain by SCSI-II type cabling.
If you are also installing a modem to allow emergency remote dialup connections, the modem should be connected to one of the RS-232 ports in the CAS through an RS-232 straight-through cable.
A cross-cable is connects two DTE devices (computers, terminals) crossing data lines and control signals between the two ports (Tx connected to Rx, DTR to DCD and DSR, RTS to CTS). A straight-through cable connects a DTE device to a DCE device (modem). It connects all RS-232 signals in a one-to-one basis.
RS-232 serial interfaces on both the CAS and the console port sides can be provided on different connectors. Cables must be built accordingly.
The most common connectors are RJ-45 (TS1000, TS2000, Cyclades-Z, most networking equipment, newest servers), DB-25 (modems and older equipment), and DB-9 (most servers and PCs). DB-25 and DB-9 connectors have standard pin-out assignments, so it is relatively easy to build or order pre-made cables from a computer store.
RJ-45 is the connector type favored by CAS because they are compact and compatible with patch panels used in data centers. Unfortunately there is no standard pin-outs for RS-232 on RJ-45 connectors and each vendor uses a different pin assignment.
If you look at a DB-25 or DB-9 male connector, there are two rows of pins. The one in the upper-left corner is pin 1. The one in the bottom-right corner is pin 25 (on a DB-25) or pin 9 (on a DB-9).If you look at a RJ-45 plug with the contact pins facing down, the 8 pins are numbered from left to right.
DB-25 standard pin-outs are 1-chassis, 2-Tx, 3-Rx, 4-RTS, 5-CTS, 6-DSR, 7-Gnd, 8-DCD, 20-DTR.
DB-9 standard pin-outs are 1-DCD, 2-RxD, 3-TxD, 4-DTR, 5-Gnd, 6-DSR, 7-RTS, 8-CTS.
Cyclades RJ-45 pin-outs (there is no standard) are 1-RTS, 2-DTR, 3-TxD, 4-Gnd, 5-CTS, 6-RxD, 7-DCD, 8-DSR.
More detailed information on cabling, including specific cable diagrams for console access applications can be found at the technical support and Techtalk sessions of the Cyclades WEB site.
Security and Connectivity
Anyone who gains access to the console port of servers and routers can potentially take control of the entire network. A CAS should have all the connectivity features to allow the system administrator to access the console ports from the LAN, a dialup connection or over the Internet, but must also have the security features to keep intruders out.
Packet and Service Filtering is a networking feature (frequently absent in older CAS designs) that allows the system administrator to set access policies and selectively allow or deny connections based on source address, destination address, port number, protocol type and other parameters.
Socket Authentication is important to validate privileges of users trying to access a console port. The authentication requires passwords that can be checked against a local database or RADIUS server. Some terminal servers support RADIUS authentication on serial-to-network access but lack authentication support in the network-to-serial accesses.
Secure Shell (SSH). In a regular telnet connection, the session screens and keystrokes (including the authentication process) travel the network in clear text form. When there is the risk of data interception in transit (as it is the case over the Internet), the user should give preference to SSH, which encrypts data before sending it through the network.
Dialup Security. If the CAS is to be accessed remotely through dialup connections, the same security features mentioned above should be supported over dialup lines. Also, additional dialup-related security protocols such as PAP and CHAP should be supported.
Not all security features are needed in every configuration. When setting a CAS, make sure it is not only functional, but also secure considering the profile of your environment.
The TS1000/TS2000 products support all the features mentioned above, offering excellent level of security. In a server-based solution based on the Cyclades-Z, the OS should be configured properly so that it is equally secure.
Sending Break signals
Some servers (Sun/Solaris, for example) switch to monitor upon the reception of a "Break" on the console port. This useful feature allows the system administrator to reset/reboot/reconfigure the server in the event of a system lockup.
What is a break?
An RS-232 line has 2 states: "0" (-12V) and "1" (+12V). Sending a "break" means keeping the line in the "1" state for more than one character time (usually a couple hundred milliseconds).
What is the "break problem"?
A potential undesirable side effect of this useful feature is the possibility of unintentionally stopping the operation of the server by generating false breaks on the serial line. This affects only servers that use the break signal to switch to monitor mode.
When a system is powered off, it cannot control the state of its serial lines. Depending on the electrical characteristics of the circuit composed by cables and serial ports, there may be voltage fluctuations on the serial lines that could be interpreted by the other side as "break".
The consequence is that, given the right conditions (or wrong conditions, for that matter), power cycling the CAS could cause servers connected to it to see a "break" on the console port (and you would have an entire server farm down). Notice that the CAS doesnÕt intentionally send breaks, but the console ports see them as a result of random electrical
fluctuation.
Because this phenomenon depends also on factors external to the CAS, nobody cannot absolutely guarantee that it wonÕt ever happen in your environment. But the electrical design of the box can make the break problem a certainty or a very rare event.
The TS1000/TS2000 and Cyclades-Z products use low-noise line drivers and the serial interfaces are specifically designed to prevent this from happening. In addition, the TS1000/TS2000 have a special power circuitry that prevents random power fluctuation during power-on/off, virtually eliminating the possibility of unintentional breaks.
What is the best way to avoid this problem?
If you have a current Sun server (Solaris OS released after 11/99 or previous version with patch 107589-03, available in the Sun support site) and you use a unintentional break prone CAS, the problem can be avoided through configuration. Edit the file (/etc/default/kbd) to select a specific sequence of ASCII characters (less likely to be accidentally generated) to "switch to monitor
mode" or simply disable the feature.
What if I cannot avoid the problem by software?
If you cannot or donÕt want to disable the reset on break feature in your server and the problem happens with your CAS and environment, the solution would be replacing the CAS with a break-safe product. Before that, you can try other solutions customers have reportedly used with some degree of success (but we at Cyclades have never tested ourselves):
• Change the electrical characteristics of the circuit by changing cable configuration or inserting inexpensive "RS-232 light-boxes" in the circuit.
• Insert "pull-down" resistors (4.7K Ohm) between the Rx line and Gnd (console port side) to prevent voltage fluctuations when the CAS is powered off. The resistors can be easily installed inside RJ-45 to DB-25 adapters in RJ-45 cabling systems.
What if I want to send intentional breaks?
If you want to be able to send break signals, you will need a CAS that supports telnet extensions (described in the RFC 2217, 854). In this case, make sure your telnet client is able to send break using the telnet extensions.
The TS1000/TS2000 CAS are unlikely to allow the generation of unintentional break signals and can intentionally generate breaks through RFC 2217 commands.
As mentioned above, if you want to be capable to remotely switch a Sun server to monitor mode, we recommend you to edit /etc/kbd and select a specific sequence of ASCII characters that are less likely to be generated by accident and easier to be generated intentionally.
Comments or suggestions to this document can be sent to Marcio Saito marcio@cyclades.com
The information in this document is the result of our own experience and the contribution of many Cyclades customers (too many to list). If you use this document and later find some information that would be useful to others, please let us know about it.