开源Spring Boot版本WebSSH:轻松在浏览器中管理SSH和FTP

介绍

WebSSH 是一个轻量级的开源ssh工具,只需安装在服务端,就可以通过浏览器访问SSH和FTP。它支持文件和日志高亮显示,Vim 和 Top 命令,实时查看日志,并且操作体验与标准的 Shell 基本相同。WebSSH 支持多会话、文件上传下载、编码切换(GBK、UTF-8),以及自定义快捷键。您可以通过 Starter 方式将其集成到 Spring Boot 项目中,或通过内部的 Iframe 集成到您的项目中。

技术

  • Java
  • Spring Boot
  • WebSocket
  • HTML
  • xterm.js

特性

  • 浏览器内 SSH 和 FTP 访问
  • 支持文件和日志高亮显示
  • 支持 Vim 和 Top 命令
  • 实时查看日志
  • 支持多会话
  • 文件上传下载功能
  • 支持编码切换(GBK、UTF-8)
  • 自定义快捷键

项目地址

GitHub地址:https://github.com/terrybg/webssh
Gitee地址:https://gitee.com/zgbd/webssh
欢迎大家访问我的GitHub和Gitee页面,了解更多关于WebSSH的信息,并且参与贡献!

项目功能展示

登录webssh
在这里插入图片描述

查看文件 以及命令行
在这里插入图片描述

上传服务器文件,下载文件
在这里插入图片描述

快捷键
在这里插入图片描述

使用

开启后在浏览器中打开 http://localhost:9092/webssh/page/index.html,即可使用 WebSSH。

后续迭代方向

  • Go版本
  • 前端改造成Vue3 + Vite

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/390361.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Git】git 从入门到实战系列(二)—— git 介绍以及安装方法 (文末附带视频录制操作步骤)

文章目录 一、前言二、git 是什么三、版本控制系统是什么四、本地 vs 集中式 vs 分布式本地版本控制系统集中式版本控制系统分布式版本控制系统 五、安装 git 一、前言 本系列上一篇文章【Git】git 从入门到实战系列(一)—— Git 的诞生,Lin…

【2024蓝桥杯/C++/B组/小球反弹】

题目 分析 Sx 2 * k1 * x; Sy 2 * k2 * y; (其中k1, k2为整数) Vx * t Sx; Vy * t Sy; k1 / k2 (15 * y) / (17 * x); 目标1:根据k1与k2的关系,找出一组最小整数组(k1, k2)&#xff…

NLP-使用Word2vec实现文本分类

Word2Vec模型通过学习大量文本数据,将每个单词表示为一个连续的向量,这些向量可以捕捉单词之间的语义和句法关系。本文做文本分类是结合Word2Vec文本内容text,预测其文本标签label。以下使用mock商品数据的代码实现过程过下: 1、…

PCL从理解到应用【08】 点云特征 | 法线估计 | 主曲率估计

前言 在PCL中,有多种方法和函数可以用来提取点云特征,本文介绍几何特征。 其中,几何特征主要包括法线估计和主曲率估计。 这些特征能够描述点云表面的几何形状,常用于进一步的点云处理和分析,如配准、分割和物体识别…

利用canvas 实现图片的标注,把标注像素点传入到后端

背景:我们有一个摄像的产品,拍照传统的水表盘面,我们需要框选水表读数,标注点传到后端,后端根据标注点自动去截取摄像表拍摄回来的图片,然后拿到大模型里面进行训练。由于同一只表拍摄的画面都是一样的&…

【时时三省】unity test 测试框架 使用 code blocks 移植

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 目录 1,使用 Code::Blocks 17.12 创建工程 2,移植文件至该工程下: 移入的文件为: 被移入的文件介绍: 更改代码: 向工程添加文…

k8s 部署RuoYi-Vue-Plus之ingress域名解析

可参看https://blog.csdn.net/weimeibuqieryu/article/details/140798925 搭建ingress 1.创建Ingress对象 ingress-ruoyi.yaml其中host替换为你对应域名,需要解析域名到服务器, 同时为后端服务添加了二级域名解析 api. 访问http://xxx.xyz/就能访问前端&#xff0…

力扣SQL50 修复表中的名字 字符串函数

Problem: 1667. 修复表中的名字 👨‍🏫 参考题解 select user_id, CONCAT(UPPER(left(name, 1)), LOWER(RIGHT(name, length(name) - 1))) as name from Users order by user_id

【Linux系统编程】:进程地址空间1

1.引出进程地址空间 因为str指向的是字符串首字母的地址,首字母是字符常量“h”,地址存储在字符常量区,无法修改,故报错。 Linux进程地址空间与进程内存布局详解 - 知乎 (zhihu.com) 我们编写一段代码,来认识一下存储…

JavaWeb学习——mybatis

目录 一、入门学习 1、什么是mybatis? 2、入门使用 3、配置SQL提示 4、数据库连接池 5、lombok 二、基础操作学习 1、删除 2、新增 3、更新 4、查询 三、XML配置文件 1、映射规范 2、示例代码展示 四、动态SQL 1、学习 2、学习 3、学习 4、学习 一…

Django文件上传

【图书介绍】《Django 5企业级Web应用开发实战(视频教学版)》_django 5企业级web应用开发实战(视频教学版)-CSDN博客 《Django 5企业级Web应用开发实战(视频教学版)》(王金柱)【摘要 书评 试读】- 京东图书 (jd.com) 本节主要介…

算法力扣刷题记录 六十三【回溯章节开篇】

前言 开始回溯章节学习。 在二叉树中预先体会了回溯。那么回溯单独来说是怎么回事? 一、基础知识学习 回溯基础知识参考链接 二、组合问题 2.1题目阅读 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答…

【C++入门(上)】—— 我与C++的不解之缘(一)

前言: 学完C语言和初阶数据结构,感觉自己又行了? 接下来进入C的学习,准备好接受头脑风暴吧。 一、第一个C程序 C 的第一个程序,梦回出学C语言,第一次使用C语言写代码;这里使用C写第一个C代码。 …

对优先级队列(堆)的理解

目录: 一. 优先级队列: 二. 优先级队列的模拟实现: 三.常用接口介绍: 一. 优先级队列: 1 概念: 队列是一种先进先出的数据结构,但有些情况下,操作的数据可能带有优先级,一般出队列时…

Linux系统目录结构

Linux系统下一切皆文件 !!! 系统启动必须: /boot : 存放启动Linux时所需的内核文件,包括压缩后的内核镜像文件(vmlinuz)、虚拟文件系统镜像文件(initrd.img)、启动引导grub的配置文件。/etc : 系统全局配置文件,会影…

从Excel高手到SQL大师-解锁数据分析的无限潜力 -10分钟读懂职场必备技能

目录 Excel 和 SQL:看似相似却大不相同的数据处理利器Excel vs SQL:表面相似,本质迥异Excel:直观但受限的电子表格SQL:强大而灵活的数据库查询语言 从 Excel 到 SQL:跨越鸿沟Excel 数据筛选SQL 数据筛选 结…

基于 Kafka 的经验:AutoMQ 和 MinIO 如何解决成本和弹性挑战

Apache Kafka 因其出色的设计和强大的功能而成为流式处理的事实标准。它不仅定义了现代流式处理的架构,而且其独特的分布式日志抽象还为实时数据流处理和分析提供了前所未有的功能。Kafka 的成功在于它能够满足高吞吐量和低延迟的数据处理需求,多年来&am…

论文阅读:Most Probable Densest Subgraphs

摘要 本文提出了一种在不确定图中发现最有可能稠密子图(MPDS)的新方法。不确定图中的每条边都有存在概率,使得计算稠密子图变得複杂。作者定义了稠密子图概率,并证明了计算该概率是#P难的。为了解决这个问题,设计了基…

数据科学 - 数据预处理 (数据清洗,结构化数据)

1. 前言 数据清洗与结构化数据在数据分析和机器学习项目中扮演着至关重要的角色。随着大数据时代的到来,数据的质量、准确性和可用性成为决定项目成功与否的关键因素。 数据清洗提高数据质量,保证数据集的一致性;促进数据分析与挖掘&#xf…

【大数据开发语言Scala的入门教程】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步! 🪁Scala 🪡Scala是一种功能丰富且具有强大表达能力的静态类型…