webssh

使用纯Java实现一个WebSSH项目

試著忘記壹切 提交于 2020-03-14 15:14:02
前言 最近由于项目需求,项目中需要实现一个WebSSH连接终端的功能,由于自己第一次做这类型功能,所以首先上了GitHub找了找有没有现成的轮子可以拿来直接用,当时看到了很多这方面的项目,例如:GateOne、webssh、shellinabox等,这些项目都可以很好地实现webssh的功能,但是最终并没有采用,原因是在于这些底层大都是python写的,需要依赖很多文件,自己用的时候可以使用这种方案,快捷省事,但是做到项目中供用户使用时,总不能要求用户做到服务器中必须包含这些底层依赖,这显然不太合理,所以我决定自己动手写一个WebSSH的功能,并且作为一个独立的项目开源出来。 技术选型 由于webssh需要实时数据交互,所以会选用长连接的WebSocket,为了开发的方便,框架选用SpringBoot,另外还自己了解了Java用户连接ssh的jsch和实现前端shell页面的xterm.js. 所以,最终的技术选型就是 SpringBoot+Websocket+jsch+xterm.js。 导入依赖 一个简单的xterm案例 由于xterm是一个冷门技术,所以很多同学并没有这方面的知识支撑,我也是为了实现这个功能所以临时学的,所以在这给大家介绍一下。 xterm.js是一个基于WebSocket的容器,它可以帮助我们在前端实现命令行的样式

阿里聚石塔部署前后端分离项目

若如初见. 提交于 2020-01-09 10:24:51
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 1. 阿里聚石塔控制台 登录聚石塔账号,进入 控制台>开发运维>服务列表,在服务列表可以查看已创建部署的服务;聚石塔提供一整套完整的运维部署解决方案,列表服务支持停止开启服务,上传部署,编译部署,支持历史版本部署,监控,SSH等。 这里是前后端分离项目,Vue.js 前端项目 + SpringBoot 后端项目,后端项目Maven 管理打 WAR 包,前端项目 Yarn 管理。 2. 后端项目打包部署 2.1 mvn package 打 war 包 2.2 创建服务 Tomcat 选择镜像-服务配置-环境变量-确认创建 选择镜像 此处 SpringBoot 项目打 WAR 包部署在 Tomcat,根据实际项目选择版本,此处选择 Tomcat8.5.38 服务配置 自定义服务标题名称; 绑定已创建应用及 appKey; 选择容器规格,支持自定义规格; 选择要部署在的云服务器,服务器实际部署容器数量设置为 1 个; 环境配置 网络配置设置服务访问域名;这里仅配置了域名,后端项目提供域名,前端项目配置访问后端项目接口的域名为该域名后打包 确认创建 勾选立即启动,创建服务完成 2.3 上传部署 创建服务后,在服务列表可以找到该服务;当服务较多时可以创建分组标签,对服务进行编辑分组。 找到服务,选择上传部署;

CentOS6.8 安装webssh

╄→гoц情女王★ 提交于 2019-12-09 15:17:10
  广义上来说,webssh泛指一种技术可以在网页上实现一个SSH终端。从而无需Xshell之类的模拟终端工具进行SSH连接,将SSH这一比较低层的操作也从C/S架构扭成了B/S架构。   能实现webssh的组件有好几种,但归根结底都是建立在客户端和服务端的即时通信上,有一些webssh只停留在这一层,表明客户端接入的ssh界面只是服务端本身的后台;另一种稍微高级一点的,将webssh做成一个通用的服务,网页上的ssh界面其实就和XShell一样,可以连接任何服务器可以连通的机器。由于一般服务器都会安装有ssh客户端软件,所以两者之间硬要说有很明显的区别其实也没有。 本文主要说一下webssh在CentOS6.8上的安装及使用,webssh的github地址: https://github.com/huashengdun/webssh 1 . 根据github上的说明,需要python的版本在2.7以上,而CentOS6.8系统自身带的python版本是2.6.6,那么首先就需要升级python的版本,具体升级步骤可参考 https://my.oschina.net/Declan/blog/3032270 2. python版本升级之后就可以按照webssh的说明进行pip安装了。 1)安装 sudo pip install webssh 2)安装完之后