2016-12-15 121 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