导航:首页 > IDC知识 > 登录远程主机

登录远程主机

发布时间:2020-09-01 02:13:22

1、什么是远程登陆服务?

以前,很少有人买得起计算机,更甭说买功能强大的计算机了。所以那时的人采用一种叫做Telnet的方式来访问Internet:也就是把自己的低性能计算机连接到远程性能好的大型计算机上,一旦连接上,他们的计算机就仿佛是这些远程大型计算机上的一个终端,自己就仿佛坐在远程大型机的屏幕前一样输入命令,运行大机器中的程序。人们把这种将自己的电脑连接到远程计算机的操作方式叫做“登录”,称这种登录的技术为Telnet(远程登录)。

Telnet是Internet的远程登录协议的意思,它让你坐在自己的计算机前通过Internet网络登录到另一台远程计算机上,这台计算机可以在隔壁的房间里,也可以在地球的另一端。当你登录上远程计算机后,你的电脑就仿佛是远程计算机的一个终端,你就可以用自己的计算机直接操纵远程计算机,享受远程计算机本地终端同样的权力。你可在远程计算机启动一个交互式程序,可以检索远程计算机的某个数据库,可以利用远程计算机强大的运算能力对某个方程式求解。

但现在Telnet已经越用越少了。主要有如下三方面原因:

第一,个人计算机的性能越来越强,致使在别人的计算机中运行程序要求逐渐减弱。

第二,Telnet服务器的安全性欠佳,因为它允许他人访问其操作系统和文件。

第三,Telnet使用起来不是很容易,特别是对初学者。

但是Telnet仍然有很多优点,比如如果你的电脑中缺少什么功能,就可以利用Telnet连接到远程计算机上,利用远程计算机上的功能来完成你要做的工作,可以这么说,Internet上所提供的所有服务,通过Telnet都可以使用。

不过Telnet的主要用途还是使用远程计算机上所拥有的信息资源,如果你的主要目的是在本地计算机与远程计算机之间传递文件,则使用FTP会有效得多。

4.2 Telnet的工作原理

当你用Telnet登录进入远程计算机系统时,你事实上启动了两个程序,一个叫Telnet客户程序,它运行在你的本地机上,另一个叫Telnet服务器程序,它运行在你要登录的远程计算机上,本地机上的客户程序要完成如下功能:

1) 建立与服务器的TCP联接。

2) 从键盘上接收你输入的字符。

3) 把你输入的字符串变成标准格式并送给远程服务器。

4) 从远程服务器接收输出的信息。

5) 把该信息显示在你的屏幕上。

远程计算机的“服务”程序通常被称为“精灵”,它平时不声不响地候在远程计算机上,一接到你的请求,它马上活跃起来,并完成如下功能:

1) 通知你的计算机,远程计算机已经准备好了。

2) 等候你输入命令。

3) 对你的命令作出反应(如显示目录内容,或执行某个程序等)。

4) 把执行命令的结果送回给你的计算机。

5) 重新等候你的命令。

在Internet中,很多服务都采取这样一种客户/服务器结构。对Internet的使用者来讲,通常只要了解客户端的程序就够了。

4.3利用Windows95实现远程登录

Windows95的Telnet客户程序是属于Windows95的命令行程序中的一种。在安装Microsoft TCP/IP时,Telnet客户程序会被自动安装到系统上。

利用Windows95的Telnet客户程序进行远程登录,步骤如下:

(1) 联接到Internet.

(2) 选择“开始”菜单中的“运行”,或者是选择“程序”菜单下的“MS-DOS提示方式”便可转换至命令提示符下。

(3) 在命令提示符下,按下列两种方法中的任一种与Telnet联接。

一种方法是,输入“telnet”命令、空格以及相应的telnet的主机地址。如果主机提示你输入一个端口号,则可在主机地址后加上一个空格,再紧跟上相应的端口号。然后,按回车键。

另一种方法是,输入“telnet”命令并按回车,打开Telnet主窗口。在该窗口中,选择“连接”下的“远程系统”,如有必要,可以在随后出现的对话框中输入主机名和端口号,然后,单击“连接”按钮。

(4) 与Telnet的远程主机联接成功后,计算机会提示你输入用户名和密码,若联接的是一个BBS、Archie、Gopher等免费服务系统,则可以通过输入bbs、archie或gopher作为用户名,就可以进入远程主机系统。

这样,Telnet已经为你架起了通向远程主机的桥梁,现在你可以完全依照远程主机的命令行事了。

2、有什么办法连接远程主机。注:我有远程主机的登陆账号密码,且远程主机允许连接》

首先是、你必须要知道对方的IP地址,只有用户名和密码是不行的。

点 开始 -→附件-→通讯-→远程桌面连接-→ 输入IP地址-→(连接成功后会

出现windows的登陆窗)-→(输入用户名及密码就可以了)

3、如何远程登陆远程主机?

一共有以下几步:
第一步:本地电脑,左下角,开始
第二步:点击运行 远程服务器
第三步:运行框里输入 mstsc 点击确定
第四步:填入ip,点击连接
第五步:输入账户密码,点击确定 连接服务器
第六步:每次退出服务器,要在左下角,注销,方便下次登录,不注销,下次登陆的时候会提示超过用户组哦,

4、远程主机和用mstsc登录远程主机有什么区别

"\\加IP",只要是windows,除win9x外,默认系统自带共享服务,除非有防火墙,或者手工关闭lanmanserver

"mstsc",自win2ksrv以来,xp及以上系统已自带rdp服务,但需要开启才能用,直接win+break设置

一个走SMB协议,一个走RDP协议,

5、怎么远程登陆别人的电脑

Telnet是进行远程登录的标准协议和主要方式它为用户提供了在本地计算机上完成远程主机工作的能力。通过使用Telnet,Internet用户可以与全世界许多信息中心图书馆及其它信息资源联系。Telnet远程登录的使用主要有两种情况。第一种是用户在远程主祝上有自己的帐号(Account),即用户拥有注册的用户名和口令;第二种是许多Internet主机为用户提供了某种形式的公共Telnet信息资源,这种资源对于每一个Telnet用户都是开放的。Telnet是使用最为简单的Internet工具之一。

telnet /?

命令可以缩写。支持的命令为:

c- 关闭 关闭当前连接
d- 显示 显示操作参数
o- 打开主机名 [端口]连接到一个主机名(默认端口 23)
q- 退出 退出 telnet
set- 设置 设置选项(要列表,请键入 \'set ?\')
sen- 发送 将字符串送到服务器
st - 状态 打印状态信息
u- 解除设置 解除设置选项(要列表,请键入 \'unset ?\')
?/h- 帮助 打印帮助信息

一 摘要
二 远程登录
三 Telnet协议
四 Win2000的Telnet服务
五 在telnet中该做什么

一 摘要
Telnet的应用不仅方便了我们进行远程登录,也给hacker们提供了又一种入侵手段和后门,但无论如何,在你尽情享受Telnet所带给你的便捷的同时,你是否真正的了解Telnet呢?

二 远程登录

Telnet服务虽然也属于客户机/服务器模型的服务,但它更大的意义在于实现了基于Telnet协议的远程登录(远程交互式计算),那么就让我们来认识一下远程登录。

1 远程登陆的基本概念

先来看看什么叫登录:分时系统允许多个用户同时使用一台计算机,为了保证系统的安全和记帐方便,系统要求每个用户有单独的帐号作为登录标识,系统还为每个用户指定了一个口令。用户在使用该系统之前要输入标识和口令,这个过程被称为\'登录\'。
远程登陆是指用户使用Telnet命令,使自己的计算机暂时成为远程主机的一个仿真终端的过程。仿真终端等效于一个非智能的机器,它只负责把用户输入的每个字符传递给主机,再将主机输出的每个信息回显在屏幕上。

2 远程登陆的产生及发展

我们可以先构想一个提供远程文字编辑的服务,这个服务的实现需要一个接受编辑文件请求和数据的服务器以及一个发送此请求的客户机。客户机将建立一个从本地机到服务器的TCP连接,当然这需要服务器的应答,然后向服务器发送键入的信息(文件编辑信息),并读取从服务器返回的输出。以上便是一个标准而普通的客户机/服务器模型的服务。
似乎有了客户机/服务器模型的服务,一切远程问题都可以解决了。然而实际并非你想象的那样简单,如果我们仅需要远程编辑文件,那么刚才所构想的服务完全可以胜任,但假如我们的要求并不是这么简单,我们还想实现远程用户管理,远程数据录入,远程系统维护,想实现一切可以在远程主机上实现的操作,那么我们将需要大量专用的服务器程序并为每一个可计算服务都使用一个服务器进程,随之而来的问题是:远程机器会很快对服务器进程应接不暇,并淹没在进程的海洋里(我们在这里排除最专业化的远程机器)。
那么有没有办法解决呢?当然有,我们可以用远程登录来解决这一切。我们允许用户在远地机器上建立一个登录会话,然后通过执行命令来实现更一般的服务,就像在本地操作一样。这样,我们便可以访问远地系统上所有可用的命令,并且系统设计员不需提供多个专用地服务器程序。
问题发展到这里好像前途一片光明了,用远程登录总应该解决问题了吧,但要实现远程登陆并不简单。不考虑网络设计的计算机系统期望用户只从直接相连的键盘和显示器上登录,在这种机器上增加远程登陆功能需要修改机器的操作系统,这是极其艰巨也是我们尽量避免的。因此我们应该集中力量构造远程登陆服务器软件,虽然这样也是比较困难的。为什么说这样做也比较困难呢?
举个例子来说:一般,操作系统会为一些特殊按键分配特殊的含义,比如本地系统将\'Ctrl+C\'解释为:\'终止当前运行的命令进程\'。但假设我们已经运行了远程登陆服务器软件,\'Ctrl+C\'也有可能无法被传送到远地机器,如果客户机真的将\'Ctrl+C\'传到了远地机器,那么\'Ctrl+C\'这个命令有可能不能终止本地的进程,也就是说在这里很可能会产生混乱。而且这仅仅是遇到的难题之一。
但尽管有技术上的困难,系统编程人员还是设法构造了能够应用于大多数操作系统的远程登陆服务器软件,并构造了充当客户机的应用软件。通常,客户机软件取消了除一个键以外的所有键的本地解释,并将这些本地解释相应的转换成远地解释,这就使得客户机软件与远地机器的交互,就如同坐在远程主机面前一样,从而避免了上述所提到的混乱。而那个唯一例外的键,可以使用户回到本地环境。
将远程登陆服务器设计为应用级软件,还有另一个要求,那就是需要操作系统提供对伪终端(pseudo terminal)的支持。我们用伪终端描述操作系统的入口点,它允许像Telnet服务器一样的程序向操作系统传送字符,并且使得字符像是来自本地键盘一样。只有使用这样的操作系统,才能将远程登陆服务器设计为应用级软件(比如Telnet服务器软件),否则,本地操作系统和远地系统传送将不能识别从对方传送过来的信息(因为它们仅能识别从本地键盘所键入的信息),远程登陆将宣告失败。
将远程登陆服务器设计为应用级软件虽然有其显著的优点:比将代码嵌入操作系统更易修改和控制服务器。但其也有效率不高的缺点(后面的内容将会给予解释),好在用户键入信息的速率不高,这种设计还是可以接受的。

3 远程登录的工作过程

使用Telnet协议进行远程登陆时需要满足以下条件:在本的计算机上必须装有包含Telnet协议的客户程序;必须知道远程主机的Ip地址或域名;必须知道登录标识与口令。
Telnet远程登录服务分为以下4个过程:
1)本地与远程主机建立连接。该过程实际上是建立一个TCP连接,用户必须知道远程主机的Ip地址或域名;
2)将本地终端上输入的用户名和口令及以后输入的任何命令或字符以NVT(Net Virtual Terminal)格式传送到远程主机。该过程实际上是从本地主机向远程主机发送一个IP数据报;
3)将远程主机输出的NVT格式的数据转化为本地所接受的格式送回本地终端,包括输入命令回显和命令执行结果;
4)最后,本地终端对远程主机进行撤消连接。该过程是撤销一个TCP连接。

上面的内容只是讨论了远程登陆最基本的东西,其中的复杂和编程人员的艰辛是我们难以想象的,不知道你在舒服的使用Telnet的同时,是否想到了这些!

三 Telnet协议

我们知道Telnet服务器软件是我们最常用的远程登录服务器软件,是一种典型的客户机/服务器模型的服务,它应用Telnet协议来工作。那么,什么是Telnet协议?它都具备哪些特点呢?

1 基本内容

Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议。应用Telnet协议能够把本地用户所使用的计算机变成远程主机系统的一个终端。它提供了三种基本服务:
1)Telnet定义一个网络虚拟终端为远的系统提供一个标准接口。客户机程序不必详细了解远的系统,他们只需构造使用标准接口的程序;
2)Telnet包括一个允许客户机和服务器协商选项的机制,而且它还提供一组标准选项;
3)Telnet对称处理连接的两端,即Telnet不强迫客户机从键盘输入,也不强迫客户机在屏幕上显示输出。

2 适应异构

为了使多个操作系统间的Telnet交互操作成为可能,就必须详细了解异构计算机和操作系统。比如,一些操作系统需要每行文本用ASCII回车控制符(CR)结束,另一些系统则需要使用ASCII换行符(LF),还有一些系统需要用两个字符的序列回车-换行(CR-LF);再比如,大多数操作系统为用户提供了一个中断程序运行的快捷键,但这个快捷键在各个系统中有可能不同(一些系统使用CTRL+C,而另一些系统使用ESCAPE)。如果不考虑系统间的异构性,那么在本地发出的字符或命令,传送到远地并被远地系统解释后很可能会不准确或者出现错误。因此,Telnet协议必须解决这个问题。
为了适应异构环境,Telnet协议定义了数据和命令在Internet上的传输方式,此定义被称作网络虚拟终端NVT(Net Virtual Terminal)。它的应用过程如下:
对于发送的数据:客户机软件把来自用户终端的按键和命令序列转换为NVT格式,并发送到服务器,服务器软件将收到的数据和命令,从NVT格式转换为远地系统需要的格式;
对于返回的数据:远地服务器将数据从远地机器的格式转换为NVT格式,而本地客户机将将接收到的NVT格式数据再转换为本地的格式。
对于NVT格式的详细定义,有兴趣的朋友可以去查找相关资料。

3 传送远地命令

我们知道绝大多数操作系统都提供各种快捷键来实现相应的控制命令,当用户在本地终端键入这些快捷键的时候,本地系统将执行相应的控制命令,而不把这些快捷键作为输入。那么对于Telnet来说,它是用什么来实现控制命令的远地传送呢?
Telnet同样使用NVT来定义如何从客户机将控制功能传送到服务器。我们知道USASCII字符集包括95个可打印字符和33个控制码。当用户从本地键入普通字符时,NVT将按照其原始含义传送;当用户键入快捷键(组合键)时,NVT将把它转化为特殊的ASCII字符在网络上传送,并在其到达远地机器后转化为相应的控制命令。将正常ASCII字符集与控制命令区分主要有两个原因:
1)这种区分意味着Telnet具有更大的灵活性:它可在客户机与服务器间传送所有可能的ASCII字符以及所有控制功能;
2)这种区分使得客户机可以无二义性的指定信令,而不会产生控制功能与普通字符的混乱。

6、如何远程登陆云主机?

1、Window操作系统:点击桌面的“开始”-点击“附件”-点击“远程桌面连接”。2、Linux和SolarisX86等操作系统:直接通过ssh连接。客服34为你解答。流量超市内商品应有尽有,流量包、加餐包、语音包、节日流量包可根据需求自由选择;中国电信贵州客服公众号回复关键词“流量超市”可以直接办理,方便快捷。

7、如何远程登录云主机?

远程登录云主机有两种方式可供选择,一是,电脑开始-程序-附件-通讯-远程桌面,然后输入您要登录的云主机的IP,用户名,和密码就行了,还有一种方式是:开始-运行-输入mstsc也会跳转到远程桌面,然后输入相应的信息就可以了。希望我的回答对您有帮助,如果还有关于服务器方面的疑问可以随时联系我。

8、Telnet怎样登陆到远程主机

1.首先要确定远程主机telnet服务开启,无论是Windows还是Linux都需要开启才允许另一台主机可以连接。
2.开启之后,就可以在命令窗口输入如:telnet 192.168.0.1。假如需要连接固定端口:telnet 192.168.0.1 22(ftp端口)
3.然后直接输入用户名和用户密码就可以了。

9、远程主机是啥

远程主机是远程登陆的计算机。计算机开了远程登录后,从其他电脑上可以远程登录此计算机。
远程不是字面意思的远距离,一般指通过网络控制远端电脑。早期的远程控制往往指在局域网中的远程控制而言,随着互联网和技术革新,就如同坐在被控端电脑的屏幕前一样,可以启动被控端电脑的应用程序,可以使用或窃取被控端电脑的文件资料,甚至可以利用被控端电脑的外部打印设备(打印机)和通信设备(调制解调器或者专线等)来进行打印和访问外网和内网,就像利用遥控器遥控电视的音量、变换频道或者开关电视机一样。不过,有一个概念需要明确,那就是主控端电脑只是将键盘和鼠标的指令传送给远程电脑,同时将被控端电脑的屏幕画面通过通信线路回传过来。也就是说,控制被控端电脑进行操作似乎是在眼前的电脑上进行的,实质是在远程的电脑中实现的,不论打开文件,还是上网浏览、下载等都是存储在远程的被控端电脑中的。
远程控制必须通过网络才能进行。位于本地的计算机是操纵指令的发出端,称为主控端或客户端,非本地的被控计算机叫做被控端或服务器端。“远程”不等同于远距离,主控端和被控端可以是位于同一局域网的同一房间中,也可以是连入Internet的处在任何位置的两台或多台计算机。
早期的远程控制大部分指的是电脑桌面控制,实际的远程控制用安卓,苹果,笔记本,电脑都可以控马路上的灯,能控连网的窗帘,能控电视机,能控DVD,能控摄像机,能控教室的投影机。指挥中心,大型会议室等普遍应用。
网连网智能指挥控制系统,窗帘,道路监控,高速公路监控的图像调度等。2013年物连网是十分宽大的控还有物流RFID识别的无线网。

10、怎么远程登录计算机并进行操作

为用户提供了在本地计算机上完成远程主机工作的能力。通过使用Telnet,Internet用户可以与全世界许多信息中心图书馆及其它信息资源联系。Telnet远程登录的使用主要有两种情况。第一种是用户在远程主祝上有自己的帐号(Account),即用户拥有注册的用户名和口令;第二种是许多Internet主机为用户提供了某种形式的公共Telnet信息资源,这种资源对于每一个Telnet用户都是开放的。Telnet是使用最为简单的Internet工具之一。

telnet /?

命令可以缩写。支持的命令为:

c- 关闭 关闭当前连接
d- 显示 显示操作参数
o- 打开主机名 [端口]连接到一个主机名(默认端口 23)
q- 退出 退出 telnet
set- 设置 设置选项(要列表,请键入 \'set ?\')
sen- 发送 将字符串送到服务器
st - 状态 打印状态信息
u- 解除设置 解除设置选项(要列表,请键入 \'unset ?\')
?/h- 帮助 打印帮助信息

一 摘要
二 远程登录
三 Telnet协议
四 Win2000的Telnet服务
五 在telnet中该做什么

一 摘要
Telnet的应用不仅方便了我们进行远程登录,也给hacker们提供了又一种入侵手段和后门,但无论如何,在你尽情享受Telnet所带给你的便捷的同时,你是否真正的了解Telnet呢?

二 远程登录

Telnet服务虽然也属于客户机/服务器模型的服务,但它更大的意义在于实现了基于Telnet协议的远程登录(远程交互式计算),那么就让我们来认识一下远程登录。

1 远程登陆的基本概念

先来看看什么叫登录:分时系统允许多个用户同时使用一台计算机,为了保证系统的安全和记帐方便,系统要求每个用户有单独的帐号作为登录标识,系统还为每个用户指定了一个口令。用户在使用该系统之前要输入标识和口令,这个过程被称为\'登录\'。
远程登陆是指用户使用Telnet命令,使自己的计算机暂时成为远程主机的一个仿真终端的过程。仿真终端等效于一个非智能的机器,它只负责把用户输入的每个字符传递给主机,再将主机输出的每个信息回显在屏幕上。

2 远程登陆的产生及发展

我们可以先构想一个提供远程文字编辑的服务,这个服务的实现需要一个接受编辑文件请求和数据的服务器以及一个发送此请求的客户机。客户机将建立一个从本地机到服务器的TCP连接,当然这需要服务器的应答,然后向服务器发送键入的信息(文件编辑信息),并读取从服务器返回的输出。以上便是一个标准而普通的客户机/服务器模型的服务。
似乎有了客户机/服务器模型的服务,一切远程问题都可以解决了。然而实际并非你想象的那样简单,如果我们仅需要远程编辑文件,那么刚才所构想的服务完全可以胜任,但假如我们的要求并不是这么简单,我们还想实现远程用户管理,远程数据录入,远程系统维护,想实现一切可以在远程主机上实现的操作,那么我们将需要大量专用的服务器程序并为每一个可计算服务都使用一个服务器进程,随之而来的问题是:远程机器会很快对服务器进程应接不暇,并淹没在进程的海洋里(我们在这里排除最专业化的远程机器)。
那么有没有办法解决呢?当然有,我们可以用远程登录来解决这一切。我们允许用户在远地机器上建立一个登录会话,然后通过执行命令来实现更一般的服务,就像在本地操作一样。这样,我们便可以访问远地系统上所有可用的命令,并且系统设计员不需提供多个专用地服务器程序。
问题发展到这里好像前途一片光明了,用远程登录总应该解决问题了吧,但要实现远程登陆并不简单。不考虑网络设计的计算机系统期望用户只从直接相连的键盘和显示器上登录,在这种机器上增加远程登陆功能需要修改机器的操作系统,这是极其艰巨也是我们尽量避免的。因此我们应该集中力量构造远程登陆服务器软件,虽然这样也是比较困难的。为什么说这样做也比较困难呢?
举个例子来说:一般,操作系统会为一些特殊按键分配特殊的含义,比如本地系统将\'Ctrl+C\'解释为:\'终止当前运行的命令进程\'。但假设我们已经运行了远程登陆服务器软件,\'Ctrl+C\'也有可能无法被传送到远地机器,如果客户机真的将\'Ctrl+C\'传到了远地机器,那么\'Ctrl+C\'这个命令有可能不能终止本地的进程,也就是说在这里很可能会产生混乱。而且这仅仅是遇到的难题之一。
但尽管有技术上的困难,系统编程人员还是设法构造了能够应用于大多数操作系统的远程登陆服务器软件,并构造了充当客户机的应用软件。通常,客户机软件取消了除一个键以外的所有键的本地解释,并将这些本地解释相应的转换成远地解释,这就使得客户机软件与远地机器的交互,就如同坐在远程主机面前一样,从而避免了上述所提到的混乱。而那个唯一例外的键,可以使用户回到本地环境。
将远程登陆服务器设计为应用级软件,还有另一个要求,那就是需要操作系统提供对伪终端(pseudo terminal)的支持。我们用伪终端描述操作系统的入口点,它允许像Telnet服务器一样的程序向操作系统传送字符,并且使得字符像是来自本地键盘一样。只有使用这样的操作系统,才能将远程登陆服务器设计为应用级软件(比如Telnet服务器软件),否则,本地操作系统和远地系统传送将不能识别从对方传送过来的信息(因为它们仅能识别从本地键盘所键入的信息),远程登陆将宣告失败。
将远程登陆服务器设计为应用级软件虽然有其显著的优点:比将代码嵌入操作系统更易修改和控制服务器。但其也有效率不高的缺点(后面的内容将会给予解释),好在用户键入信息的速率不高,这种设计还是可以接受的。

3 远程登录的工作过程

使用Telnet协议进行远程登陆时需要满足以下条件:在本的计算机上必须装有包含Telnet协议的客户程序;必须知道远程主机的Ip地址或域名;必须知道登录标识与口令。
Telnet远程登录服务分为以下4个过程:
1)本地与远程主机建立连接。该过程实际上是建立一个TCP连接,用户必须知道远程主机的Ip地址或域名;
2)将本地终端上输入的用户名和口令及以后输入的任何命令或字符以NVT(Net Virtual Terminal)格式传送到远程主机。该过程实际上是从本地主机向远程主机发送一个IP数据报;
3)将远程主机输出的NVT格式的数据转化为本地所接受的格式送回本地终端,包括输入命令回显和命令执行结果;
4)最后,本地终端对远程主机进行撤消连接。该过程是撤销一个TCP连接。

上面的内容只是讨论了远程登陆最基本的东西,其中的复杂和编程人员的艰辛是我们难以想象的,不知道你在舒服的使用Telnet的同时,是否想到了这些!

三 Telnet协议

我们知道Telnet服务器软件是我们最常用的远程登录服务器软件,是一种典型的客户机/服务器模型的服务,它应用Telnet协议来工作。那么,什么是Telnet协议?它都具备哪些特点呢?

1 基本内容

Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议。应用Telnet协议能够把本地用户所使用的计算机变成远程主机系统的一个终端。它提供了三种基本服务:
1)Telnet定义一个网络虚拟终端为远的系统提供一个标准接口。客户机程序不必详细了解远的系统,他们只需构造使用标准接口的程序;
2)Telnet包括一个允许客户机和服务器协商选项的机制,而且它还提供一组标准选项;
3)Telnet对称处理连接的两端,即Telnet不强迫客户机从键盘输入,也不强迫客户机在屏幕上显示输出。

2 适应异构

为了使多个操作系统间的Telnet交互操作成为可能,就必须详细了解异构计算机和操作系统。比如,一些操作系统需要每行文本用ASCII回车控制符(CR)结束,另一些系统则需要使用ASCII换行符(LF),还有一些系统需要用两个字符的序列回车-换行(CR-LF);再比如,大多数操作系统为用户提供了一个中断程序运行的快捷键,但这个快捷键在各个系统中有可能不同(一些系统使用CTRL+C,而另一些系统使用ESCAPE)。如果不考虑系统间的异构性,那么在本地发出的字符或命令,传送到远地并被远地系统解释后很可能会不准确或者出现错误。因此,Telnet协议必须解决这个问题。
为了适应异构环境,Telnet协议定义了数据和命令在Internet上的传输方式,此定义被称作网络虚拟终端NVT(Net Virtual Terminal)。它的应用过程如下:
对于发送的数据:客户机软件把来自用户终端的按键和命令序列转换为NVT格式,并发送到服务器,服务器软件将收到的数据和命令,从NVT格式转换为远地系统需要的格式;
对于返回的数据:远地服务器将数据从远地机器的格式转换为NVT格式,而本地客户机将将接收到的NVT格式数据再转换为本地的格式。
对于NVT格式的详细定义,有兴趣的朋友可以去查找相关资料。

3 传送远地命令

我们知道绝大多数操作系统都提供各种快捷键来实现相应的控制命令,当用户在本地终端键入这些快捷键的时候,本地系统将执行相应的控制命令,而不把这些快捷键作为输入。那么对于Telnet来说,它是用什么来实现控制命令的远地传送呢?
Telnet同样使用NVT来定义如何从客户机将控制功能传送到服务器。我们知道USASCII字符集包括95个可打印字符和33个控制码。当用户从本地键入普通字符时,NVT将按照其原始含义传送;当用户键入快捷键(组合键)时,NVT将把它转化为特殊的ASCII字符在网络上传送,并在其到达远地机器后转化为相应的控制命令。将正常ASCII字符集与控制命令区分主要有两个原因:
1)这种区分意味着Telnet具有更大的灵活性:它可在客户机与服务器间传送所有可能的ASCII字符以及所有控制功能;
2)这种区分使得客户机可以无二义性的指定信令,而不会产生控制功能与普通字符的混乱。

与登录远程主机相关的知识