溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

不安裝Xshell、Xftp如何遠程操作服務器

發(fā)布時間:2021-11-30 09:22:12 來源:億速云 閱讀:227 作者:小新 欄目:服務器

小編給大家分享一下不安裝Xshell、Xftp如何遠程操作服務器,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

前言

之前講過,我現(xiàn)在在一家國企上班,由于集團網(wǎng)絡環(huán)境是封閉的內(nèi)網(wǎng),平時的部署上線,日志排查是通過一個跳板堡壘機去連接內(nèi)網(wǎng)機器,大致情況如下圖:

不安裝Xshell、Xftp如何遠程操作服務器

以及聯(lián)想到Alibaba開源的Java診斷工具Arthas,其Web Console在瀏覽器上就可以執(zhí)行命令,操作簡單,界面也非常的nice。

不安裝Xshell、Xftp如何遠程操作服務器

然后就想著去實現(xiàn)一個自己的Web SSH,去探究其內(nèi)部的原理。

實現(xiàn)

webssh泛指一種技術可以在網(wǎng)頁上實現(xiàn)一個SSH終端。從而無需Xshell之類的模擬終端工具進行SSH連接,將SSH這一比較低層的操作也從C/S架構(gòu)扭成了B/S架構(gòu)。

工作原理

+---------+     http     +--------+    ssh    +-----------+ | browser | <==========> | webssh | <=======> | ssh server| +---------+   websocket  +--------+    ssh    +-----------+
  • WebSocket長連接,用于指令發(fā)送和響應的實時交互

  • xterm.js是一個基于WebSocket的容器,它可以幫助我們在前端實現(xiàn)命令行的樣式。

  • JSch是SSH2的一個純Java實現(xiàn)。它允許你連接到一個sshd 服務器,使用端口轉(zhuǎn)發(fā),X11轉(zhuǎn)發(fā),文件傳輸?shù)鹊取?/p>

實現(xiàn)功能

  • 命令執(zhí)行

  • 文件上傳/下載

相關代碼

依賴

<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如何遠程操作服務器

命令執(zhí)行

不安裝Xshell、Xftp如何遠程操作服務器

文件列表、刪除、下載

不安裝Xshell、Xftp如何遠程操作服務器

文件上傳

不安裝Xshell、Xftp如何遠程操作服務器

由于相關實現(xiàn)較為簡單,只要看下JSch和xterm.js即可實現(xiàn),還能自由擴展相關功能。

以上是“不安裝Xshell、Xftp如何遠程操作服務器”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)
AI