Skip to content

Feature: Web UI 远程访问 #14

Description

@Ding262

功能描述

提供 Web 界面,允许用户通过浏览器访问和管理 muxkit 会话。

使用场景

  • 在没有 SSH 客户端的设备上访问终端(如 iPad、手机)
  • 通过 HTTPS 安全访问远程服务器
  • 与他人共享终端会话(无需他们安装任何软件)
  • 在公司网络限制下访问开发环境

建议实现

架构

Browser <---> HTTPS <---> muxkit-web-server <---> Unix Socket <---> muxkit daemon

核心功能

  1. 终端模拟: 使用 xterm.js 或类似库在浏览器中渲染终端
  2. WebSocket 通信: 实时双向通信
  3. 会话管理: 列出/切换/创建 session
  4. 认证: 简单的 token 或密码认证

配置

# ~/.config/muxkit/web.yaml
server:
  port: 8080
  bind: 127.0.0.1  # 或 0.0.0.0 对外开放
  tls:
    cert: /path/to/cert.pem
    key: /path/to/key.pem
auth:
  type: token
  token: your-secret-token

启动方式

# 启动 web 服务
muxkit web

# 或作为 daemon
muxkit web --daemon

安全考虑

  • 强制 HTTPS
  • Token 或密码认证
  • 可选 IP 白名单
  • 审计日志

优先级

低 - 这是一个较大的功能,可以作为长期目标


相关项目参考

  • gotty (Go + tty)
  • ttyd (C 语言实现)
  • wetty (Web + tty)
  • code-server (VS Code 的 Web 版本)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions