• 💂 个人网站: IT知识小屋
  • 🤟 版权: 本文由【IT学习日记】原创、在CSDN首发、需要转载请联系博主
  • 💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦

简介

Rtty是一款完全开源、免费的强大的远程终端解决方案,使用它,你可以在任何地方通过web访问您的设备的终端。 Rtty由客户端和服务端组成,客户端现已支持两种实现(即C语言客户端、Go语言客户端),满足不同平台与场景的使用需求,服务端采用Go语言实现,前端界面基于Vue框架构建。系统通过唯一设备ID进行设备区分和管理,保障用户使用Web浏览器,可以随时随地访问设备,非常适合远程维护和管理大规模分布式Linux设备,是企业级设备运维的理想选择。

不同客户端特点如下:

  • C 语言客户端:

    • 极致轻量,专为嵌入式Linux和资源受限设备设计。

    • 占用极小(无SSL版本:rtty 32KB + libev 56KB;SSL版本:+ libmbedtls 88KB + libmbedcrypto 241KB + libmbedx509 48KB)

    • 支持多种 SSL 后端(OpenSSL、mbedtls、CyaSSl/wolfssl)

    • 支持双向 SSL 认证(mTLS)

  • Go 语言客户端:

    • 易于跨平台编译,适合快速集成和二次开发。

    • 依赖少,部署简单,适合云原生和容器环境

    • 与 C 客户端功能一致,完全兼容


架构

系统架构

技术栈

前端:基于Vue + Xterm.js的终端界面,提供全功能命令行体验

客户端:C 或 GO

服务端:GO

功能列表

安全

  • 支持多种 SSL 后端与双向认证,确保数据传输安全可靠

  • 提供强大的权限控制和身份验证机制,防止未经授权的访问

高级远程管理

  • 批量命令执行,支持同时对多台设备进行远程操作,提高管理效率

  • 设备 ID 识别,通过唯一设备 ID 对设备进行区分与管理

  • HTTP 代理支持,可安全访问设备的 Web 管理界面

文件管理

  • 无缝文件传输,支持文件的快速上传和下载,支持双向文件传输:从本地发送文件到远程设备,从远程设备接收文件到本地

  • Web 界面操作,提供直观、可视化的文件管理体验

  • 支持断点续传,确保大文件传输的可靠性

现代终端体验

  • 全功能终端,基于 Xterm.js 实现完整的终端操作体验

  • 浏览器访问,无需安装客户端即可随时随地连接设备

  • 虚拟键盘支持,优化触摸设备的操作体验

  • 支持窗口分割,便于多会话、多任务同时操作

  • 命令历史与自动补全,提高终端操作效率

部署与兼容性

  • 简单部署,快速搭建远程终端服务

  • 易于使用,界面直观,操作流程清晰

  • 跨平台兼容,支持多种操作系统和运行环境

  • 高性能设计,保证在大规模设备管理下的稳定性

  • 自动重连:客户端支持在网络中断时自动重连服务器,确保长期、稳定、可靠的远程运维能力

应用场景

  • 全球分布式设备运维:全球分布式Linux设备运维(如IoT设备、OpenWRT 路由器)

  • 嵌入式设备远程调试:嵌入式设备远程调试(OpenWRT 路由器、工业网关)

  • 批量自动化运维:批量自动化命令执行与日志收集


功能展示

终端操作

文件传输

设备管理

移动端操作


开源地址&使用手册

点击下方的【IT学习日记】回复【资源】领取!

如果这篇文章对您有帮助,请一定帮我点个 “关注”“点赞”,这对我非常重要。我将会继续推荐更多优质项目和新闻。

写在最后

1000+优质开源项目更新进度:226/1000。如需更多类型优质项目推荐,请在文章后留言。

在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐