V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
bugfan
V2EX  ›  程序员

用 chrome 插件开发一个内网穿透工具

  •  
  •   bugfan ·
    bugfan · 2022-03-17 10:55:00 +08:00 · 2644 次点击
    这是一个创建于 742 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,使用 chrome 插件开发个内网穿透工具,对外提供 https 服务,把内网服务转出去,给其他用户使用,比如远程调试,微信 api 调试,异地办公等

    15 条回复    2022-03-17 21:06:12 +08:00
    lisongeee
        1
    lisongeee  
       2022-03-17 11:32:00 +08:00
    chrome 插件 如果 提供 https 服务 ?哪个 api 有这个功能?
    lisongeee
        2
    lisongeee  
       2022-03-17 11:32:20 +08:00
    如果 -> 如何
    nimei31
        3
    nimei31  
       2022-03-17 13:24:34 +08:00
    貌似只能 chrome app 可以实现
    bugfan
        4
    bugfan  
    OP
       2022-03-17 13:28:15 +08:00
    @lisongeee 嗯,在 chrome app 的开发文档里面有一章节是 tcp/udp 编程,如果与服务器建立长链接,然后在服务器提供 https 服务器,然后把服务器的 https 流量通过这个 socket 链接送进来,不就实现内网穿透了。。理论上可行
    oldshensheep
        5
    oldshensheep  
       2022-03-17 14:55:55 +08:00   ❤️ 1
    其实不用插件一个网页就可以内网穿透了(限 http 协议),服务器用 ws 和浏览器建立长连接,发送到服务器的 http 请求通过 ws 发送到浏览器,浏览器再访问本地的 http 服务获得结果,通过 ws 返回给服务器就行了。
    Archeb
        6
    Archeb  
       2022-03-17 15:02:55 +08:00 via iPhone
    chrome app 已经被淘汰了,插件没有这样的权限可以直接访问 socket

    @oldshensheep 限制太多,光是跨域就有够受的....就算是插件能无视跨域限制,也只能覆盖到大部分的场景而不能完全复现内网穿透(四层数据包直接转发)的请求行为。
    bugfan
        7
    bugfan  
    OP
       2022-03-17 15:09:32 +08:00
    @oldshensheep 这个方案我刚打算做时候就想到了,问题太多,而且实现的不完善,跨域,敏感头代理等等,最后没辙了我就放弃了。但是那是最美好的结果,因为啥都不用装,直接打开网页就行了。😂
    bugfan
        8
    bugfan  
    OP
       2022-03-17 15:16:04 +08:00
    @Archeb 嗯,所见略同,但是我觉得就是 chrome app 应该比下载个客户端软件安装到自己设备更方便吧,为啥要淘汰呢?
    bugfan
        9
    bugfan  
    OP
       2022-03-17 15:46:22 +08:00
    尴尬了,也是刚看到 google 从 chrome app 2022.6 停止支持。。。
    算了,我放弃了
    statumer
        10
    statumer  
       2022-03-17 16:16:47 +08:00 via iPhone
    这种需求只能通过 native messaging 实现
    iqoo
        11
    iqoo  
       2022-03-17 16:25:36 +08:00
    不用插件就可以实现。之前做过一个原型,给 chrome 加上启动参数关闭 CORS 等限制,不过问题还是挺多的。
    JavaGym
        12
    JavaGym  
       2022-03-17 17:45:37 +08:00
    用 Ngrok
    yaott2020
        13
    yaott2020  
       2022-03-17 19:43:26 +08:00
    frp 挺好用的
    bugfan
        14
    bugfan  
    OP
       2022-03-17 21:04:56 +08:00
    @yaott2020 嗯这个不错,我就是想自己搞一个尽量不需要下载客户端的。。
    bugfan
        15
    bugfan  
    OP
       2022-03-17 21:06:12 +08:00
    @kaihu204 印象里 ngrok 每用一会就会断开,我想搞个不用客户端下载的东西,,尽量想少点依赖,能支持 https 就行,不过现在来看,客户端下载一个可执行程序这一步是不可避免了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3100 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 14:34 · PVG 22:34 · LAX 07:34 · JFK 10:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.