V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
bobchengbin
V2EX  ›  分享创造

又一个国内的 Ngrok 服务器分享

  •  
  •   bobchengbin ·
    dcb9 · 2015-11-05 10:15:44 +08:00 · 23301 次点击
    这是一个创建于 3307 天前的主题,其中的信息可能已经有所发展或是发生改变。

    ngrok 2.0 开始收费了,国内好几个 ngrok 倒下了,于是搭了一个供大家玩耍,只要还有钱就会给服务器续费的!

    使用方法

    server_addr: "tunnel.phpor.me:4443"
    trust_host_root_certs: false
    
    • 运行 $ ngrok -config ngrok.cfg -subdomain example 8080
    第 1 条附言  ·  2015-12-17 11:55:57 +08:00

    Bob 的 Ngrok 服务一直是放在某云上面的,一个月是 90 RMB ,现在是第二个月了,费用还是很贵的。

    昨天 DaoCloud 上对老用户年终大回馈,可以免费领腾讯的优惠券, Bob 一共抽了 700 块左右的钱(个人帐号+公司组织帐号+兄弟的帐号 一般人只能拿到 200 左右的优惠券吧),已经够用一年的了,从下个月开始服务转移到腾讯云上,部署的方式也会改成 DaoCloud 的方式——容器大法,所以请大家放心使用!

    最后还是非常感谢 DaoCloud,所有的 V 友建议都是了解一下,对自己百利而有一害(中毒太深)!

    65 条回复    2016-04-07 16:30:38 +08:00
    waltye
        1
    waltye  
       2015-11-05 10:18:48 +08:00
    还真早。。
    bobchengbin
        2
    bobchengbin  
    OP
       2015-11-05 10:20:27 +08:00
    @waltye 刚起来,你去试玩儿一下。
    jwangkun
        3
    jwangkun  
       2015-11-05 12:13:16 +08:00
    有教程吗?我也想自己搭建一个,之前的都用不了
    jwangkun
        4
    jwangkun  
       2015-11-05 12:18:53 +08:00
    你这个也连不上
    scarlex
        5
    scarlex  
       2015-11-05 12:51:55 +08:00   ❤️ 3
    itnoob
        6
    itnoob  
       2015-11-05 13:06:31 +08:00
    Mark ,谢楼主。待会儿试试
    damichn
        7
    damichn  
       2015-11-05 13:39:55 +08:00
    赞一个,比用腾讯的舒服!
    bobchengbin
        8
    bobchengbin  
    OP
       2015-11-05 13:43:29 +08:00
    @jwangkun 连接出什么错误了,咱们一起 Debug 一下。

    要自己搭建的话参照 Tony Bai 的博客吧 http://tonybai.com/2015/03/14/selfhost-ngrok-service/
    jzp113
        9
    jzp113  
       2015-11-05 13:45:18 +08:00
    广州的服务器,速度应该还行
    bobchengbin
        10
    bobchengbin  
    OP
       2015-11-05 13:45:39 +08:00
    @scarlex localtunnel 试用过一次,不是很了解,它是不是看不到 http 请求信息啊, ngrok 可以看到相应请求的 Header, Body 等信息。
    jwangkun
        11
    jwangkun  
       2015-11-05 13:46:10 +08:00
    链接不上去
    bobchengbin
        12
    bobchengbin  
    OP
       2015-11-05 13:47:04 +08:00
    @damichn 嗯嗯,腾讯的不支持自定义域名,但是现在大部分都是根据域名来区分应用的。
    bobchengbin
        13
    bobchengbin  
    OP
       2015-11-05 13:51:53 +08:00
    @jwangkun 咱们私聊
    bobchengbin
        14
    bobchengbin  
    OP
       2015-11-05 13:53:05 +08:00
    @damichn 有问题及时反馈哦
    damichn
        15
    damichn  
       2015-11-05 14:00:35 +08:00
    @bobchengbin 刚测试了一下,暂时没问题。
    jwangkun
        16
    jwangkun  
       2015-11-05 14:11:40 +08:00
    @bobchengbin 如何私聊,没找到你的联系方式
    bobchengbin
        17
    bobchengbin  
    OP
       2015-11-05 14:22:12 +08:00
    @jwangkun 微博
    bobchengbin
        18
    bobchengbin  
    OP
       2015-11-05 14:28:17 +08:00
    jwangkun
        19
    jwangkun  
       2015-11-05 14:48:11 +08:00
    ![]( )
    dispider
        20
    dispider  
       2015-11-05 15:42:25 +08:00
    用 1.7 版本试了下,没连上啊啊啊啊啊啊
    dispider
        21
    dispider  
       2015-11-05 16:01:29 +08:00
    好用了,之前忘记要用你自己发布的版本了。。。。
    pythonee
        22
    pythonee  
       2015-11-05 16:07:04 +08:00
    还不知道这个东西是干什么用的
    cielpy
        23
    cielpy  
       2015-11-05 16:11:38 +08:00
    reconnecting...
    cielpy
        24
    cielpy  
       2015-11-05 16:14:27 +08:00
    话说今天才知道 ngrok 这东西,自己搭那个证书不知道怎么弄- -
    bobchengbin
        25
    bobchengbin  
    OP
       2015-11-05 16:15:31 +08:00
    @pythonee 把你本地 web 服务映射到外网,让外网可以直接访问你本机的 Web 服务。 现在用的最多的场景就是用来开发微信 http://www.zhihu.com/question/25456655
    bobchengbin
        26
    bobchengbin  
    OP
       2015-11-05 16:16:17 +08:00
    @cielpy 是下载的我这提供的客户端吗?
    cielpy
        27
    cielpy  
       2015-11-05 16:17:47 +08:00
    @bobchengbin 连接上了,显示 online ,不过我转发的是 vnc 的 5900 端口,似乎连接不上 vnc 服务。
    bobchengbin
        28
    bobchengbin  
    OP
       2015-11-05 16:25:16 +08:00
    @cielpy

    -proto string
    The protocol of the traffic over the tunnel {'http', 'https', 'tcp'} (default: 'http+https') (default "http+https")
    pythonee
        29
    pythonee  
       2015-11-05 16:27:38 +08:00
    @bobchengbin 这个跟端口映射的区别在于? IPOP?
    cielpy
        30
    cielpy  
       2015-11-05 16:32:03 +08:00
    @bobchengbin 啊需要指定 tcp 协议啊。
    bobchengbin
        31
    bobchengbin  
    OP
       2015-11-05 16:32:55 +08:00
    @pythonee 服务器,客户端建立一个持久连接

    用户问服务器的对应域名,将请求转发到客户端,客户端响应给服务器,服务器再返回给用户。
    bobchengbin
        32
    bobchengbin  
    OP
       2015-11-05 16:35:49 +08:00
    @cielpy 默认是 `http+https` 的, `VNC` 应该是 `tcp` 的,所以你的命令应该是 `$ ngrok -config ngrok.cfg -proto tcp -subdomain example 8080` ,不保证能成功哇,我们都是用来做 web 开发的。
    cielpy
        33
    cielpy  
       2015-11-05 16:40:10 +08:00
    @bobchengbin 嗯。指定了,不行- -用腾讯那个可以。
    bobchengbin
        34
    bobchengbin  
    OP
       2015-11-05 16:44:03 +08:00
    @cielpy 可能服务端不支持,我去 server 上看了一下好像没有看到对 tcp 的支持

    $ ./bin/ngrokd --help
    Usage of ./bin/ngrokd:
    -domain="ngrok.com": Domain where the tunnels are hosted
    -httpAddr=":80": Public address for HTTP connections, empty string to disable
    -httpsAddr=":443": Public address listening for HTTPS connections, emptry string to disable
    -log="stdout": Write log messages to this file. 'stdout' and 'none' have special meanings
    -log-level="DEBUG": The level of messages to log. One of: DEBUG, INFO, WARNING, ERROR
    -tlsCrt="": Path to a TLS certificate file
    -tlsKey="": Path to a TLS key file
    -tunnelAddr=":4443": Public address listening for ngrok client
    pythonee
        35
    pythonee  
       2015-11-05 16:49:47 +08:00
    @bobchengbin 听着像是反代
    cielpy
        36
    cielpy  
       2015-11-05 17:08:20 +08:00
    @bobchengbin 似乎默认支持?
    这样通过 VNC 连接效果不怎么好,就是应急的时候需要用这台电脑上的东西,用这个方法连一下。
    bobchengbin
        37
    bobchengbin  
    OP
       2015-11-05 17:44:53 +08:00
    @cielpy 不是很清楚这个,你现在可以连了么?
    cielpy
        38
    cielpy  
       2015-11-05 18:11:15 +08:00
    @bobchengbin 不可以。连不上。
    la0wei
        39
    la0wei  
       2015-11-05 19:16:39 +08:00
    和 ssh 反代有啥优势没有。一直觉得 ssh 足够用了,只是断网重连的问题不知道如何解决,另外, ssh 似乎被封锁的厉害
    bobchengbin
        40
    bobchengbin  
    OP
       2015-11-05 19:39:38 +08:00
    @la0wei SSH 的自动断开问题是可以解决的啊,你看看这个是要修改服务器的 sshd 配置文件,要重启 ssh 服务的 [http://blog.csdn.net/dc_726/article/details/8608873] ,封锁问题不不清楚咯。

    优劣不作评,各有选择
    imlonghao
        41
    imlonghao  
       2015-11-05 20:22:26 +08:00
    @bobchengbin tcp 转发是支持的,不支持的是 UDP 协议。
    我试过转发 Minecraft 的端口到外网,
    bobchengbin
        42
    bobchengbin  
    OP
       2015-11-05 21:02:36 +08:00
    @imlonghao :+1: 利害
    yuankui
        43
    yuankui  
       2015-11-05 22:02:06 +08:00
    暂时没有这种需求.
    cppgohan
        44
    cppgohan  
       2015-11-06 00:49:05 +08:00
    搭建的服务端只能是 1.x 的吗? 和 2.0 有什么区别呢
    bobchengbin
        45
    bobchengbin  
    OP
       2015-11-06 10:13:40 +08:00
    @cppgohan 尝试过一次 2.0 的,免费的只能支持随机域名,如果要自定义域名,需要收费,其它不知道有哪些地方不同。

    https://github.com/inconshreveable/ngrok
    ngrok 2.0

    NOTE This repository contains the code for ngrok 1.0. The code for ngrok 2.0 is not yet open source.
    bopro
        46
    bopro  
       2015-11-06 12:04:56 +08:00
    没 mac os x 版本的?
    bobchengbin
        47
    bobchengbin  
    OP
       2015-11-06 12:20:54 +08:00
    @bopro darwin_amd64
    chinafeng
        48
    chinafeng  
       2015-11-06 12:29:03 +08:00 via iPhone
    腾讯也有转发服务?
    bobchengbin
        49
    bobchengbin  
    OP
       2015-11-06 13:23:08 +08:00
    @chinafeng http://blog.qqbrowser.cc/ 微信调试工具,里面带了 ngrok 的客户端。
    bobchengbin
        50
    bobchengbin  
    OP
       2015-11-06 21:16:05 +08:00
    @cielpy 现在试下应该可以了,我之前用防火墙把特定的端口之外的访问全部 drop 掉了。
    cielpy
        51
    cielpy  
       2015-11-06 23:14:33 +08:00
    @bobchengbin 可以了。多谢。
    carakan
        52
    carakan  
       2015-11-07 20:10:59 +08:00
    @scarlex localtunnel 服务器必须有 node.js 环境才行?
    scarlex
        53
    scarlex  
       2015-11-07 20:36:29 +08:00
    @carakan 是的
    zoumouse
        54
    zoumouse  
       2015-11-08 17:40:48 +08:00
    感谢楼主,正在使用中,就是不知道能用多久。。。
    tlv2013
        55
    tlv2013  
       2015-11-09 18:37:54 +08:00
    好人一生平安
    zdw1999
        56
    zdw1999  
       2015-11-14 08:56:15 +08:00
    诶,什么情况,怎么连不上了好像,麻烦楼主看下。。。
    一直 reconnecting,并且连 tunnel XXX not found 的提示都没了。。
    bobchengbin
        57
    bobchengbin  
    OP
       2015-11-15 22:38:09 +08:00
    @zdw1999 确实,现在好了,程序报错了。

    当时报警已经发到手机,但后面没有再发,我以为又好了
    trampx
        58
    trampx  
       2015-11-18 12:40:22 +08:00
    @bobchengbin MAC 下提示 reconnecting ,自建服务和 ngrok.cc 都正常,查查是怎么回事, qq 浏览器的没有测
    bobchengbin
        59
    bobchengbin  
    OP
       2015-11-19 11:56:54 +08:00
    @trampx 是使用的我提供的 Ngrok 客户端吗?因为我这边是自签名证书,所以用不了官方的客户端。
    didos
        60
    didos  
       2015-12-17 12:04:47 +08:00 via Android
    收藏成功
    666Demon
        61
    666Demon  
       2016-01-06 14:41:56 +08:00
    映射的网址被腾讯云拦截了是什么情况?求帮助,提示:很抱歉!该网站暂时无法访问
    damichn
        62
    damichn  
       2016-01-13 09:59:56 +08:00
    从前两开始就不能用了,以下是提示信息!
    很抱歉!该网站暂时无法访问
    原因一:该网站未在腾讯云备案,请网站主办者尽快提交备案
    原因二:该网站可能存在不适宜传播的信息,请联系网站管理员
    温馨提示:无法访问只是暂时性的,完成备案后即可恢复访问
    bobchengbin
        63
    bobchengbin  
    OP
       2016-01-14 09:58:22 +08:00
    @666Demon @damichn 这次转到腾讯云的问题,现在已经在腾讯云上验证域名了,应该好了。
    wuwen635028360
        64
    wuwen635028360  
       2016-01-22 08:15:04 +08:00
    非常感谢,很好用
    mrliusg
        65
    mrliusg  
       2016-04-07 16:30:38 +08:00
    非常好用,感谢!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6018 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 02:15 · PVG 10:15 · LAX 18:15 · JFK 21:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.