sish是一个SSH服务器,仅用于远程端口转发,可以快速将本地端口暴露在外网,作者声称其为Servo/Ngrok替代方案,仅使用SSH的HTTP(S)、WS(S)、TCP隧道连接到他们的localhost服务器,该
工具和Servo差不多一样,不同就是Servo官方提供了免费的SSH客户端,而sish作者提供的客户端貌似因为滥用关闭了,所以就需要我们自己搭建了,这里就水下Docker和手动安装。
Docker安装
Github地址:https://github.com/antoniomika/sish
1、安装Docker
2、拉取镜像
这里由于直接使用ip的话,只能用于转发TCP,HTTP(S)等就需要配置下域名了,所以以下全部默认使用域名。
先解析一个主/泛域名到服务器ip,比如解析moerats.com、*.moerats.com到服务器ip。
然后再参考下面的参数详解,再自行修改部分参数后,使用命令:
部分参数如下:
其他参数默认即可,也可以自行添加或修改其它参数。
全部参数如下:
看不懂的,可以使用下谷歌翻译。
最后CentOS系统建议关闭防火墙使用,或者打开部分端口也行,关闭命令:
像阿里云等服务器,还需要去安全组那里开放下端口。
手动安装
Docker虽然方便很多,但也有人会喜欢手动安装,这里作者没直接给出二进制文件,所以就需要我们手动来构建二进制文件了。
1、安装Go
这里由于需要新版的Go环境,所以这里就使用Go二进制包安装环境,下载地址→传送门。
然后根据自己的服务器架构下载对应的最新安装包,一般可以直接使用命令:
2、安装sish
这里提示-bash: git: command not found的,可以先使用命令:
3、运行sish
运行参数这里就不贴了,直接参考上面Docker安装最下面的全部参数就行了。
先解析一个主/泛域名到服务器ip,比如解析moerats.com、*.moerats.com到服务器ip。
这里就贴个大概需要使用的参数,其它的根据需求自行修改,使用命令:
部分参数详解:
这里/sish/ssl、/sish/pubkeys、/sish/keys目录需要自己提前创建下,使用命令:
4、开机自启
如果你使用手动命令没问题了,先使用Ctrl+C断开命令。
再新建systemd配置文件,适用CentOS 7、Debian 8+、Ubuntu 16+。
启动并设置开机自启:
最后CentOS系统建议关闭防火墙使用,或者打开部分端口也行,关闭命令:
像阿里云等服务器,还需要去安全组那里开放下端口。
使用
使用要求:可以使用SSH,并且能连接到互联网,Linux、Windows等系统都行。
以下所使用的的moerats.com为上面配置好的客户端域名地址,自行修改成自己的即可。
1、转发HTTP(S)
将本地3000端口穿透到公网中,使用命令:
第一次如果有提示,选择yes即可,之后会为你随机生成一个moerats.com的二级域名,然后就可以使用浏览器间接访问本地的localhost:3000了。
如果要指定二级域名,可以使用命令:
此时你就可以在外网使用no1.moerats.com访问你本地的localhost:3000了。
2、转发TCP
将本地6789端口穿透到公网的9876端口中,使用命令:
这里只说了下简单用法,客户端我们还可以设置国家/地区、IP白名单等。
暂无评论内容