Web ssh shell & sftp

ssh远程管理系统
授权协议 GPL
开发语言 Java
所属分类 服务器软件、 终端服务器/远程连接
软件类型 开源软件
地区 不详
投 递 者 傅穆冉
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

web ssh shell & sftp 是一个基于 web 的 ssh 远程管理系统,整个系统采用 bootstrap 前端技术,ssh 三大框架后端技术。目前版本 ssh shell 终端只支持密码验证方式。

管理员可以像在真实 shell 上一样进行操作,比如安装软件,修改文件等,并且进行这些操作都能够实时反馈到控制台终端,为了实现这一点,我使用了 spring websocket 进行与远程交互,我只配置了 spring 的 websocket,对于不支持 websocket 的浏览器,需要自己手动配置一下 sockJs,当然,它是很简单的。

对于不大熟悉 shell 命令操作的用户,我们增加了 SFTP 功能,用它来进行可视化操作,当然,这很难完全模拟出软件那样的效果,只提供了一些简单的功能,比如:文件的可视化浏览,新建文件夹,修改文件权限属性,上传本地文件,下载远程文件(文件不能过大),删除文件,仅此而已。

做此项目的原因仅仅因为兴趣而已,可能是我比较懒,所以就没有做过多的安全保护措施,仅仅对用户的添加的主机密码进行了加密处理,考虑到安全问题,使用者可以自己进行扩展,比如添加 SSH keys 验证方式,并且换成 https 协议。

下面是我在本地运行的一些截图:

  • vsftp:ftp:connect:connection:refused问题及解决 2009-04-28 15:40 问题: 请问为什么我一输入ftp ip,就会提示ftp:connect:connection:refused(我在配置文件中已经允许匿名访问了) 解决方案: 我的vsftp过程。 1 检查我的vsftp有没有启动。来的土的方法: #/usr/sbin/vsftpd 500 OOPS

  • def disconnect(self, close_code): 将连接状态置为False self.therecord.is_connecting = False self.therecord.save() async_to_sync(self.channel_layer.group_discard)( self.group_name, self.channel_name ) self.ssh

  • 为了得到一个相对完善的后端websocket服务进程和前端页面功能,我也是百度并自己尝试了很长时间了,总结从百度搜索得来后缺失的要点如下: 前端要点: 1、发送数据用json格式字符串,后端方便读取后判断是需要调整屏幕大小还是发送操作命令。 2、this.fitAddon.fit()的调用要延时执行,等页面基本OK了再执行,比如 setTimeout(() => { this.fi

 相关资料
  • Fabric Fabric 是一个用来简化系统管理任务的第三方库。当 Chef 和 Puppet 更倾向于管理服务器和系统库的时候,Fabric 则更关注于应用级别的任务管理,比如应用部署。 安装 Fabric: $ pip install fabric 下面的代码为我们创建了两个可以使用的任务:memory_usage 和 deploy,前面的任务会输出每一个服务器设备的内存使用率;后面的任

  • 设备和磁盘 在Linux下你的磁盘和USB设备都被看作设备。要读写它们你得先把这些设备挂载到一个文件夹(被称为挂载点)里。在Slitaz里你可以使用图形界面工具mountbox挂载设备,也可以用命令行挂载。要挂载第一个硬盘的第一个主要分区到/mnt/disk: # mkdir -p /mnt/disk # mount /dev/hda1 /mnt/disk 要挂载USB设备或者CDROM,建议使用

  • 系统管理 函数 描述 uname 得到内核的名称和信息 getpwuid 通过uid获得相应的结构体passwd getpwnam 通过用户名获得相应的结构体passwd getspnam 通过用户名获得结构体spwd(内包含密码) getgrgid 通过gid获得相应的结构体group getgrnam 通过组名获得相应的结构体group getenv 获取系统环境变量的值

  • 主要内容:RDP 对比 RFB,Telnet 对比 SSH,Linux远程管理软件提到远程管理,通常指的是远程管理服务器,而非个人计算机。个人计算机可以随时拿来用,服务器通常放置在机房中,用户无法直接接触到服务器硬件,只能采用远程管理的方式。 远程管理,实际上就是计算机(服务器)之间通过网络进行数据传输(信息交换)的过程,与浏览器需要 HTTP 协议(超文本传输协议)浏览网页一样,远程管理同样需要远程管理协议的支持。 目前,常用的远程管理协议有以下 4 种: RDP(remot

  • 主要内容:什么是数据库,数据库管理系统,DBMS的特征,DBMS的优点,DBMS的缺点,学习前提条件,面向读者,问题反馈DBMS教程提供了数据库的基本和高级概念。 我们的DBMS教程专为初学者和专业人士设计。数据库管理系统是用于管理数据库的软件。 DBMS教程包括DBMS的所有主题,如介绍,ER模型,键,关系模型,连接操作,SQL,函数依赖,事务,并发控制等。 什么是数据库 数据库是相互关联数据的集合,用于有效地检索,插入和删除数据。 它还用于以表格,模式,视图和报告等形式组织数据。 例如: 学

  • 此教程将讲述如何建立一个简单的 CMS。 首先我们需要安装 CakePHP,然后创建数据库,最后编写一个简单的文章管理系统。 基本要求: 一个数据库服务器。此教程采用的是 MySQL 作为数据库。 你需要储备基本的 SQL 知识。懂得如何使用 SQL 建立数据库以及执行教程中的各种 SQL 片段。 CakePHP 可自动构造你的应用所需的各种查询语句。 由于此教程使用的是 MySQL, 请确定 P

  • 主要内容:PuTTY远程管理工具,SecureCRT远程管理工具通过《 Linux远程管理协议》一节可以知道,Linux远程管理服务器多基于 SSH 协议。本节给大家介绍 2 种常见的基于 SSH 协议的远程管理工具,分别是 PuTTY 和 SecureCRT。 在使用远程管理工具之前,应先设置宿主机 Windows 与虚拟机 Linux 能够连通。这里要注意 VMware 的网卡设置,Linux 中更改网络设置可以使用 ifconfig 和 setup 命令

  • 我在服务器上得到的日志是“user[]from host localhost not have administration access#]”,但我已经更改了管理密码并用它登录。所以我不明白为什么我的用户是空的。而且,尽管我认为这与此无关,但它说证书已经过期。