可不可以在 zmodem 协议之上创建一个 http proxy 呢 - V2EX
请不要在回答技术问题时复制粘贴 AI 生成的内容
maladaxia

可不可以在 zmodem 协议之上创建一个 http proxy 呢

  •  
  •   maladaxia Feb 24, 2023 3037 views
    This topic created in 1178 days ago, the information mentioned may be changed or developed.

    公司的服务器需要堡垒机才能登陆, 使用 ssh tunnel 创建 proxy 不太可行.
    但可以用 rz/sz 命令上传下载文件.

    所以我就想, 文件跟 socket 连接在操作系统看来没有什么本质不同.
    那么有没有可能使用 zmodem 协议创建一个 http proxy 呢

    这样就可以在本机上连接服务了, 还有其他用处.

    Supplement 1    Mar 31, 2023
    感谢 @beordle 大佬的 https://github.com/beordle/termtunnel
    正是我想要的
    27 replies    2023-03-30 23:01:38 +08:00
    tairan2006
        1
    tairan2006  
       Feb 24, 2023
    用 frp ?

    不过你最好别瞎折腾,有可能犯法
    maladaxia
        2
    maladaxia  
    OP
       Feb 24, 2023
    @tairan2006 用 frp 立即就会被公司运维发现
    ho121
        3
    ho121  
       Feb 24, 2023
    没研究过,不过盲猜 natcat 可以做到
    maladaxia
        4
    maladaxia  
    OP
       Feb 24, 2023
    @ho121 netcat 需要服务器开放 ip + 端口才能连接上啊,
    因为有堡垒机, 个人电脑不能直接连接上这台服务器
    seanzxx
        5
    seanzxx  
       Feb 24, 2023
    没看明白,为什么堡垒机不能用 ssh tunnel 创建 proxy 呢?
    flush9f
        6
    flush9f  
       Feb 24, 2023
    找现成的 ppp 就可以吧,如果自己写的话,基于 ssh 包一个 tun ,对端直接开 raw 模式就行吧,要不要编码就看有没有命令劫持啥的了。
    ysc3839
        7
    ysc3839  
       Feb 24, 2023 via Android
    不需要 rzsz 呀,建立 ssh 后就有了个基于流的管道了,自己实现个 UDP over “TCP”协议,最简单的就是先发包长度然后发数据,走这个管道发就行了,然后对接 tun 虚拟网卡,一个最简单的 VPN 就完成了。
    darrh00
        8
    darrh00  
       Feb 24, 2023 via iPhone
    用信鸽都能实现 tcp ,http 不在话下
    maladaxia
        9
    maladaxia  
    OP
       Feb 24, 2023
    @seanzxx 你可以理解为用的是修改过的 ssh 登陆的, 功能有限制
    billlee
        10
    billlee  
       Feb 24, 2023 via Android
    远古科技 slirp 可以。
    rrfeng
        11
    rrfeng  
       Feb 24, 2023 via Android
    我记得本站有人发过一个轮子,就是干这个的。但是没搜到。
    kenvix
        12
    kenvix  
       Feb 24, 2023
    @flush9f 已经有 pppossh 这个东西了
    ysc3839
        13
    ysc3839  
       Feb 24, 2023 via Android
    @kenvix 多谢提醒,找到了这个页面,有很多种方式 https://wiki.archlinux.org/title/VPN_over_SSH
    kenvix
        14
    kenvix  
       Feb 24, 2023
    @ysc3839 说实话还是尽量不要考虑在 SSH 上跑 L2 或者 L3 级别的协议,这样会有 TCP over TCP 的问题,会让网速变得很拉垮。
    seers
        15
    seers  
       Feb 24, 2023
    插眼,我司堡垒机是浏览器页面一个插件调起本地 xshell ,也是一直想搞个 ssh 动态端口到本地,但是调起的时候又没地方配置,有时候也需要一个内网环境做些测试,和你需求类似
    maladaxia
        16
    maladaxia  
    OP
       Feb 25, 2023
    @billlee 这种远古科技都快失传了, 网上资料都很少
    ShineyWang
        17
    ShineyWang  
       Feb 25, 2023 via Android
    xshell 支持代理,你看看你堡垒机的文档连接方法看看?
    flush9f
        18
    flush9f  
       Feb 25, 2023
    @kenvix 我想的是 netgraph 。。有这一个楼主想怎么搞都行。。
    flush9f
        19
    flush9f  
       Feb 25, 2023
    @kenvix 这个倒是还好,我现在就是 tcp over tcp, 只要不丢包,和 udp 差别没太大
    maladaxia
        20
    maladaxia  
    OP
       Feb 25, 2023
    @ShineyWang 不可以的, 因为通过堡垒机跳了好几层, 用的不是标准 ssh
    ShineyWang
        21
    ShineyWang  
       Feb 25, 2023 via Android
    @maladaxia xshell 支持多层代理的
    ShineyWang
        22
    ShineyWang  
       Feb 27, 2023
    我前两天刚研究了阿里云盾的直连方法
    阿里云有介绍透明代理:https://help.aliyun.com/document_detail/61503.html

    另外 Xshell 支持 JumpHost,在代理里面可以配置多级代理连接
    你可以试试
    maladaxia
        23
    maladaxia  
    OP
       Feb 27, 2023
    @ShineyWang 感谢回复, 不过 我司的堡垒机是自己研发的, 用的也是修改过的 ssh, ssh tunnel 不可行.
    我是 mac 环境, 也没法用 xshell
    pp3182429
        24
    pp3182429  
       Mar 27, 2023
    最后有方案么?同样遇到可以 ssh 但是无法 tunnel 的情况。不过 szrz 是通的。
    maladaxia
        25
    maladaxia  
    OP
       Mar 27, 2023
    @pp3182429 还没找到可行的方案.
    通过调研, zmodem 是个文本协议. 直接使用 zmodem 协议是不行的.
    不过如果通过修改 zmodem 协议, 或者自己设计一个新的文本协议, 技术上是可行的
    beordle
        26
    beordle  
       Mar 30, 2023   1
    maladaxia
        27
    maladaxia  
    OP
       Mar 30, 2023
    @beordle 哇哦, 这就是我想要的
    Thank you very much!

    本来已经研究好 lszrz 和 zmodem 了, 想自己写一个呢
    这下不用费事了
    About     Help     Advertise     Blog     API     FAQ     Solana     886 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 80ms UTC 22:28 PVG 06:28 LAX 15:28 JFK 18:28
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86