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

开源一款 HTML5 的远程桌面网关,支持 RDP、SSH、VNC 和 Telnet 协议的连接和管理,求个 star。

  •  4
     
  •   FreeEx ·
    dushixiang · 2020-12-25 23:47:46 +08:00 · 8054 次点击
    这是一个创建于 1432 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Next Terminal

    你的下一个终端,项目地址: https://github.com/dushixiang/next-terminal 。目前项目还不完善,如果您有好的意见或者建议,都可以联系我。

    快速了解

    Next Terminal 是使用 Golang 和 React 开发的一款 HTML5 的远程桌面网关,具有小巧、易安装、易使用、资源占用小的特点,支持 RDP 、SSH 、VNC 和 Telnet 协议的连接和管理。

    Next Terminal 基于 Apache Guacamole 开发,使用到了 guacd 服务。

    目前支持的功能有:

    • 授权凭证管理
    • 资产管理(支持 RDP 、SSH 、VNC 、TELNET 协议)
    • 指令管理
    • 批量执行命令
    • 在线会话管理(监控、强制断开)
    • 离线会话管理(查看录屏)

    在线体验

    https://next-terminal.typesafe.cn/

    admin/admin

    快速安装

    docker 安装

    因为程序依赖了 mysql,所以在启动时需要指定 mysql 的连接信息。

    mkdir /etc/next-terminal
    mkdir /etc/next-terminal/recording
    mkdir /etc/next-terminal/drive
    cat <<EOF >> /etc/next-terminal/config.yaml
    mysql:
      hostname: 172.17.0.1
      port: 3306
      username: root
      password: root
      database: next_terminal
    server:
      addr: 0.0.0.0:8088
    EOF
    
    docker run -d \
      -p 8088:8088 \
      -v /etc/next-terminal/config.yaml:/etc/next-terminal/config.yaml \
      -v /etc/next-terminal/recording/:/usr/local/next-terminal/recording/ \
      -v /etc/next-terminal/drive/:/usr/local/next-terminal/drive/ \
      --name next-terminal \
      --restart always dushixiang/next-terminal:0.0.1
    

    程序安装目录地址为 /usr/local/next-terminal

    录屏文件存放目录为 /usr/local/next-terminal/recording

    远程桌面挂载目录为 /usr/local/next-terminal/drive

    可以通过 -v 参数将宿主机器的目录映射到 docker 中

    相关截图

    资源占用截图

    资源占用截图

    资产管理

    资产

    rdp

    rdp

    vnc

    vnc

    ssh

    ssh

    批量执行命令

    批量执行命令

    第 1 条附言  ·  2020-12-28 01:22:16 +08:00

    建了一个微信群,有问题可以在群里交流。 wx1 如果群失效,请添加微信,备注"加入next-terminal交流群" wx2

    55 条回复    2020-12-30 13:16:37 +08:00
    Tink
        1
    Tink  
       2020-12-25 23:55:31 +08:00 via Android
    👍👍👍
    zvcs
        2
    zvcs  
       2020-12-26 00:06:22 +08:00 via iPhone
    guacd 的 rdp 真的一言难尽,非常不好用
    beyondex
        3
    beyondex  
       2020-12-26 00:07:02 +08:00
    浏览器里连接 RDP 也行?牛逼。
    FreeEx
        4
    FreeEx  
    OP
       2020-12-26 00:12:09 +08:00
    @zvcs 我觉得还好呀,挺好用的
    qanniu
        5
    qanniu  
       2020-12-26 02:15:36 +08:00
    @FreeEx rdp 会不会卡成幻灯片?
    woshijidan
        6
    woshijidan  
       2020-12-26 03:26:16 +08:00 via Android
    走 udp 还是 tcp 的远程?
    FreeEx
        7
    FreeEx  
    OP
       2020-12-26 08:51:04 +08:00 via iPhone
    @qanniu 很流畅,可以体验一下
    FreeEx
        8
    FreeEx  
    OP
       2020-12-26 08:51:12 +08:00 via iPhone
    xinyana
        9
    xinyana  
       2020-12-26 08:59:27 +08:00 via Android
    不简单,先 star 一个
    opengps
        10
    opengps  
       2020-12-26 09:18:43 +08:00
    只看这功能就值得 star
    qiuai
        11
    qiuai  
       2020-12-26 09:50:56 +08:00   ❤️ 1
    RDP 我是觉得不如提供 windows 原生和浏览器两种用法吧。
    RDP 还是原生应用跑起来更舒服,浏览器也就是应急用一下。
    lazyyz
        12
    lazyyz  
       2020-12-26 09:52:39 +08:00
    值得 star 👍
    kikyous
        13
    kikyous  
       2020-12-26 10:05:50 +08:00 via Android
    看起来不错,如果支持 sqlite 会不会更好?
    kikyous
        14
    kikyous  
       2020-12-26 10:09:36 +08:00 via Android
    试了一下好像完全不支持移动端浏览器😳
    FreeEx
        15
    FreeEx  
    OP
       2020-12-26 10:11:15 +08:00
    @kikyous 本来是打算支持 sqlite 的,但是首页的图表用了 mysql 的一些函数,导致不兼容 sqlite,今天我再更新一个版本吧看下能否避免吧。
    FreeEx
        16
    FreeEx  
    OP
       2020-12-26 10:11:50 +08:00
    @xinyana
    @opengps
    @lazyyz
    感谢支持
    FreeEx
        17
    FreeEx  
    OP
       2020-12-26 10:15:20 +08:00
    @qiuai 针对非 win 的操作系统比较方便,过段时间可以提供插件从浏览器唤醒本地的 rdp 或者 xshell 这些工具。
    FreeEx
        18
    FreeEx  
    OP
       2020-12-26 10:15:45 +08:00
    @kikyous 移动端现在没有适配。
    kikyous
        19
    kikyous  
       2020-12-26 10:20:01 +08:00 via Android
    ssh 连接的时候能不能每个主机指定不一样的配置文件,我们公司有很多客户服务器要管理,有一个专门的 repo 来保存针对每个客户的 ssh 配置,里面配置了通过 frp 连接的信息,用起来非常麻烦
    kikyous
        20
    kikyous  
       2020-12-26 10:21:00 +08:00 via Android
    还有就是端口转发,比如把服务器 mysql 端口映射到本地等
    qiuai
        21
    qiuai  
       2020-12-26 10:21:01 +08:00
    有没有计划出原生安装?生产环境没 docker
    FreeEx
        22
    FreeEx  
    OP
       2020-12-26 10:30:34 +08:00
    @kikyous 目前资产可以使用账号密码、私钥、或者已经录入的账号密码进行登录
    端口转发的话可以看下我这个项目 https://github.com/dushixiang/4dnat
    FreeEx
        23
    FreeEx  
    OP
       2020-12-26 10:31:00 +08:00
    @qiuai 今天会把原生安装的文档补上。
    wfhtqp
        24
    wfhtqp  
       2020-12-26 11:34:08 +08:00
    配置可从环境变量获取
    Latin
        25
    Latin  
       2020-12-26 11:43:14 +08:00
    已 star 支持
    qiuai
        26
    qiuai  
       2020-12-26 11:44:14 +08:00
    @FreeEx 期待
    zszhere
        27
    zszhere  
       2020-12-26 12:35:01 +08:00 via iPhone
    可以做堡垒机了
    onetown
        28
    onetown  
       2020-12-26 13:02:59 +08:00
    非常赞,已 star
    ryanlid
        29
    ryanlid  
       2020-12-26 13:27:08 +08:00
    已 star,👍 👍
    yeqizhang
        30
    yeqizhang  
       2020-12-26 14:19:22 +08:00 via Android
    加上审计功能可以做堡垒机
    zagfai
        31
    zagfai  
       2020-12-26 17:12:07 +08:00
    牛逼。。
    walkersz
        32
    walkersz  
       2020-12-26 17:32:42 +08:00
    🐂🍺,做得真好,已 star
    shunconf
        33
    shunconf  
       2020-12-26 17:42:26 +08:00
    RDP 渲染可能还需要优化一下下 做得真好
    whwq2012
        34
    whwq2012  
       2020-12-26 19:14:51 +08:00
    支持离线安装吗,我想给隔离的内网电脑装一个
    JackalZhao
        35
    JackalZhao  
       2020-12-26 19:30:05 +08:00 via Android
    期待 sqlite 支持和可执行文件发行版
    CallMeReznov
        36
    CallMeReznov  
       2020-12-26 21:12:00 +08:00
    牛逼牛逼,这是真大佬 ,已经加星

    anxn
        37
    anxn  
       2020-12-26 21:24:40 +08:00 via Android
    牛,能适配下移动端就更好了
    FreeEx
        38
    FreeEx  
    OP
       2020-12-26 22:15:20 +08:00
    chilaoqi
        39
    chilaoqi  
       2020-12-26 22:25:14 +08:00
    不错,不过叻,建议加入 JumpServer 团队。
    playniuniu
        40
    playniuniu  
       2020-12-26 23:27:59 +08:00
    非常不错,赞一个
    azhi2007
        41
    azhi2007  
       2020-12-27 12:04:59 +08:00 via Android
    我这等普通用户如何实施
    FreeEx
        42
    FreeEx  
    OP
       2020-12-28 01:17:41 +08:00
    @qiuai 原生安装已支持
    @wfhtqp docker 已经修改为从环境变量获取参数了
    @JackalZhao sqlite 已支持
    FreeEx
        43
    FreeEx  
    OP
       2020-12-28 01:18:31 +08:00
    @chilaoqi 哈哈,去不了。
    FreeEx
        44
    FreeEx  
    OP
       2020-12-28 01:18:52 +08:00
    @playniuniu 感谢支持
    FreeEx
        45
    FreeEx  
    OP
       2020-12-28 01:19:06 +08:00
    @azhi2007 请问是有什么问题吗?
    molezznet
        46
    molezznet  
       2020-12-28 09:32:16 +08:00
    SQLITE_FILE 这个变量可以指定 host 位置吧?
    FreeEx
        47
    FreeEx  
    OP
       2020-12-28 09:45:32 +08:00
    @molezz765 用 docker 的 -v 参数映射即可
    makizcy
        48
    makizcy  
       2020-12-28 16:14:46 +08:00
    docker 版本不能修改密码,报错,也没有登出按钮。
    FreeEx
        49
    FreeEx  
    OP
       2020-12-28 16:18:30 +08:00
    sxfscool
        50
    sxfscool  
       2020-12-28 19:35:47 +08:00
    感觉 sqllite 更好一点
    qiuai
        51
    qiuai  
       2020-12-28 19:51:04 +08:00
    @FreeEx 启动以后,
    qiuai
        52
    qiuai  
       2020-12-28 19:51:31 +08:00
    @FreeEx 启动以后,

    [root@localhost next-terminal]# ./next-terminal
    Dec 28 19:50:11.668 [INFO] 当前数据库模式为:sqlite

    ____ __
    / __/___/ / ___
    / _// __/ _ \/ _ \
    /___/\__/_//_/\___/ v4.1.17
    High performance, minimalist Go web framework
    https://echo.labstack.com
    ____________________________________O/_______
    O\
    ⇨ http server started on [::]:8088


    访问也访问不到,这个好像也需要做一下后台运行把?
    tysb777
        53
    tysb777  
       2020-12-29 17:21:59 +08:00
    demo 账号密码错误
    FFF5279
        54
    FFF5279  
       2020-12-30 12:09:50 +08:00 via Android
    不错,插眼
    FreeEx
        55
    FreeEx  
    OP
       2020-12-30 13:16:37 +08:00
    @tysb777 被其他人改,我改回来了。
    @FFF5279 感谢支持
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6030 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 02:26 · PVG 10:26 · LAX 18:26 · JFK 21:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.