Coder Social home page Coder Social logo

o8oo8o / webssh Goto Github PK

View Code? Open in Web Editor NEW
205.0 9.0 53.0 10.07 MB

功能强大,Go 实现的一个WebSSH,支持文件上传下载

License: MIT License

Go 87.33% HTML 0.03% Vue 2.07% TypeScript 0.13% Dockerfile 0.09% Assembly 9.36% Shell 0.93% C 0.05% JavaScript 0.01%
webssh vue3 xshell vue ssh

webssh's Introduction

GoWebSSH


介绍:

  • Golang 1.22 + (Vue3.4 + Vite5) 实现一个Web版单文件的SSH管理工具
  • 借助于Golang embed,打包以后只有一个文件,简单高效
  • 使用及编译过程,超级简单,绝对保姆级
  • 上一版主要本地运行,但是通过部分用户反馈,此项目定位改为服务器运行,所以此版本加入了很多企业场景中的功能

联系我:

  • QQ:774309635


Quick start(大象装进冰箱只需3步):

必须使用golang 1.21以上版本

打开链接 http://127.0.0.1:8899/ 开始享用吧,第一次需要初始化


Docker 方式:

  • git clone https://github.com/o8oo8o/WebSSH.git
  • cd WebSSH
  • docker build -f Dockerfile -t gowebssh:v2 .
  • docker run -d --name webssh -p 8899:8899 -v gowebssh:/var/lib/webssh gowebssh:v2

打赏我:

  • 每一个开源项目的背后,都有一群默默付出、充满激情的开发者。他们用自己的业余时间,不断地优化代码、修复bug、撰写文档,只为让项目变得更好。如果您觉得我的项目对您有所帮助,如果您认可我的努力和付出,那么请考虑给予我一点小小的打赏,够买一瓶啤酒就行🍺,如果能同时打赏啤酒花生那更好🍺🥜,因为所有的代码都是喝完酒撸的。放上收款码的时候我是羞愧的,一个中年男人的最后的尊严和节操竟然没了😂,友情提示:打赏不退,怕被媳妇查到大额支出🥸,如果需要技术支持,需要收费哦


打赏二维码


主要功能:

  • 支持同时连接多个主机,支持重连、清屏功能
  • 支持IPv4、IPv6
  • 支持SSH证书登陆及证书密码
  • 支持批量支持命令,当前终端及所有终端
  • 支持命令收藏,方便重复执行命令,批量发送命令到所有会话
  • 可以保存主机连接信息
  • 支持直接通过Web上传下载文件
  • 支持直接通过Web创建目录,删除文件及目录功能
  • 支持手动输入路径
  • 支持自定义终端字体大小、字体颜色、字体样式
  • 支持自定义背景、光标颜色及光标样式
  • 已保存的主机信息可直接编辑并连接
  • 支持后台管理,强制断开连接
  • 支持登陆日志审计,方便监控违规操作
  • 支持访问控制,在公网场景中有效拦截非法访问
  • 支持MySQL8+及PostgreSQL12.2+数据库

为什么这么简单:

  • 为了方便您使用,把golang编译的依赖已经整理好了,clone就一起下载了
  • 前端已经编译完成,并把编译完成的静态资源拷贝到gossh/webroot目录中
  • 可执行文件内嵌静态资源,方便你随性所欲的移动可执行文件

配置文件:

  • 第一次运行会在用户home目录创建一个 .GoWebSSH 目录
  • GoWebSSH.toml 可以配置server端口等信息
  • cert.pem HTTPS服务器证书文件
  • key.key HTTPS服务器私钥文件

注意:

  • 当程序检测到cert.pem 和 key.key 文件,会使用https协议,否则使用http协议
  • 用户只需把证书文件和私钥文件放到 .GoWebSSH 目录就可以了

Systemd 方式启动:

cat > /etc/systemd/system/gowebapp.service << "END"
##################################
[Unit]
Description=GoWebApp
After=network.target

[Service]
Type=simple
User=root

## 注:根据可执行文件路径修改
ExecStart=/usr/local/GoWebSSH

# auto restart
StartLimitIntervalSec=0
Restart=always
RestartSec=1

[Install]
WantedBy=multi-user.target
##################################
END

systemctl daemon-reload

systemctl start gowebapp.service

systemctl enable gowebapp.service


演示截图:

a b c d e f g

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.