Golang Go语言写的Web-Term-SSH堡垒机项目欢迎大家拍砖

发布于 1周前 作者 nodeper 来自 Go语言

Golang Go语言写的Web-Term-SSH堡垒机项目欢迎大家拍砖

前端代码已经被我 Golang 化了,只需要一个二进制文件就可以把项目跑起来(包含前端和后端)

Github 代码: https://github.com/mojocn/sshfortress

Live Demo 地址: https://sshfortress.mojotv.cn/#/login 直接输入验证码登陆就可以了


更多关于Golang Go语言写的Web-Term-SSH堡垒机项目欢迎大家拍砖的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html

23 回复

有意思,顶下

更多关于Golang Go语言写的Web-Term-SSH堡垒机项目欢迎大家拍砖的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


有意思,先马

支持一下先,牛鼻!

支持一下。
顺便问一下, 前端文件打包进二进制是用的什么库啊?

前端文件如何打包的?

[https://github.com/mojocn/sshfortress/blob/master/cmd/ginbin.go]( https://github.com/mojocn/sshfortress/blob/master/cmd/ginbin.go)

https://github.com/mojocn/sshfortress/blob/master/felixbin/gin_static.go

前端代码打包成一个gin middleware,
go<br> //sever static file in http's root path<br> binStaticMiddleware, err := felixbin.NewGinStaticBinMiddleware("/")<br> if err != nil {<br> return err<br> }<br> r.Use(binStaticMiddleware)<br>

这样前后端就可以放在一个域名不需要 nginx-location 支持, 减少了 options 的请求时间, 如果你要使用你要进行改造.

我写的这个只支持 vuejs-hash 模式, 其他的前端框架没有进行匹配和测试




vuejs-单页面应用可以参照我之前 写的一篇博客 https://mojotv.cn/2019/07/27/how-to-serve-frontend-code-with-api-in-go




我也有过类似经验,跟楼主不同,我使用的 https://github.com/GeertJohan/go.rice

终于有人使用 golang 写了一个 ssh jumper server, 看 readme.md 一个二进制文件直接搞定前端后端, 而且支持 SQLite3/MySQL 数据. 跑起来确实简单快捷

一直想要写这个…

#9
#10 感谢解答,分享

玩了半天魂斗罗 哈哈…

像开发自己的魂斗罗 其实很简单 https://github.com/bfirsh/jsnes

这里有一个我写了一个 3500+Nes 游戏的页面 https://mojotv.cn/misc/games

有点意思 登陆加上 mfa 就好了

star 了…学习一下

Blog 使用 history 跳转之后让页面回到顶部啊…

非常感谢您我的博客网站的体验反馈, pjax scrollTop = 0 这行代码已经添加, js 有缓存, 可能要过段时间.才生效.

MFA 这个不是很好实现 我在国内都安装不了 google authenticator, 如果把 MFA 增加上去预计编译部署的时候会增加难度

感谢大家的关注与热情参与!对于您提到的“Golang Go语言写的Web-Term-SSH堡垒机项目”,这是一个非常具有实用价值和挑战性的项目。以下是我基于专业视角的一些看法和建议:

首先,该项目充分利用了Go语言的高并发、高性能特点,非常适合构建需要处理大量并发连接的SSH堡垒机。同时,Web-Term的实现也提升了用户体验,使得远程管理和操作更加便捷。

然而,在安全性方面,该项目需要特别注意以下几点:

  1. 身份验证:确保用户身份验证机制的安全可靠,避免潜在的安全漏洞。
  2. 访问控制:实现细粒度的访问控制策略,确保只有授权用户才能访问特定资源。
  3. 日志审计:记录所有用户的操作日志,以便进行事后审计和追溯。

此外,在代码质量和可维护性方面,建议遵循Go语言的最佳实践,如模块化设计、代码注释、单元测试等。这不仅可以提高代码的可读性和可维护性,还有助于及时发现和修复潜在问题。

最后,欢迎大家对该项目提出宝贵的意见和建议。无论是功能上的改进还是代码上的优化,我们都将虚心接受并努力改进。相信在大家的共同努力下,该项目将不断完善,成为更加优秀的SSH堡垒机解决方案。再次感谢大家的关注和支持!

回到顶部