周三下午,我在GNS3里搭了四台路由器,想验证一个教科书上的说法。三小时后,我在Wireshark的报文流里完整读出了自己的登录密码——明文,一字不差。那一刻,文档里的"Telnet不安全"突然有了具体的形状。
实验拓扑很简单:R1作为管理节点,通过Telnet远程配置R2、R3、R4。我提前在所有链路上启动了抓包,这是新手最容易忽略的步骤——必须在配置前就开启捕获,否则你会错过最初的握手过程。
打开网易新闻 查看精彩图片
R2的配置暴露了Telnet的全部风险。VTY线路(虚拟终端线路0-4)是远程连接的入口,我设置了enable密码和线路密码都是"cisco",然后显式指定transport input telnet。这意味着R2的23号端口开始监听明文连接请求。
当我从R1 Telnet到R2并输入密码时,Wireshark的TCP流追踪显示了什么?完整的会话内容:用户名、密码、每一条配置命令,全部以可读的ASCII字符躺在报文里。没有任何加密,没有哈希,没有混淆。如果网络中有ARP欺骗攻击者,或者任何一个节点被植入嗅探工具,这些凭证就是白送的。
对比测试SSH时,同样的操作在22号端口上呈现完全不同的景象。RSA密钥对建立会话加密后,Wireshark里只剩下一串无法解析的乱流。攻击者即使截获报文,拿到的也只是无意义的密文。
这个实验的教训很直白:Port 23和Port 22的区别不是"更好"与"够用",而是"裸奔"与"穿衣"。文档告诉你SSH更安全,但亲眼看到自己的密码躺在报文里,你才会真正理解为什么生产环境必须禁用Telnet。
热门跟贴