內網穿透?Ngrok 伺服器配置指南

來源:互聯網
上載者:User

1 安裝git 和Golang

apt-get install build-essential golang mercurial git

2 下載源碼,當然也可以不安裝git,但是需要手動上傳代碼到需要的位置。

此處使用非官方地址,修複了部分包無法擷取(摘自網路)

git clone https://github.com/tutumcloud/ngrok.git ngrok

3 產生自我簽署憑證

使用ngrok.com官方服務時,我們使用的是官方的SSL認證。自建ngrokd服務,如果不想買SSL認證,我們需要產生自己的自我簽署憑證,並編譯一個攜帶該認證的ngrok用戶端。

認證產生過程需要一個NGROK_BASE_DOMAIN。 以ngrok官方隨機產生的地址xxx.ngrok.com為例,其NGROK_BASE_DOMAIN就是“ngrok.com”,

如果你要提供服務的地址為“example.ngrok.xxx.com”,那NGROK_BASE_DOMAIN就應該 是“ngrok.xxx.com”。

本次測試,由於沒有多餘的網域名稱,我替換成自己的次層網域“risk001.cn”。

cd ngrok

NGROK_DOMAIN="risk001.cn"

openssl genrsa -out base.key 2048

openssl req -new -x509 -nodes -key base.key -days 10000 -subj "/CN=$NGROK_DOMAIN" -out base.pem

openssl genrsa -out server.key 2048

openssl req -new -key server.key -subj "/CN=$NGROK_DOMAIN" -out server.csr

openssl x509 -req -in server.csr -CA base.pem -CAkey base.key -CAcreateserial -days 10000 -out server.crt

執行完成後需要替換認證

cp base.pem assets/client/tls/ngrokroot.crt

編譯

make release-server release-client

編譯成功後會在bin目錄下找到ngrokd和ngrok這兩個檔案。其中ngrokd 就是服務端程式了。

啟動服務端

./bin/ngrokd -tlsKey=server.key -tlsCrt=server.crt -domain="risk001.cn" -httpAddr=":80" -httpsAddr=":443"

編譯用戶端

(1)windows

GOOS=windows GOARCH=amd64 make release-client 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.