一个国内的 ngrok 服务器

2014-11-21 14:32:06 +08:00
 Had
鉴于ngrok官方服务器连接速度一般,我在国内搭了一台ngrok服务器(ubuntu+ngrokd+nginx),主页还没做(准备用个模版马马虎虎了),但是ngrok服务已经可以正常使用,大家可以试用一下。

使用方法:
1. 你需要一个官方客户端,可以去https://ngrok.com/下载;
2. 你需要创建一个配置文件(例如ngrok.cfg),内容是以下两行(你也可以改~/.ngrok的默认配置文件);
server_addr: "tunnel.mobi:44433"
trust_host_root_certs: true
3. 执行ngrok时添加载入配置文件的参数-config,使用范例如下:
ngrok -config ngrok.cfg -subdomain example 8080
4. 服务器支持ngrok的除了自定义域名以外的所有服务(例如自定义二级域名*.tunnel.mobi、转发自定义端口、转发内网的服务器、密码保护以及同时运行多个tunnel)

PS1: 配置文件的第一行指定了服务器地址以及ngrok客户端与服务器的通讯端口;第二行意为信任本机(指运行ngrok客户端的机器)的根证书(因为ngrok的默认逻辑是只信任ngrok.com的根证书。
PS2: 建议不要修改或添加两行配置到ngrok默认的配置文件~/.ngrok,这样即使是我的服务器宕了,您也可以使用ngrok官方的服务器。
67841 次点击
所在节点    分享创造
123 条回复
hcymk2
2014-11-21 14:52:09 +08:00
连不上。。。
telnet 能通 但是Tunnel Status 一只是reconnecting
Had
2014-11-21 14:57:03 +08:00
@hcymk2 我用aws的ubuntu机器试了试,一切正常啊... 就是首次connecting的时间可能需要3秒左右...
hcymk2
2014-11-21 14:59:57 +08:00
@Had 我用的是windows客户端 可以连上官方的服务 但是连不上tunnel.mobi
Had
2014-11-21 15:03:14 +08:00
@hcymk2 好,我测试一下windows,ubuntu和我的mac都是正常的...
wong2
2014-11-21 15:18:07 +08:00
Mac,一直是 reconnecting
Had
2014-11-21 15:27:35 +08:00
@wong2 太神奇了... 我这里怎么都无法重现... 来集思广益一下到底问题在哪里...

附配置文件: http://ngrokd.b0.upaiyun.com/ngrok.cfg
hcymk2
2014-11-21 15:58:56 +08:00
@Had
我用ubuntu连上了 ,和windows是一样的网络环境。
Had
2014-11-21 16:10:56 +08:00
@hcymk2 真是一则好消息...

我在服务器这边多看到的error还是bad certificate,我已经为服务端绑定了wildcard证书(非自签名证书),为了再次验证,我在同事的mac上(她从未装过类似的服务)全新配置,也是官网的ngrok,也是一切正常...
Had
2014-11-21 16:38:48 +08:00
@hcymk2 我在VirtualBox起了一个XP,测试正常...
无法重现故障,定位不能...
hcymk2
2014-11-21 16:53:50 +08:00
@Had
我连上的那机器是双系统 ubuntu+win7 ,现在切换到win7也能连上去。
那台连不上的机器是windows server 2003
Had
2014-11-21 16:58:01 +08:00
@hcymk2 我发现问题了!我的服务端是1.7版本,官网现在提供的最新版客户端是1.7,是可以正常使用的。
而同事的1.6版就不能连接,你可能需要升级最新版客户端才可以。
Had
2014-11-21 16:58:49 +08:00
@wong2 您好,可以把客户端升级到1.7版,应该就可以正常使用了。
zzutmebwd
2014-11-23 10:56:45 +08:00
@Had 最近看过一些类似的东西 请问自行搭建ngrok服务器可以实现自定义顶级域名吗?想搭个外网可访问的本地服务器
Had
2014-11-23 11:37:32 +08:00
@zzutmebwd 官方提供的源码里没有包含如何保留自定义二级域名不被别人占用的(因为这是他提供的付费功能),而自定义顶级域名这个功能其实就是保留的二级域名+CNAME记录,所以自行搭建的ngrok服务器无法实现自定义顶级域名这个功能。
Had
2014-11-23 11:41:41 +08:00
@zzutmebwd 另外,你要搭建这样的服务器至少得有:

1.外网可访问的服务器;
2.域名。

当然,如果你只是自己用的话,那么其实这个顶级域名不就是你自己的自定义顶级域名了么...
比如tunnel.mobi之于我,就已经是不同于ngrok.com的顶级域名了。

PS:以上内容好拗口...
zzutmebwd
2014-11-23 12:19:49 +08:00
@Had 也对哦哈哈哈 是这样的,我频繁在校园网和外网之间切换,希望能够无缝的通过局域网内服务器转发来访问内网服务(文献版权什么的你懂的)。域名和vps都有。我去试试 很赞~
zzutmebwd
2014-11-23 12:22:48 +08:00
@Had 谢谢 我自己用足够啦
stayreal
2014-11-25 15:38:54 +08:00
支持ipv6吗
Had
2014-11-25 17:27:04 +08:00
@stayreal 我的托管商不支持IPV6
yidinghe
2014-11-28 16:44:18 +08:00
Up 主是大大的良心,十分感谢。希望能长久用下去

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/148279

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX