编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

给SSH加一点调料吧——WebSSH(添加ssh端口)

wxchong 2024-10-21 12:58:44 开源技术 10 ℃ 0 评论


给SSH加点调料吧,没错,那就是WebSSH。

SSH 为 Secure Shell 的缩写,是建立在应用层基础上的安全协议,专为远程登录会话和其他网络服务提供安全性的协议。

然而本文并不是讲SSH。而是我在实验环境中给SSH加了点调料的WebSSH。

一:讲在前面

用过阿里云的同学应该知道,在阿里云的web控制中心中,是允许使用浏览器操作访问Linux服务器的。那么基于这个操作,引起了我的很多思考。没错,SSH是基于TCP的,HTTP协议也是基于TCP的,那么是否可以通过HTTP协议去远程服务器呢?或者说采用HTTP协议去“婉转”的访问服务器呢。

通过搜索了一些资料,我发现了WebSSH这个东西。好吧,其实它不是一个协议,它只是一种应用。基于Http的WebSocket和SSH代理进行“婉转”访问服务器的应用。

于是本文,将简述我拿它干的一些事。

二:WebSSH的原理

1:客户端为满足WebSocket的浏览器,相信2020年了,绝大部分的浏览器都满足该条件。这里推荐使用Chrome。

2:Http Server + SSH agent,该节点提供SSH的中转代理,此处使用WebSocket的原因是为了方便服务器信息逆推。而SSH agent,充当代理人的角色,用于给各个服务器代理发送命令使用。

3:所有SSH agent跟所有linux服务器交互,使用原生的SSH协议。

SO,你只需要部署一个Http Server+SSH Agent,即可给原来的SSH加点料。

三:为什么要给SSH加点调料呢。

1:相信绝大部分的生产环境,都不允许把ssh的端口网络策略完全开放出来,并且具有严格的网络接入要求。但是Https的443端口可以。

2:可以基于Http Server中加入命令拦截,操作审计,权限控制等安全措施。

3:我只是想玩一下SSH的不同方式。

四:关于网络安全、数据安全

安全都是相对的,没有绝对的安全。所以在没有充分的安全条件下,不建议该方案用于互联网生产环境。不建议该方案用于互联网生产环境。不建议该方案用于互联网生产环境。

如果仅仅是用于学习,内部测试环境,内部开发环境。该方案还是可以的。香。

写在最后。

https://github.com/huashengdun/webssh

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表