draft-ietf-secsh-break-00.txt   draft-ietf-secsh-break-01.txt 
Secure Shell Working Group J. Galbraith Secure Shell Working Group J. Galbraith
Internet-Draft VanDyke Software Internet-Draft VanDyke Software
Expires: September 17, 2003 P. Remaker Expires: February 17, 2004 P. Remaker
Cisco Systems, Inc Cisco Systems, Inc
March 19, 2003 August 19, 2003
Session Channel Break Extension Session Channel Break Extension
draft-ietf-secsh-break-00.txt draft-ietf-secsh-break-01.txt
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that other Task Force (IETF), its areas, and its working groups. Note that other
groups may also distribute working documents as Internet-Drafts. groups may also distribute working documents as Internet-Drafts.
skipping to change at page 1, line 32 skipping to change at page 1, line 32
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at http:// The list of current Internet-Drafts can be accessed at http://
www.ietf.org/ietf/1id-abstracts.txt. www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on September 17, 2003. This Internet-Draft will expire on February 17, 2004.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2003). All Rights Reserved. Copyright (C) The Internet Society (2003). All Rights Reserved.
Abstract Abstract
The Break Extension provides a way to send a break signal during a The Session Channel Break Extension provides a means to send a BREAK
SSH terminal session. signal [2] over an SSH terminal session [5].
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. The Break Request . . . . . . . . . . . . . . . . . . . . . . . 4 2. The Break Request . . . . . . . . . . . . . . . . . . . . . . . 4
References . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3. Security Considerations . . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 5 Normative References . . . . . . . . . . . . . . . . . . . . . . 7
Intellectual Property and Copyright Statements . . . . . . . . . 6 Informative References . . . . . . . . . . . . . . . . . . . . . 8
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8
Intellectual Property and Copyright Statements . . . . . . . . . 9
1. Introduction 1. Introduction
The SSH session channel provides a mechanism for the client-user to The SSH session channel provides a mechanism for the client-user to
interactively enter commands and receive output from a remote host interactively enter commands and receive output from a remote host
while taking advantage of the SSH transport's privacy and integrity while taking advantage of the SSH transport's privacy and integrity
features. features. SSH is increasingly being used to replace telnet for
terminal access applications.
A common application of the telnet protocol is the "Console Server" A common application of the telnet protocol is the "Console Server"
whereby a telnet NVT can be connected to a physical RS-232/V.24 [2] whereby a telnet NVT can be connected to a physical RS-232/V.24
asynchronous port, allowing the telnet NVT to appear as a locally asynchronous port, making the telnet NVT appear as a locally attached
attached terminal to that port, and allowing that port to appear as a terminal to that port, and making that physical port appear as a
network addressable device. A number of major computer equipment network addressable device. A number of major computer equipment
vendors provide high level administrative functions through an vendors provide high level administrative functions through an
asynchronous serial port and generally expect the attached terminal asynchronous serial port and generally expect the attached terminal
to be capable of send a BREAK signal, which is defined as the TxD to be capable of send a BREAK signal.
signal being held in a SPACE state for a time greater than a whole
character time, typically interpreted as 250 to 500 ms.
The telnet protocolprovides a means to send a "BREAK" signal, which A BREAK signal is defined as the TxD signal being held in a SPACE
is defined as a "a signal outside the USASCII set which is currently ("0") state for a time greater than a whole character time. In
given local meaning within many systems." [1] Console Server vendors practice, a BREAK signal is typically 250 to 500 ms in length.
interpret the TELNET break signal as a physical break signal, which
can then allow access to the full range of administartive functions The telnet protocol furnishes a means to send a "BREAK" signal, which
available on an asynchronous serial console port. RFC0854 defines as a "a signal outside the USASCII set which is
currently given local meaning within many systems." [1] Console
Server vendors interpret the TELNET BREAK signal as a physical BREAK
signal, which can then allow access to the full range of
adminisrative functions available on an asynchronous serial console
port.
The lack of a similar facility in the SSH session channel has forced The lack of a similar facility in the SSH session channel has forced
users to continue the use of telnet for the "Console Server" users to continue the use of telnet for the "Console Server"
function. function.
2. The Break Request 2. The Break Request
The following following channel specific request can be sent to The following following channel specific request can be sent to
request that the remote host perform a break operation. request that the remote host perform a BREAK operation.
byte SSH_MSG_CHANNEL_REQUEST byte SSH_MSG_CHANNEL_REQUEST
uint32 recipient channel uint32 recipient channel
string "break" string "break"
boolean want_reply boolean want_reply
uint32 break-length in milliseconds uint32 break-length in milliseconds
If the break length cannot be controlled by the application receiving If the BREAK length cannot be controlled by the application receiving
this request, the break length parameter SHOULD be ignored and the this request, the BREAK length parameter SHOULD be ignored and the
default break signal length of the chipset or underlying chipset default BREAK signal length of the chipset or underlying chipset
driver SHOULD be sent. driver SHOULD be sent.
If the application can control the break-length, the following If the application receiving this request can control the
suggestions are made reagarding break duration. If a break duration BREAK-length, the following suggestions are made regarding BREAK
request of greater than 3000ms is received, it SHOULD be processed as duration. If a BREAK duration request of greater than 3000ms is
a 3000ms break, in order to an unreasonably long break request received, it SHOULD be processed as a 3000ms BREAK, in order to
causing the port to become unavailable for as long as 47 days while prevent an unreasonably long BREAK request causing the port to become
executing the break. Applications that require a longer break may unavailable for as long as 49.7 days while executing the BREAK.
choose to ignore this requirement. If break duration request of Applications that require a longer BREAK may choose to ignore this
less than 500ms, is requested a break of 500ms SHOULD be sent since requirement. If BREAK duration request of less than 500ms, is
most devices will recognize a break of that length. In the event requested a BREAK of 500ms SHOULD be sent since most devices will
that an application needs a shorter break, this can be ignored. If recognize a BREAK of that length. In the event that an application
the break-length parameter is 0, the break SHOULD be sent as 500ms or needs a shorter BREAK, this suggestion can be ignored. If the
the default break signal length of the chipset or underlying chipset BREAK-length parameter is 0, the BREAK SHOULD be sent as 500ms or the
default BREAK signal length of the chipset or underlying chipset
driver . driver .
If the SSH connection does not terminate on a physical serial port,
the BREAK indication SHOULD be handled in an implementation-defined
manner consistent with the general use of BREAK as an attention/
interrupt signal; for instance, a service processor could use some
other out-of-band facility to get the attention of a system it
manages.
In a case where an SSH connection cascades to another connection, the
BREAK SHOULD be passed along the cascaded connection. For example, a
telnet session from an SSH shell should carry along an SSH initiated
BREAK and an SSH client initited from a telnet connection SHOULD pass
a BREAK indication from the telnet connection.
If the want_reply boolean is set, the server MUST reply using If the want_reply boolean is set, the server MUST reply using
SSH_MSG_CHANNEL_SUCCESS or SSH_MSG_CHANNEL_FAILURE [4] messages. If SSH_MSG_CHANNEL_SUCCESS or SSH_MSG_CHANNEL_FAILURE [5] messages. If
a break of any kind was preformed, SSH_MSG_CHANNEL_SUCCESS MUST be a BREAK of any kind was preformed, SSH_MSG_CHANNEL_SUCCESS MUST be
sent. If no break was preformed, SSH_MSG_CHANNEL_FAILURE MUST be sent. If no BREAK was preformed, SSH_MSG_CHANNEL_FAILURE MUST be
sent. sent.
This operation SHOULD be support by most general purpose SSH clients. This operation SHOULD be supported by any general purpose SSH client.
References 3. Security Considerations
Many computer systems treat serial consoles as local and secured, and
interpret a BREAK signal as an instruction to halt execution of the
operating system or to enter priviliged configuration modes. Because
of this, extra care should be taken to ensure that SSH access to
BREAK-enabled ports are limited to users with appropriate priviliges
to execute such functions. Alternatively, support for the BREAK
facility MAY be imlemented configurable or a per port or per server
basis.
Implementations that literally intepret the BREAK length parameter
without imposing the suggested BREAK time limit may cause a denial
of service to or unexpected results from attached devices receiving
the very long BREAK signal.
Normative References
[1] Postel, J. and J. Reynolds, "Telnet Protocol Specification", STD [1] Postel, J. and J. Reynolds, "Telnet Protocol Specification", STD
8, RFC 854, May 1983. 8, RFC 854, May 1983.
[2] Rinne, T., Ylonen, T., Kivinen, T. and S. Lehtinen, "SSH Informative References
Protocol Architecture", draft-ietf-secsh-architecture-13 (work
in progress), September 2002.
[3] Rinne, T., Ylonen, T., Kivinen, T., Saarinen, M. and S. [2] Harris, D., "Greater Scroll of Console Knowledge", April 2003.
[3] Rinne, T., Ylonen, T., Kivinen, T. and S. Lehtinen, "SSH
Protocol Architecture", draft-ietf-secsh-architecture-14 (work
in progress), July 2003.
[4] Rinne, T., Ylonen, T., Kivinen, T., Saarinen, M. and S.
Lehtinen, "SSH Transport Layer Protocol", Lehtinen, "SSH Transport Layer Protocol",
draft-ietf-secsh-transport-15 (work in progress), September draft-ietf-secsh-transport-16 (work in progress), July 2003.
2002.
[4] Rinne, T., Ylonen, T., Kivinen, T. and S. Lehtinen, "SSH [5] Rinne, T., Ylonen, T., Kivinen, T. and S. Lehtinen, "SSH
Connection Protocol", draft-ietf-secsh-connect-16 (work in Connection Protocol", draft-ietf-secsh-connect-17 (work in
progress), September 2002. progress), July 2003.
Authors' Addresses Authors' Addresses
Joseph Galbraith Joseph Galbraith
VanDyke Software VanDyke Software
4848 Tramway Ridge Blvd 4848 Tramway Ridge Blvd
Suite 101 Suite 101
Albuquerque, NM 87111 Albuquerque, NM 87111
US US
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/