一個開源、輕量且類似於Servo

sish是一個SSH服務器,僅用於遠程端口轉發,可以快速將本地端口暴露在外網,作者聲稱其為Servo/Ngrok替代方案,僅使用SSH的HTTP(S)、WS(S)、TCP隧道連接到他們的localhost服務器,該

一個開源、輕量且類似於Servo/Ngrok的內網穿透工具

工具和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白名單等。


分享到:


相關文章: