2016-12-15 128 views
0

我想通過ngrok公開我的本地開發站點。我的站點使用https(在端口7443上),因爲我使用OpenConnect進行身份驗證,所以我在我的Windows主機文件(例如「127.0.0.1 aaa.bbb.ccc.com」)中設置了一個主機名。本地我通過https://aaa.bbb.ccc.com:7443訪問網站(我不能改變這個或者OpenConnect會中斷)。非法使用SSL和主機名

我在ngrok儀表板中創建了一個保留域,但我不知道如何創建CNAME條目 - 這是否需要hosts文件中的另一個條目?

我試圖用這個命令運行ngrok:

ngrok tls -hostname=aaa.bbb.ccc.com 7443 

但它說我必須提供一個參數。如果我使用

ngrok tls -hostname=aaa.bbb.ccc.com:7443 

我得到「隧道會話失敗:您必須保留自定義的主機名稱爲您的帳戶可以結合之前未能綁定的賬戶‘XXXX’域‘AAA’ - 它不」。喜歡它的子域。

回答

0

首先,你應該知道,主機名TLS選擇不來ngrok的免費版本。如果您使用的是付費版本,那麼這就是你需要做什麼:

  • 在您的儀表板中預留域名並獲取CNAME
  • 如果您在互聯網上註冊了域名,請轉到註冊該域名的網站並更改dns設置,以允許您的當前子域名指向ngrok的CNAME(從我所看到的,所訪問的不是一個互聯網域名所以這個選項可能不會爲你工作)
  • 對於本地域名,試圖指向域到ngrok CNAME主機中的文件"<CNAME> aaa.bbb.ccc.com"
  • 啓動ngrok和點它到您的本地服務器正在運行的端口,例如ngrok tls -hostname=aaa.bbb.ccc.com:7443如果您的服務器正在運行7443

注意:您可能要開始與HTTP選項而不是TLS選擇服務器,如果你不需要一個安全的SSL連接(HTTPS)

+0

我升級到付費版本試試這個。我也嘗試添加我的主機文件中的條目(使用CNAME的IP地址),但沒有奏效(502壞網關錯誤)。 – SturmUndDrang

+0

如果你正在使用tls,那麼你需要一個域名的簽名證書,否則大多數服務都不會接受它(假設你正在設置一個web鉤子)。前幾天我遇到了這個問題,所以詳細告訴我你做了什麼以及你得到的結果,我可以幫助 – Ken4scholars

+0

我有一個頒發給* bbb.ccc.com的證書,該證書安裝在我的IIS服務器。在該網站的綁定中,我使用此SSL證書。我必須使用TLS客戶端終止,以便ngrok知道此證書嗎?例如「ngrok tls -crt tls.crt -key tls.key 443」 – SturmUndDrang