Web SSH服务搭建

前言背景

最近买了个域名,然后绑定了一个Vultr的IP,结果第二天这个IP就被trash GFW给封了,呵呵。以前也是
这样,但不知道为啥被封,现在知道了。如果国外IP绑定域名的话,就会被封。我域名还是实名制的呢。这让我不能SSH到
虚拟机,不翻墙也不能访问我那注册的域名。要想SSH到虚拟机服务器只能通过代理服务器或跳板机,或者还有个好方法,
那就是用Web SSH。

用Web SSH可以通过Vultr自带提供的Console工具登陆到虚拟机。但是自带的Web SSH界面很难看,而且比较难用。
还不如自己搭建一个Web SSH服务。

正题

我在Github搜了下,还挺多Web SSH相关的项目。最后我选这个 https://github.com/huashengdun/webssh。
这个我觉得还是挺简单易用的。

安装

这个安装非常非常简单,前提是你用python环境,然后执行:
pip install webssh

启动服务

wssh --address='0.0.0.0' --port=8000 --fbidhttp=False --wpintvl=30

然后通过浏览器直接访问 IP:port

然后就可以通过网页来操作虚拟机服务器了,从而跳过GFW对我IP的封锁。

就这么简单。

原理

1
2
3
+---------+ http +--------+ ssh +-----------+
| browser | <==========> | webssh | <=======> | ssh server|
+---------+ websocket +--------+ ssh +-----------+