温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

不安装Xshell、Xftp如何远程操作服务器

发布时间:2021-11-30 09:22:12 来源:亿速云 阅读:211 作者:小新 栏目:服务器

小编给大家分享一下不安装Xshell、Xftp如何远程操作服务器,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

前言

之前讲过,我现在在一家国企上班,由于集团网络环境是封闭的内网,平时的部署上线,日志排查是通过一个跳板堡垒机去连接内网机器,大致情况如下图:

不安装Xshell、Xftp如何远程操作服务器

以及联想到Alibaba开源的Java诊断工具Arthas,其Web Console在浏览器上就可以执行命令,操作简单,界面也非常的nice。

不安装Xshell、Xftp如何远程操作服务器

然后就想着去实现一个自己的Web SSH,去探究其内部的原理。

实现

webssh泛指一种技术可以在网页上实现一个SSH终端。从而无需Xshell之类的模拟终端工具进行SSH连接,将SSH这一比较低层的操作也从C/S架构扭成了B/S架构。

工作原理

+---------+     http     +--------+    ssh    +-----------+ | browser | <==========> | webssh | <=======> | ssh server| +---------+   websocket  +--------+    ssh    +-----------+
  • WebSocket长连接,用于指令发送和响应的实时交互

  • xterm.js是一个基于WebSocket的容器,它可以帮助我们在前端实现命令行的样式。

  • JSch是SSH2的一个纯Java实现。它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等。

实现功能

  • 命令执行

  • 文件上传/下载

相关代码

依赖

<parent>     <groupId>org.springframework.boot</groupId>     <artifactId>spring-boot-starter-parent</artifactId>     <version>2.3.7.RELEASE</version>     <relativePath /> <!-- lookup parent from repository --> </parent> <dependencies>     <!-- Web相关 -->     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter-web</artifactId>     </dependency>     <!-- jsch支持 -->     <dependency>         <groupId>com.jcraft</groupId>         <artifactId>jsch</artifactId>         <version>0.1.54</version>     </dependency>     <!-- WebSocket 支持 -->     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter-websocket</artifactId>     </dependency> </dependencies>

相关截图

登录

不安装Xshell、Xftp如何远程操作服务器

命令执行

不安装Xshell、Xftp如何远程操作服务器

文件列表、删除、下载

不安装Xshell、Xftp如何远程操作服务器

文件上传

不安装Xshell、Xftp如何远程操作服务器

由于相关实现较为简单,只要看下JSch和xterm.js即可实现,还能自由扩展相关功能。

以上是“不安装Xshell、Xftp如何远程操作服务器”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI