远程登录的根本目的:远端用户可以像本地用户一样访问远地系统的资源
1:服务模式
1) 远程登录协议运行于TCP 协议上,在终端处运行有Telnet客户进程
2) 远地计算机系统处有一服务器进程tlntsvr
3) 客户进程和服务器进程通过一条TCP 连接进行交互
2:Telnet原理
1) 服务过程
a) 远端用户在终端上对系统进行远程登录,该远程登录的内部视图实际上是一个TCP 连接
b) 将远地终端上的键盘输入逐键传到主机系统
c) 将主机系统的输出送回本地系统
2) 网络虚终端(NVT)
a) 系统间的异构性表现不同的系统对键盘输入的解释各不相同,为了统一异构系统对键盘输入的解释,Telnet专门提供的一种标准键盘定义方式
b) 基本思想:各种与设备相关的数据格式映射到某个约定好的且与设备独立的数据格式,以封装屏蔽设备的异构性
c) 由客户端软件和服务器端软件实现
d) 控制命令的发送:依次发送SYNCH 命令->控制命令->DMARK 命令,这样将控制命令与一般数据分开,即采用所谓的带外信号传输
e) 采用了转义序列【两个字节构成,前一个字节是0xff】的办法将Telnet 命令和普通数据区分开来
3) 选项协商
a) 在建立起NVT通信之前协商
b) 发起方需要发送三个字节的命令:一个IAC 字节,接着一个字节是选项协商命令,最后一个字节是本次协商要激活或禁止的具体选项ID
c) 响应方的格式是四种类型之一:WILL/DO/WON’T/DON’T
d) 子选项协商:有些选项不是仅仅用“激活”或“禁止”就能够表达的,需要携带额外的参数
3:rlogin:比Telnet简单,不需要选项协商机制
1) 信任主机
2) 自动授权机制
3) 自动授权机制还可用于通用程序执行