下载
第27章使用Telnet
作者:Neal S. Jamison
本章内容包括:
• 理解Te l n e t协议
• Te l n e t守护进程
• 使用Te l n e t
• 高级主题
• 参考文献和相关R F C
虽然终端仿真已不如以前应用广泛,但是它仍然是访问S h e l l帐号及其他多用户系统的重
要工具。同时,它也是解决问题的有效工具。本章主要讨论互联网中的终端仿真服务:
TCP/IP Te l n e t协议及其相关软件。
27.1 理解Telnet协议
Te l n e t协议是T C P / I P协议簇的早期协议之一。事实上,早期的RFC 15(写于1 9 6 9年)就曾讨
论过关于Te l n e t的一些有趣主题。Te l n e t目前在RFC 854中定义。
创建Te l n e t协议的初衷是简化与远程主机的连接。在早期,如果用户使用I B M框架,需要
I B M终端与框架连接;如果使用D E C,则需要D E C终端。结果如图2 7 - 1所示。
图27-1 在Telnet创建之前网络未得到广泛应用
因此,我们需要可以理解所有语言组属性的终端仿真服务。它使用户可以在一台终端前
与多台互相区别的主机系统连接。因此,创建了Te l n e t。
Te l n e t是登录远程主机的标准互联网应用协议。它提供编码规则和其他必要的服务以便用
户系统与远程主机连接。
Te l n e t使用可靠的T C P传输机制以维护可靠、稳定的连接。Te l n e t的服务端口为T C P端口2 3。
I B M终端
I B M框架
D E C框架
X Y Z框架
D E C终端
X Y Z终端
Te l n e t可以以多种方式运行:
• 半双工
• 字符方式
• 行方式
• 线性方工
半双工方式已经很久不被使用了。
在字符方式中,每一个被敲入的字符立即传送到远程主机处理并将结果返回给客户。对
于速度较慢的网络,其效果将不能忍受。目前许多Te l n e t的实现均采用此方式。
在行方式中,文本在本地回显,一行结束时,
将整行发送到远程主机处理过程。
在线性方式中,字符在本地处理,但处理过程
由远程系统控制。
网络虚拟终端
因为我们使用多种不同类型的计算机,它们有
不同的键盘和输出设备,所以Te l n e t的任务十分重
要。输入设备和计算机使用各种各样的语言,从
A S C I I码到各种E B C D I C方言。这使计算机间交流
十分困难。网络虚拟终端( N V T )的作用主要是简化
计算机间的交流。客户、服务器及它们各自的网络
虚拟终端工作方式如图2 7 - 2所示。
N V T接收来自客户系统的输入并将它转化为通用语言。在主机上的N V T接收通用语言并
将它转化为主机可理解的特定语言。
N V T允许任何属性的客户与任意属性的主机,反之亦然。
27.2 Telnet守护进程
与其他T C P / I P客户/服务器服务类似,Te l n e t依靠守护进程响应客户请求。在U N I X系统中,
守护进程为t e l n e t d (或i n . t e l n e t d )。
注意下面讲述的i n . t e l n e t d的用法及属性来自L i n u x操作系统帮助文件。用户系统的相
关信息请查阅自己的操作系统文档或帮助文件。
用法:/usr/sbin/in.telnetd [-hns] [-a认证模式] [-D 调试模式] [-L 登录程序]
[-S 服务类型] [-X 认证类型] [-edebug] [-debug 端口]
属性:
-a 认证模式—设置程序使用的认证模式。该属性仅在t e l n e t d被编译支持认证时才可使用。
下面列出了认证模式的可选值:
• debug—启用认证调试。
• u s e r—当远程用户能够提供有效的认证信息以标识自身时才允许连接,并且允许访问
无需口令的特定帐号。
• valid—仅当远程用户能够提供有效的认证信息标识自身时才允许连接。
第2 7章使用Te l n e t使用303
下载
图27-2 Telnet及NVT简化终端到主机的连接
I B M框架
D E C框架
X Y Z框架
Te l n e t主
机( N V T )
• other—仅允许提供认证信息的连接。
• none—缺省状态。无需认证信息。
• off—关闭认证代码。
-D 调试模式—该属性用于调试。它允许t e l n e t d打印出连接的调试信息,允许用户查看
t e l n e t d的工作过程,调试模式的可选值如下:
• options—打印t e l n e t属性协商信息。
• report—打印属性信息及t e l n e t d的工作信息。
• netdata—打印t e l n e t d接收到的数据流。
• ptydata—显示发送到仿真终端的信息。
- e d e b u g—启用加密调试。
- h—在登录完成前禁止打印与主机相关的信息。
- L登录程序—该属性用于指定不同的登录程序。缺省情况下使用/ b i n / l o g i n。
- n—禁止T C P保持连接。通常, t e l n e t d使用T C P保持连接机制查看已空闲一段时间的连
接,以判断连接是否正常,并清除已经崩溃的连接。
- s—仅当t e l n e t d被编译支持S e c u r I D卡时,才可使用该属性。它使- s属性应用于登录,当
登录支持- s属性时,表示仅允许s e c u r I D登录。它通常用于控制防火墙外的远程登录。
- S服务类型—将Te l n e t连接的I P服务类型( t y p e - o f - s e r v i c e,TO S )选项设置为t o s。
- X认证类型—仅当t e l n e t d被编译支持认证属性才可使用该属性。它禁止使用auth 类型的
认证,并且能暂时禁止特定的认证类型而无需重新编译t e l n e t d。
27.3 使用Telnet
Te l n e t非常容易使用。通常它由以下三步组成:
• 运行Te l n e t客户方命令初始化会话。
• 敲入登录I D和口令,
• 操作结束后,关闭会话。
Te l n e t有两种工作模式:输入和命令。然而,在大多数情况下,用户与Te l n e t交互仅在打
开或关闭会话时,并且主要以输入方式与远程操作系统或程序进行交互。
27.3.1 UNIX telnet命令
本书讨论L i n u x下t e l n e t实现的用法与属性。用户将会发现大多数的t e l n e t实现都类似,可
以从文档或帮助中获得t e l n e t命令的详细信息。
用法:telnet [-8ELadr] [-S tos] [-e escapechar] [-l user] [-n tracefile] [host] [port]
属性:
- 8—请求8位操作。
- E—禁止E S C字符功能。
- L—指定8位输出数据的路径。
- a—尝试自动登录。如果远程主机支持,通过U S E R传输用户名。
- d—设置调试布尔值的初始值为Tr u e。
- r—仿真r l o g i n。
304使用第七部分使用T C P / I P应用
下载
-S tos—设置Te l n e t连接的I P服务类型的值为t o s。
-e escapechar—将e s c字符的值指定为e s c a p e c h a r。
-l user—将u s e r指定为登录到远程主机的用户名,与- a属性类似。
-n tracefile—打开t r a c e f i l e文件读取路径信息。
h o s t—指定h o s t为通过网络连接的主机。
p o r t—指定端口号或服务名称。如果不指定,则使用2 3号端口。
27.3.2 Telnet GUI应用
目前流行多种基于G U I的Te l n e t应用程序,它们为非U N I X用户提供方便易用的客户端程
序。其中最为流行的两个版本为Microsoft Te l n e t和C RT。Microsoft Te l n e t与微软Wi n d o w s操作
系统( Windws NT、Windows 98等)一并发售。C RT是Va n D y k e技术公司的共享软件,它可从
Wi n o d w s共享软件站点下载。
图2 7 - 3和图2 7 - 4显示两个应用程序的界面。
图27-3 Microsoft Telnet应用
图27-4 另外一个流行的终端仿真应用(Van Dyke技术公司的CRT)
27.3.3 Telnet命令
由于t e l n e t简单的用户接口,因此任何用户都可轻易掌握下述t e l n e t命令。正如上面曾提到
第2 7章使用Te l n e t使用305
下载
过的,大多数(几乎全部) Te l n e t会话均采用输入模式与远程操作系统或程序会话。高级用户或
系统管理员可能会发现某些命令(如TO G G L E )在查错纠错时非常有用。
Te l n e t命令的帮助文件可在命令行方式下通过执行H e l p命令获得。例如:
要获得某个特定命令的帮助可在命令后加上“ ?”,例如:
表2 7 - 1描述了完整的Te l n e t命令集合。
注意表2 7 - 1、表2 7 - 2和表2 7 - 3中列出的Te l n e t命令及属性信息都来自L i n u x操作系统的帮
助文件。用户自己的操作系统的相关信息,可从用户操作系统文档及帮助文件中获得。
306使用第七部分使用T C P / I P应用
下载
表27-1 Te l n e t命令
命令描述
C L O S E 关闭到远程主机的连接
D I S P L AY 显示特定的操作参数
E N V I R O N 修改或增加环境变量
HELP (?) 显示帮助信息(同样?命令可获得指定命令的帮助信息)
L O G O U T 强行退出远程用户并关闭连接。与C l o s e类似
M O D E 询问服务器是否为行或字符模式
O P E N 打开到特定主机的连接
Q U I T 关闭会话,退出Te l n e t
S E N D 传输特定的协议字符序列,见表2 7 - 3
S E T 设置操作参数。参见U N S E T命令
S L C (设置本地参数)设置特殊字符的定义及意义
S TAT U S 显示当前状态信息,如主机、模式等等
TO G G L E 激活操作参数。表2 7 - 2列出了常用的操作参数
U N S E T 取消操作参数的设置,参见S E T命令
Z 挂起Te l n e t (挂起命令可由f g命令恢复)
! [Command] 执行特定的s h e l l命令。如果没有给出命令,将打开子s h e l l
上述命令中,某些命令需要更详细的参数,如TO G G L E和S E N D。表2 7 - 2列出了TO G G L E
命令的常用属性,表2 7 - 3列出Telnet SEND命令的属性集合。
TO G G L E命令激活( T R U E或FA L S E )特定属性。
表27-2 Te l n e t中TO G G L E命令需用的属性
命令描述
d e b u g 激活s o c k e t级的调试。其初始值为FA L S E
s k i p r c 当s k i p r c的值为T R U E时, Te l n e t不读取. t e l n e t r c文件。初始值为FA L S E
? 显示可用的t o g g l e命令
S E N D用于传输命令和属性到远程主机。表2 7 - 3列出了S E N D命令属性。
表27-3 Te l n e t中S e n d命令的属性
命令描述
E O F 文件结束符
S U S P 挂起当前处理过程(作业控制)
A B O RT 终止处理过程
E O R 记录结束
S E 子属性结束标记
N O P 空操作
D M 数据标记
B R K 中止
I P 中断处理
A O 终止输出
AY T 对方是否仍在运行(Are you there?)
E C E S C字符
E L 擦除行
第2 7章使用Te l n e t使用307
下载
(续)
命令描述
G A 继续
S B 子属性开始
W I L L 属性协商
W O N T 属性协商
D O 属性协商
D O N’T 属性协商
I A C 数据字节2 5 5
27.3.4 示例
下述示例显示会话的属性协商过程,用户可以通过TOGGLE OPTIONS命令获得冗余输
出。
308使用第七部分使用T C P / I P应用
下载
27.4 高级主题
本节讨论与Te l n e t相关的主题。这些主题包括安全、Te l n e t应用及使用Te l n e t访问其他流行
的T C P / I P服务。
27.4.1 安全
与其他T C P程序及应用类似, Te l n e t也伴随安全问题。但是,有许多工具可以加强Te l n e t
的安全性或完全取代Te l n e t。
1. TCP Wr a p p e r
TCP Wr a p p e r (有时称为t c p d )包围在T C P守护进程之外,为T C P程序提供监听和过滤功能。
使用TCP Wr a p p e r,用户可以配置系统使用户的Te l n e t仅响应特定网络或域中计算机的请求。
TCP Wr a p p e r由Wietse Ve n e m a开发。
Wr a p p e r已经预装入了某些系统。用户需要根据自己的系统下载并安装正确的T C P
Wr a p p e r。
2. 配置/ e t c / h o s t s . a l l o w和/ e t c / h o s t s . d e n y文件
主机或TCP Wr a p p e r使用这些文件来限制用户可以/不可以使用某些特定的命令。便如
h o s t s . d e n y文件包含:
In.telnetd: All
h o s t s . a l l o w文件包含:
i n . t e l n e t d : * . m y d o m a i n . c o m
在上述示例中, h o s t s . d e n y文件拒绝任何Te l n e t 访问请求。h o s t s . a l l o w文件允许
m y d o m a i n . c o m中主机的访问请求。
要查询关于TCP Wr a p p e r更详细的信息,参见 ftp://ftp. porcupine. org/pub /security
/ i n d e x . h t m l。
3. 安全S h e l l
安全S h e l l ( S S H )的功能与Te l n e t类似。但是它采用了加密机制,如数据加密标准( D E S )和
R S A主机认证, S S H可以保护主机免受多种攻击的侵害,如I P欺骗及口令窃听。
S S H可以免费应用于非商业应用。要了解S S H 更详细的信息,可查询h t t p : / / w w w.
s s h . f i / s s h p r o t o c o l s 2 /。
27.4.2 Telnet应用
Te l n e t通常用于访问远程应用。H y t e l n e t包含Te l n e t可访问的图书馆及各种可用资源。虽然
其中部分站点已经消失或可用We b访问,但大多数站点仍然可用。
图2 7 - 5和图2 7 - 6显示基于Wi n o d w s的Hytelnet 6.9。
其他Te l n e t应用包括W h o i s及F i n g e r接口,其具体内容参见第2 5章。
第2 7章使用Te l n e t使用309
下载
图27-5 基于Windows的Hytelnet
图27-6 使用基于Windows的Hytelnet和CRT访问在线图书馆
27.4.3 使用Telnet访问其他TCP/IP服务
Te l n e t使用端口2 3实现其主要功能, Te l n e t守护进程还可监听和响应其他T C P端口。这一
特性使Te l n e t可用于连接其他T C P / I P服务。表2 7 - 4列出了部分可用Te l n e t访问的T C P / I P服务所
使用的T C P端口。
表27-4 Te l n e t可连接的T C P服务端口
服务端口
F T P 2 1
S M T P 2 5
W h o i s 4 3
F i n g e r 7 9
H T T P 8 0
310使用第七部分使用T C P / I P应用
下载
用户可使用Te l n e t命令与这些服务建立连接。命令形式如下:
telnet 主机名端口
或
telnet 主机名服务
在后一种命令形式中,可用服务(如S M T P )代替端口号。运行在主机上的t e l n e t服务器从系
统文件(大多数U N I X系统中为/ e t c / s e r v i c e s文件)中查找服务对应的端口并与该端口建立连接。
下一节将对此作进一步讨论并给出一些示例。
1. 使用Te l n e t发送邮件
用户可以使用Te l n e t与S M T P端口2 5建立连接。邮局管理员及系统管理员通常使用此方法
检查邮件中的问题。下面的示例说明使用Te l n e t与S M T P端口建立连接并运行确认( V R F Y )命令。
需要了解关于S M T P的更详细的信息,参见3 1章。
通过执行恰当的S T M P命令,甚至可以使用t e l n e t发送邮件。
2. Finger
用户也可以使用t e l n e t与远程主机的F i n g e r端口( 7 9 )建立连接,如下所示:
一旦建立连接,用户可敲入在线查询( j a m i s o n n )命令。F i n g e r服务器将对查询作出响应。
如果用户的主机没有安装F i n g e r客户端,这就是一种非常方便的方法。要查看关于F i n g e r的更
详细信息,参见第2 5章。
3. 使用Te l n e t网上冲浪
Te l n e t也可用于访问We b访问器的H T T P端口( 8 0 ),如下例所示:
第2 7章使用Te l n e t使用311
下载
连接建立后,敲入H T T P命令G E T /。这一命令请求We b服务器的缺省文档。除非用户可像
浏览器一样理解H T M L,否则返回的信息难以识别。此例仅作说明使用。要获取关于H T T P的
更详细信息,参见第3 2章。
27.5 相关RFC文档
下列R F C文档讨论Te l n e t及与Te l n e t有关的主题:
1 5 分时主机网络子系统(C.S. Carr,1 9 6 9 )
8 5 4 Telnet 协议规范(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 5 Telnet 属性规范(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 6 Telnet 二进制传输(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 7 Telnet 应答属性(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 8 Te l n e t压缩传输属性(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 9 Telnet 状态属性(J.Postel, J.K. Reynolds,1 9 8 3 )
8 6 0 Telnet 时间标记属性(J.Postel, J.K. Reynolds,1 9 8 3 )
8 6 1 Telnet 扩展属性:列表属性(J.Postel, J.K. Reynolds,1 9 8 3 )
11 2 3 互联网主机需求—应用和支持( R . T. Braden,1 9 8 9 )
11 8 4 Telnet 线性模式属性(D.A. Borman,1 9 9 0 )
1 2 5 0 , 5 2 5 0 Telnet 接口( P. Chmielewski,1 9 9 1 )
1 3 7 2 Telnet 远程流量控制属性(C. Hedrick, D. Borman,1 9 9 2 )
1 4 0 8 Telnet 环境属性(D.Borman, Editor,1 9 9 3 )
1 4 11 Telnet 认证:Kerberos 版本4.(D.Borman, Editor,1 9 9 3 )
1 4 1 2 Telnet 认证:SPX(K. Alagappan,1 9 9 3 )
1 4 1 6 Telnet 认证属性(D.Borman, Editor,1 9 9 3 )
1 5 7 1 Telnet 环境属性互操作( D . B o r m a n,1 9 9 4 )
1 5 7 2 Telnet 环境属性(S. Alexander,1 9 9 4 )
2 0 6 6 Telnet CHARSET 属性(R. Gellens,1 9 9 7 )
2 2 1 7 Telnet Com 端口控制属性(G. Clark,1 9 9 7 )
以下R F C文档讨论与Te l n e t相关但不是很关键的主题:
312使用第七部分使用T C P / I P应用
下载
7 4 8 Telnet 随机释放属性(M.R. Crispin,1 9 7 8 )
1 0 9 7 Telnet 部分限制消息属性(B. Miller,1 9 8 9 )
27.6 小结
本章详细描述了T C P / I P终端仿真协议Te l n e t。正如本章所述, Te l n e t解决了由于互联网的
诞生而引起的终端不兼容问题。由于Te l n e t和网络虚拟终端的存在,科学家及科研工作者可在
同一台终端对多个主机进行操作。
本章详细讲解了通用U N I X系统的Te l n e t客户及服务器方命令的语法格式及相关属性(虽然
它们极少被最终用户使用)。
本章还讨论了Te l n e t应用的安全问题。并讲解了如何使用Te l n e t连接和使用其他T C P / I P服
务,如S M T P、m a i l、F i n g e r和H T T P等。
最后,本章列出了与Te l n e t相关的所有R F C文档,包括最初的R F C文档: RFC 15,写于
1 9 6 9年。
第2 7章使用Te l n e t使用313
下载
第27章使用Telnet
作者:Neal S. Jamison
本章内容包括:
• 理解Te l n e t协议
• Te l n e t守护进程
• 使用Te l n e t
• 高级主题
• 参考文献和相关R F C
虽然终端仿真已不如以前应用广泛,但是它仍然是访问S h e l l帐号及其他多用户系统的重
要工具。同时,它也是解决问题的有效工具。本章主要讨论互联网中的终端仿真服务:
TCP/IP Te l n e t协议及其相关软件。
27.1 理解Telnet协议
Te l n e t协议是T C P / I P协议簇的早期协议之一。事实上,早期的RFC 15(写于1 9 6 9年)就曾讨
论过关于Te l n e t的一些有趣主题。Te l n e t目前在RFC 854中定义。
创建Te l n e t协议的初衷是简化与远程主机的连接。在早期,如果用户使用I B M框架,需要
I B M终端与框架连接;如果使用D E C,则需要D E C终端。结果如图2 7 - 1所示。
图27-1 在Telnet创建之前网络未得到广泛应用
因此,我们需要可以理解所有语言组属性的终端仿真服务。它使用户可以在一台终端前
与多台互相区别的主机系统连接。因此,创建了Te l n e t。
Te l n e t是登录远程主机的标准互联网应用协议。它提供编码规则和其他必要的服务以便用
户系统与远程主机连接。
Te l n e t使用可靠的T C P传输机制以维护可靠、稳定的连接。Te l n e t的服务端口为T C P端口2 3。
I B M终端
I B M框架
D E C框架
X Y Z框架
D E C终端
X Y Z终端
Te l n e t可以以多种方式运行:
• 半双工
• 字符方式
• 行方式
• 线性方工
半双工方式已经很久不被使用了。
在字符方式中,每一个被敲入的字符立即传送到远程主机处理并将结果返回给客户。对
于速度较慢的网络,其效果将不能忍受。目前许多Te l n e t的实现均采用此方式。
在行方式中,文本在本地回显,一行结束时,
将整行发送到远程主机处理过程。
在线性方式中,字符在本地处理,但处理过程
由远程系统控制。
网络虚拟终端
因为我们使用多种不同类型的计算机,它们有
不同的键盘和输出设备,所以Te l n e t的任务十分重
要。输入设备和计算机使用各种各样的语言,从
A S C I I码到各种E B C D I C方言。这使计算机间交流
十分困难。网络虚拟终端( N V T )的作用主要是简化
计算机间的交流。客户、服务器及它们各自的网络
虚拟终端工作方式如图2 7 - 2所示。
N V T接收来自客户系统的输入并将它转化为通用语言。在主机上的N V T接收通用语言并
将它转化为主机可理解的特定语言。
N V T允许任何属性的客户与任意属性的主机,反之亦然。
27.2 Telnet守护进程
与其他T C P / I P客户/服务器服务类似,Te l n e t依靠守护进程响应客户请求。在U N I X系统中,
守护进程为t e l n e t d (或i n . t e l n e t d )。
注意下面讲述的i n . t e l n e t d的用法及属性来自L i n u x操作系统帮助文件。用户系统的相
关信息请查阅自己的操作系统文档或帮助文件。
用法:/usr/sbin/in.telnetd [-hns] [-a认证模式] [-D 调试模式] [-L 登录程序]
[-S 服务类型] [-X 认证类型] [-edebug] [-debug 端口]
属性:
-a 认证模式—设置程序使用的认证模式。该属性仅在t e l n e t d被编译支持认证时才可使用。
下面列出了认证模式的可选值:
• debug—启用认证调试。
• u s e r—当远程用户能够提供有效的认证信息以标识自身时才允许连接,并且允许访问
无需口令的特定帐号。
• valid—仅当远程用户能够提供有效的认证信息标识自身时才允许连接。
第2 7章使用Te l n e t使用303
下载
图27-2 Telnet及NVT简化终端到主机的连接
I B M框架
D E C框架
X Y Z框架
Te l n e t主
机( N V T )
• other—仅允许提供认证信息的连接。
• none—缺省状态。无需认证信息。
• off—关闭认证代码。
-D 调试模式—该属性用于调试。它允许t e l n e t d打印出连接的调试信息,允许用户查看
t e l n e t d的工作过程,调试模式的可选值如下:
• options—打印t e l n e t属性协商信息。
• report—打印属性信息及t e l n e t d的工作信息。
• netdata—打印t e l n e t d接收到的数据流。
• ptydata—显示发送到仿真终端的信息。
- e d e b u g—启用加密调试。
- h—在登录完成前禁止打印与主机相关的信息。
- L登录程序—该属性用于指定不同的登录程序。缺省情况下使用/ b i n / l o g i n。
- n—禁止T C P保持连接。通常, t e l n e t d使用T C P保持连接机制查看已空闲一段时间的连
接,以判断连接是否正常,并清除已经崩溃的连接。
- s—仅当t e l n e t d被编译支持S e c u r I D卡时,才可使用该属性。它使- s属性应用于登录,当
登录支持- s属性时,表示仅允许s e c u r I D登录。它通常用于控制防火墙外的远程登录。
- S服务类型—将Te l n e t连接的I P服务类型( t y p e - o f - s e r v i c e,TO S )选项设置为t o s。
- X认证类型—仅当t e l n e t d被编译支持认证属性才可使用该属性。它禁止使用auth 类型的
认证,并且能暂时禁止特定的认证类型而无需重新编译t e l n e t d。
27.3 使用Telnet
Te l n e t非常容易使用。通常它由以下三步组成:
• 运行Te l n e t客户方命令初始化会话。
• 敲入登录I D和口令,
• 操作结束后,关闭会话。
Te l n e t有两种工作模式:输入和命令。然而,在大多数情况下,用户与Te l n e t交互仅在打
开或关闭会话时,并且主要以输入方式与远程操作系统或程序进行交互。
27.3.1 UNIX telnet命令
本书讨论L i n u x下t e l n e t实现的用法与属性。用户将会发现大多数的t e l n e t实现都类似,可
以从文档或帮助中获得t e l n e t命令的详细信息。
用法:telnet [-8ELadr] [-S tos] [-e escapechar] [-l user] [-n tracefile] [host] [port]
属性:
- 8—请求8位操作。
- E—禁止E S C字符功能。
- L—指定8位输出数据的路径。
- a—尝试自动登录。如果远程主机支持,通过U S E R传输用户名。
- d—设置调试布尔值的初始值为Tr u e。
- r—仿真r l o g i n。
304使用第七部分使用T C P / I P应用
下载
-S tos—设置Te l n e t连接的I P服务类型的值为t o s。
-e escapechar—将e s c字符的值指定为e s c a p e c h a r。
-l user—将u s e r指定为登录到远程主机的用户名,与- a属性类似。
-n tracefile—打开t r a c e f i l e文件读取路径信息。
h o s t—指定h o s t为通过网络连接的主机。
p o r t—指定端口号或服务名称。如果不指定,则使用2 3号端口。
27.3.2 Telnet GUI应用
目前流行多种基于G U I的Te l n e t应用程序,它们为非U N I X用户提供方便易用的客户端程
序。其中最为流行的两个版本为Microsoft Te l n e t和C RT。Microsoft Te l n e t与微软Wi n d o w s操作
系统( Windws NT、Windows 98等)一并发售。C RT是Va n D y k e技术公司的共享软件,它可从
Wi n o d w s共享软件站点下载。
图2 7 - 3和图2 7 - 4显示两个应用程序的界面。
图27-3 Microsoft Telnet应用
图27-4 另外一个流行的终端仿真应用(Van Dyke技术公司的CRT)
27.3.3 Telnet命令
由于t e l n e t简单的用户接口,因此任何用户都可轻易掌握下述t e l n e t命令。正如上面曾提到
第2 7章使用Te l n e t使用305
下载
过的,大多数(几乎全部) Te l n e t会话均采用输入模式与远程操作系统或程序会话。高级用户或
系统管理员可能会发现某些命令(如TO G G L E )在查错纠错时非常有用。
Te l n e t命令的帮助文件可在命令行方式下通过执行H e l p命令获得。例如:
要获得某个特定命令的帮助可在命令后加上“ ?”,例如:
表2 7 - 1描述了完整的Te l n e t命令集合。
注意表2 7 - 1、表2 7 - 2和表2 7 - 3中列出的Te l n e t命令及属性信息都来自L i n u x操作系统的帮
助文件。用户自己的操作系统的相关信息,可从用户操作系统文档及帮助文件中获得。
306使用第七部分使用T C P / I P应用
下载
表27-1 Te l n e t命令
命令描述
C L O S E 关闭到远程主机的连接
D I S P L AY 显示特定的操作参数
E N V I R O N 修改或增加环境变量
HELP (?) 显示帮助信息(同样?命令可获得指定命令的帮助信息)
L O G O U T 强行退出远程用户并关闭连接。与C l o s e类似
M O D E 询问服务器是否为行或字符模式
O P E N 打开到特定主机的连接
Q U I T 关闭会话,退出Te l n e t
S E N D 传输特定的协议字符序列,见表2 7 - 3
S E T 设置操作参数。参见U N S E T命令
S L C (设置本地参数)设置特殊字符的定义及意义
S TAT U S 显示当前状态信息,如主机、模式等等
TO G G L E 激活操作参数。表2 7 - 2列出了常用的操作参数
U N S E T 取消操作参数的设置,参见S E T命令
Z 挂起Te l n e t (挂起命令可由f g命令恢复)
! [Command] 执行特定的s h e l l命令。如果没有给出命令,将打开子s h e l l
上述命令中,某些命令需要更详细的参数,如TO G G L E和S E N D。表2 7 - 2列出了TO G G L E
命令的常用属性,表2 7 - 3列出Telnet SEND命令的属性集合。
TO G G L E命令激活( T R U E或FA L S E )特定属性。
表27-2 Te l n e t中TO G G L E命令需用的属性
命令描述
d e b u g 激活s o c k e t级的调试。其初始值为FA L S E
s k i p r c 当s k i p r c的值为T R U E时, Te l n e t不读取. t e l n e t r c文件。初始值为FA L S E
? 显示可用的t o g g l e命令
S E N D用于传输命令和属性到远程主机。表2 7 - 3列出了S E N D命令属性。
表27-3 Te l n e t中S e n d命令的属性
命令描述
E O F 文件结束符
S U S P 挂起当前处理过程(作业控制)
A B O RT 终止处理过程
E O R 记录结束
S E 子属性结束标记
N O P 空操作
D M 数据标记
B R K 中止
I P 中断处理
A O 终止输出
AY T 对方是否仍在运行(Are you there?)
E C E S C字符
E L 擦除行
第2 7章使用Te l n e t使用307
下载
(续)
命令描述
G A 继续
S B 子属性开始
W I L L 属性协商
W O N T 属性协商
D O 属性协商
D O N’T 属性协商
I A C 数据字节2 5 5
27.3.4 示例
下述示例显示会话的属性协商过程,用户可以通过TOGGLE OPTIONS命令获得冗余输
出。
308使用第七部分使用T C P / I P应用
下载
27.4 高级主题
本节讨论与Te l n e t相关的主题。这些主题包括安全、Te l n e t应用及使用Te l n e t访问其他流行
的T C P / I P服务。
27.4.1 安全
与其他T C P程序及应用类似, Te l n e t也伴随安全问题。但是,有许多工具可以加强Te l n e t
的安全性或完全取代Te l n e t。
1. TCP Wr a p p e r
TCP Wr a p p e r (有时称为t c p d )包围在T C P守护进程之外,为T C P程序提供监听和过滤功能。
使用TCP Wr a p p e r,用户可以配置系统使用户的Te l n e t仅响应特定网络或域中计算机的请求。
TCP Wr a p p e r由Wietse Ve n e m a开发。
Wr a p p e r已经预装入了某些系统。用户需要根据自己的系统下载并安装正确的T C P
Wr a p p e r。
2. 配置/ e t c / h o s t s . a l l o w和/ e t c / h o s t s . d e n y文件
主机或TCP Wr a p p e r使用这些文件来限制用户可以/不可以使用某些特定的命令。便如
h o s t s . d e n y文件包含:
In.telnetd: All
h o s t s . a l l o w文件包含:
i n . t e l n e t d : * . m y d o m a i n . c o m
在上述示例中, h o s t s . d e n y文件拒绝任何Te l n e t 访问请求。h o s t s . a l l o w文件允许
m y d o m a i n . c o m中主机的访问请求。
要查询关于TCP Wr a p p e r更详细的信息,参见 ftp://ftp. porcupine. org/pub /security
/ i n d e x . h t m l。
3. 安全S h e l l
安全S h e l l ( S S H )的功能与Te l n e t类似。但是它采用了加密机制,如数据加密标准( D E S )和
R S A主机认证, S S H可以保护主机免受多种攻击的侵害,如I P欺骗及口令窃听。
S S H可以免费应用于非商业应用。要了解S S H 更详细的信息,可查询h t t p : / / w w w.
s s h . f i / s s h p r o t o c o l s 2 /。
27.4.2 Telnet应用
Te l n e t通常用于访问远程应用。H y t e l n e t包含Te l n e t可访问的图书馆及各种可用资源。虽然
其中部分站点已经消失或可用We b访问,但大多数站点仍然可用。
图2 7 - 5和图2 7 - 6显示基于Wi n o d w s的Hytelnet 6.9。
其他Te l n e t应用包括W h o i s及F i n g e r接口,其具体内容参见第2 5章。
第2 7章使用Te l n e t使用309
下载
图27-5 基于Windows的Hytelnet
图27-6 使用基于Windows的Hytelnet和CRT访问在线图书馆
27.4.3 使用Telnet访问其他TCP/IP服务
Te l n e t使用端口2 3实现其主要功能, Te l n e t守护进程还可监听和响应其他T C P端口。这一
特性使Te l n e t可用于连接其他T C P / I P服务。表2 7 - 4列出了部分可用Te l n e t访问的T C P / I P服务所
使用的T C P端口。
表27-4 Te l n e t可连接的T C P服务端口
服务端口
F T P 2 1
S M T P 2 5
W h o i s 4 3
F i n g e r 7 9
H T T P 8 0
310使用第七部分使用T C P / I P应用
下载
用户可使用Te l n e t命令与这些服务建立连接。命令形式如下:
telnet 主机名端口
或
telnet 主机名服务
在后一种命令形式中,可用服务(如S M T P )代替端口号。运行在主机上的t e l n e t服务器从系
统文件(大多数U N I X系统中为/ e t c / s e r v i c e s文件)中查找服务对应的端口并与该端口建立连接。
下一节将对此作进一步讨论并给出一些示例。
1. 使用Te l n e t发送邮件
用户可以使用Te l n e t与S M T P端口2 5建立连接。邮局管理员及系统管理员通常使用此方法
检查邮件中的问题。下面的示例说明使用Te l n e t与S M T P端口建立连接并运行确认( V R F Y )命令。
需要了解关于S M T P的更详细的信息,参见3 1章。
通过执行恰当的S T M P命令,甚至可以使用t e l n e t发送邮件。
2. Finger
用户也可以使用t e l n e t与远程主机的F i n g e r端口( 7 9 )建立连接,如下所示:
一旦建立连接,用户可敲入在线查询( j a m i s o n n )命令。F i n g e r服务器将对查询作出响应。
如果用户的主机没有安装F i n g e r客户端,这就是一种非常方便的方法。要查看关于F i n g e r的更
详细信息,参见第2 5章。
3. 使用Te l n e t网上冲浪
Te l n e t也可用于访问We b访问器的H T T P端口( 8 0 ),如下例所示:
第2 7章使用Te l n e t使用311
下载
连接建立后,敲入H T T P命令G E T /。这一命令请求We b服务器的缺省文档。除非用户可像
浏览器一样理解H T M L,否则返回的信息难以识别。此例仅作说明使用。要获取关于H T T P的
更详细信息,参见第3 2章。
27.5 相关RFC文档
下列R F C文档讨论Te l n e t及与Te l n e t有关的主题:
1 5 分时主机网络子系统(C.S. Carr,1 9 6 9 )
8 5 4 Telnet 协议规范(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 5 Telnet 属性规范(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 6 Telnet 二进制传输(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 7 Telnet 应答属性(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 8 Te l n e t压缩传输属性(J.Postel, J.K. Reynolds,1 9 8 3 )
8 5 9 Telnet 状态属性(J.Postel, J.K. Reynolds,1 9 8 3 )
8 6 0 Telnet 时间标记属性(J.Postel, J.K. Reynolds,1 9 8 3 )
8 6 1 Telnet 扩展属性:列表属性(J.Postel, J.K. Reynolds,1 9 8 3 )
11 2 3 互联网主机需求—应用和支持( R . T. Braden,1 9 8 9 )
11 8 4 Telnet 线性模式属性(D.A. Borman,1 9 9 0 )
1 2 5 0 , 5 2 5 0 Telnet 接口( P. Chmielewski,1 9 9 1 )
1 3 7 2 Telnet 远程流量控制属性(C. Hedrick, D. Borman,1 9 9 2 )
1 4 0 8 Telnet 环境属性(D.Borman, Editor,1 9 9 3 )
1 4 11 Telnet 认证:Kerberos 版本4.(D.Borman, Editor,1 9 9 3 )
1 4 1 2 Telnet 认证:SPX(K. Alagappan,1 9 9 3 )
1 4 1 6 Telnet 认证属性(D.Borman, Editor,1 9 9 3 )
1 5 7 1 Telnet 环境属性互操作( D . B o r m a n,1 9 9 4 )
1 5 7 2 Telnet 环境属性(S. Alexander,1 9 9 4 )
2 0 6 6 Telnet CHARSET 属性(R. Gellens,1 9 9 7 )
2 2 1 7 Telnet Com 端口控制属性(G. Clark,1 9 9 7 )
以下R F C文档讨论与Te l n e t相关但不是很关键的主题:
312使用第七部分使用T C P / I P应用
下载
7 4 8 Telnet 随机释放属性(M.R. Crispin,1 9 7 8 )
1 0 9 7 Telnet 部分限制消息属性(B. Miller,1 9 8 9 )
27.6 小结
本章详细描述了T C P / I P终端仿真协议Te l n e t。正如本章所述, Te l n e t解决了由于互联网的
诞生而引起的终端不兼容问题。由于Te l n e t和网络虚拟终端的存在,科学家及科研工作者可在
同一台终端对多个主机进行操作。
本章详细讲解了通用U N I X系统的Te l n e t客户及服务器方命令的语法格式及相关属性(虽然
它们极少被最终用户使用)。
本章还讨论了Te l n e t应用的安全问题。并讲解了如何使用Te l n e t连接和使用其他T C P / I P服
务,如S M T P、m a i l、F i n g e r和H T T P等。
最后,本章列出了与Te l n e t相关的所有R F C文档,包括最初的R F C文档: RFC 15,写于
1 9 6 9年。
第2 7章使用Te l n e t使用313
下载
本文介绍Telnet协议的基础知识,包括其历史背景、工作原理以及如何在现代网络中使用Telnet进行远程连接。此外,还探讨了Telnet的安全问题,并介绍了替代方案。
649

被折叠的 条评论
为什么被折叠?



