kaneg

造了一个基于 HTTP 的 Shell 轮子

  •  
  •   kaneg · Jan 13, 2018 · 6129 views
    This topic created in 3222 days ago, the information mentioned may be changed or developed.

    这是一个类似 SSH 的工具,包括服务端和客户端,有以下特性:

    • Go 语言编写
    • 基于 HTTP/WebSocket,默认 HTTPs
    • 支持基于证书的验证方式
    • 服务器目前支持 Linux,客户端支持 Linux,Windows 和 macOS

    创作的最初灵感来源于防火墙仅允许 HTTP 协议,传统的 SSH 协议无法通行,所以基于 HTTP 协议而来。

    github 地址: https://github.com/kaneg/httpshell

    目前功能比较简陋,如果有任何建议,可以继续添砖加瓦。

    11 replies  •  2018-01-13 21:54:55 +08:00
    111111111111
    111111111111
    Jan 13, 2018 via Android
    1
    web shell?
    Septembers
    Septembers
    Jan 13, 2018❤️1
    2
    根本不需要 WebSocket,see https://golang.org/pkg/net/http/#Hijacker

    当然你要支持不支持 CONNECT 方法的 HTTP 代理那是另外的话题
    kaneg
    kaneg
    OP
    Jan 13, 2018
    3
    @111111111111
    不是 web shell, 仅仅是底层通讯使用 http 协议
    kaneg
    kaneg
    OP
    Jan 13, 2018
    4
    @Septembers
    这个 Hijacker 倒是第一次听说,与 websocket 有什么差异?
    kikyous
    kikyous
    Jan 13, 2018 via Android
    5
    有现成的
    lululau
    lululau
    Jan 13, 2018
    6
    ssh 原来是个 shell 啊
    choury
    choury
    Jan 13, 2018 via Android
    7
    jisibencom
    jisibencom
    Jan 13, 2018 via Android
    8
    这样就可以不用 putty 等终端了吗?
    kaneg
    kaneg
    OP
    Jan 13, 2018 via iPhone
    9
    @jisibencom
    是的,客户端就等于 putty 的作用
    ping2
    ping2
    Jan 13, 2018❤️1
    10
    事实上,如果是 https 的话,直接让 ssh 监听 443 就好了。https://help.github.com/articles/using-ssh-over-the-https-port/

    corkscrew 可以把 tcp 链接放到 http(s) 代理后面,所以也可以达到类似目的。另外还有 stunnel。

    但是最容易的是 ssh over socks,这里就不举例子了。
    shalk
    shalk
    Jan 13, 2018 via iPhone
    11
    mosh
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   925 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 21:35 · PVG 05:35 · LAX 13:35 · JFK 16:35
    ♥ Do have faith in what you're doing.