前言
这几天研究了一下如何在web页面上通过telnet 连接一个远程的机器,通过命令行进行控制,让然,B/S架构的项目,如果直接通过
浏览器是无法和远程机器进行通信的,我们就得借助后端来帮助实现这样的一个功能需求,具体的实现逻辑是:
用户————>控制浏览器命令行界面————>发送命令到后端服务器————>后端服务器连接socket————>推送用户的命令
telnet Server ————>后端服务器输入流接受返回字符——————>websocket 推送到前端完成交互
telnet
可能很多人都知道ssh,估计很少会了解到关于telnet的东西,但是又结合起来说,其实两个都是一种协议,可以远程操控,
但是telnet 在传输过程中存在着不安全的因素,因为传输都未经过加密,而都是明文,这就在远程连接中,很容易就会被抓包,出现问题,
但SSH 就好比是加强版的telnet ,在传输过程中的数据进行加密,进而减少了被盗取的风险。并且所有的SSH都是经过压缩的,在网络上的
传输速率也很优秀,这样多方面优秀的情况下,自然而然的就会代替掉telnet
并不是这样说telnet 就没什么用了,也不是这样子的,我们通过搭建这样一个demo 学习的是这样的搭建过程中去了解建立连接的过程以及交互的过程
同样的,就算改编成SSH 其实也是这样的一个过程,学习就是一个不断探索的过程
开始
后端的话,从Springboot 入手,快速的搭建一个web工程,我们主要用这个web工程来接受前端发送过来的命令请求。
包括:连接、断开、发送命令等等。
最主要的,就是采用commons-net包下面的TelnetClient
<dependency> <groupId>commons-net</groupId> <artifactId>commons-net</artifactId> <version>3.6</version> </dependency