曾几何时,Telnet是我最喜欢的远程登录协议!
当年还年轻,还在H公司做网络测试的工作,天天千方百计的找路由器和交换机的BUG,总想给开发人员添堵,总想搞事情、不想让版本正常发布:),现在回想起来,那真是一段单纯而美好的时光!
为了对交换机和路由器进行管理,当时我们都是使用Telnet登录的,各种命令敲的很High。突然有一天,我们的部门经理(现在担任H公司高管)专门把我们召集起来,让我们以后登录设备时,禁止使用Telnet,要切换为SSH,自动化平台的连接也要全部换成SSH!
这让我们很惊讶,因为Telnet已经用很久了,整个部门的测试系统登录都是基于Telnet的,大家都已经习惯了!后来才知道因为发生了某个泄密事件(具体内容忘了),所以公司要求即使在内部登录设备时,也不能使用Telnet,必须使用更安全的SSH!然后整个部门就切换了!
后来离开H公司,到别的公司以后,发现大家虽然都知道Telnet不安全,但是还都在使用。因为Telnet配置起来比SSH更方便,而人都是有惰性的,多走一步路都不愿意,当然喜欢使用Telnet!估计只有现网的设备才会禁止使用Telnet。
后来学了一点安全知识,才理解H公司强制要求的苦心,原来Telnet真的不安全,有心人可以轻易的获取登录设备的用户名和密码,今天就和大家一起看一下!
简单的了解一下Telnet的C/S工作模式
C/S工作模式,小伙伴听起来有没有感觉很高大上?我就曾经被唬住,感觉C/S模式是一种非常高深的架构!后来还专门查了资料,才搞清楚C/S工作模式是什么。
我们来看看下图的C/S工作模式,做好大跌眼镜的准备
![3cce9203b5e9b3bb859cfe619e2c69ec.png](https://i-blog.csdnimg.cn/blog_migrate/4504b0c671e556fa3563961485e2ab01.jpeg)
C/S工作模式
- C:client,客户端;
- S:server,服务器。
客户端和服务器之间交换信息,只要客户端使用单独软件访问服务器的工作模式,都可以称为C/S模式!是不是没有想到呢?
与C/S模式相对应的是B/S模式,如下图所示:
![684064e338f94f5a49bc1e5c601e7013.png](https://i-blog.csdnimg.cn/blog_migrate/8ca91dfa405f7ad91d6fa144749c5542.jpeg)
B/S工作模式
- B:brower,浏览器
- S: server,服务器
看完上图和B、S的解释,小伙伴应该能猜出B/S模式是什么了吧?客户端和服务器之间交换信息,只要是通过浏览器访问server的模式,都称为B/S模式!是不是感觉不淡定,感觉太简单了:)
那我们言归正传,既然Telnet采用的C/S模式,就是说Telnet客户端需要第三方软件才行。我们通常会使用window自带的CMD、SecureCRT、XShell、Putty等软件作为Telnet客户端,去连接Telnet服务器!
![13c0fb3b85c4440a64d80e8223222dc5.png](https://i-blog.csdnimg.cn/blog_migrate/b2fb0bef6b082be8623714aa4bcd3a2a.jpeg)
SecureCRT界面
网络工程师最常用的就是SecureCRT了,简直就是敲命令行的必备利器啊!如果安装和使用SecureCRT有疑问,可以到我的专栏去看看,有一节是专门介绍SecureCRT的视频教程。
查看Telnet的用户名密码
看过了Telnet的工作模式以后,下面就带领大家一起来查看用户名密码了!
那用什么工具来查看用户名和密码呢?wireshark软件!
Wireshark是一个抓包软件,是网络工程师排除问题的必备软件,如果没有使用过,可以参考我之前录制的视频:Wireshark简单使用。
要获取Telnet的用户名、密码,只需要经过下面的三个步骤:
- 第一步:打开wireshark软件,抓取经过网卡的报文;
- 第二步:使用Telnet客户端,登录网络设备;
- 第三步:停止wireshark抓包,分析报文,找出用户名和密码。
步骤一:打开wireshark软件,抓取所有经过网卡的报文
在电脑上安装了wireshark软件,打开就可以看到下图的的软件界面:
![33bf7e178aa601208ac25ae9ebb1ce70.png](https://i-blog.csdnimg.cn/blog_migrate/fe1ecec4781493df1b65a1ce5fd062be.jpeg)
wireshark软件界面
选择正确的网卡:如果有多块网卡,需要选择抓包的网卡,
![0a9539da0154338c2019283b7d4ce74e.png](https://i-blog.csdnimg.cn/blog_migrate/0fda93c6ce6fb51cdccdddae2cf5b885.jpeg)
选择正确的网卡
点击开始以后,就会开始抓包:如下图所示,正在抓包中
![75f5d49b79f933c99003ba5cb36c0c9a.png](https://i-blog.csdnimg.cn/blog_migrate/54245322d18c1a37e0000f39e6a33f91.jpeg)
抓包中
步骤二:使用Telnet客户端,登录Telnet服务器
打开SecureCRT软件,新建一个连接,选择Telnet协议,如下图所示:
![f167b96e8b940e19f79b321f929ce758.png](https://i-blog.csdnimg.cn/blog_migrate/b7bbc266fd78d94e7f9dbdc59ec6b430.jpeg)
选择Telnet协议
输入Telnet服务器的IP地址或主机名:
![a57d2ddd13e68bfd0545fe101e6dbbd5.png](https://i-blog.csdnimg.cn/blog_migrate/3cce2de24695e363d1acf82bcf1cede5.jpeg)
服务器IP地址或者主机名
给创建的会话起一个名字:
![3da0a74fb4b3bfa6d2a0d4e2c21deeba.png](https://i-blog.csdnimg.cn/blog_migrate/b165968860013d1c266a497e94f89289.jpeg)
会话名称
双击会话名称,会自动的连接失败,并提示输入用户名和密码:
![a71ec37bdf01a0ffc133429fc56d4d8d.png](https://i-blog.csdnimg.cn/blog_migrate/98c904ab4a0af06be35575f7ef71ef06.jpeg)
提示输入用户名和密码
不过华为的设备会提示:Telnet是不安全的,不建议使用,原文如下:
Warning: Telnet is not a secure protocol, and it is recommended to use Stelnet.
我们当然不能被吓到,否则今天的课程就没有办法继续下去了,我们按照提示输入用户名和密码:
![06aaa9899d398e8e054f0124f05f8fbd.png](https://i-blog.csdnimg.cn/blog_migrate/6b2e1756e8e271b97cb2f178ac603d0e.jpeg)
输入用户名和密码
步骤三:使用wireshark找出用户名和密码
在我们停止抓包以后,会发现我们已经抓取了大量的报文,不知道如何入手。其实很简单,只需要在上面的过滤器输入telnet即可,wireshark会把协议属于telnet的报文过滤出来,如下图:
![c96fe80f021b84fbbfdeeb84a5b9f0c4.png](https://i-blog.csdnimg.cn/blog_migrate/98197b8e1f085bf3837449a9b79ae8bf.jpeg)
过滤出Telnet报文
过滤以后,就没有多少报文了,可以一个一个的报文查找,用户名和密码就藏这些报文里面。也可以使用wireshark的“追踪流”功能,它会把这条流量的所有内容都显示出来。如下图,右键选中一个报文以后,然后选择追踪TCP流:
![5f2de004b73e3d7e920477da22b2bdb9.png](https://i-blog.csdnimg.cn/blog_migrate/a9b81488487cb19d95d00d864e2f4e71.jpeg)
追踪流
Wireshark就会把属于这条TCP连接的所有内容都显示出来(Telnet使用TCP传输),如下图:
![78c51c2d4fd40f5faaac2c447e84ba6e.png](https://i-blog.csdnimg.cn/blog_migrate/70baef53e3c182869b78d7a3141b6879.jpeg)
显示用户名、密码
你看是不是比较坑爹,用户名/密码直接就显示出来了!是不是比较简单呢,不需要掌握什么高深的技术就可以轻易获取Telnet的用户名/密码了!
当然有心人是不会在你电脑上抓包的,他会在网络中间抓包。这个对他们不是什么困难的事情,例如下图:
![5654fc4f14aa87c9a6759b8ffc45c8ae.png](https://i-blog.csdnimg.cn/blog_migrate/4f12559e95d850d8920b0f32069bbefe.jpeg)
有心人抓包
他们的抓包设备和分析软件会更专业,如果获取现网设备的用户名/密码,就可以对设备进行任何的配置了,想想都可怕!所以我们还是不要使用telnet的好,养成使用SSH的习惯!
总结
各位小伙伴经过上面的解释,知道C/S工作原理和Telnet不安全的原因了吧?我来作一下简单的总结:
- 使用第三方客户端连接服务器的工作模式叫做C/S模式;
- 使用浏览器连接服务器的工作模式叫做B/S模式;
- Telnet之所以不安全,是因为客户端和服务器之间交互的报文是没有加密的,可以被有心人轻易的找出用户名和密码。
各位小伙伴现在登录设备时,使用的是哪种方式登录呢?来投个票吧!
最后给大家推荐一个思科模拟器的使用教程,学习网络必备的哦!