Telnet过程数据包捕获

et协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个telnet会话,必须输入用户名和密码来登录服务器。Telnet是常用的远程控制Web服务器的方法。
本次是基于本地通过telnet连接到同个局域网下的另一台主机来进行wireshark抓包实验。
一、telnet操作截图
————————————————
版权声明:本文为CSDN博主「ancientmoondjay」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ancientmoondjay/article/details/70946175

 

可以看到,目标主机的ip地址是192.168.10.132,用户名是abc。

二、过程分析
当本地输入命令”telnet 192.168.10.132”时,wiresharl抓包如下:

可以看到,先进行了TCP三次握手建立起连接。(三次握手以及四次挥手的详细过程请看我上一篇博客。)目的端口号是23。
TCP连接建立之后,主机和虚拟机相互交换一些信息,并且间断使用TCP包保持连接。
当双方信息得到确认后,主机在CMD发生中断,接收用户输入。

主机输入一个字符就发送一个Telnet报文,然后远程返回一个应答,之后主机发送一个TCP响应报文。
三个一组:Telnet Telnet TCP

 

输入用户名并回车后,远端立即回送一个\r\npassword:要求输入密码。

 

 

密码输入过程和用户名输入过程稍有不同。
密码输入时一个字符产生两个包,一个是telnet,一个是tcp包。密码采用明文传输。
如图,远程主机的密码和用户名一样,都是abc。

完成密码输入后,服务端验证成功后发送欢迎消息。

这就相当于用telnet登陆远程主机成功了。之后就可以在命令行里输命令了。比如我输的是ls。这和之前输入用户名一样,需要两个telnet报文和一个tcp报文。

完成输入后回车,服务端执行命令并作出回应。

当输入exit命令后,通过tcp断开连接时的四次挥手,与远程服务器断开连接。

 

 

 

 

 

 

你可能感兴趣的