zhaojh329/rtty
GitHub: zhaojh329/rtty
rtty 是一个通过 Web 浏览器远程管理 Linux 设备的轻量级终端方案,支持文件传输、批量命令执行和 HTTP 代理,专为嵌入式及大规模分布式设备运维设计。
Stars: 4003 | Forks: 540
# rtty ([中文](/README_ZH.md)) - 通过 Web 从任何地方访问您的设备
**本项目由 [GL.iNet](https://www.gl-inet.com) 正式支持。**
[][2]
[][4]
[][6]
[][8]


[][11]
[][13]

## 架构
```
flowchart TB
s[rttys with public IP address]
u1["User (Web Browser)"] --> s
u2["User (Web Browser)"] --> s
u3["User (Web Browser)"] --> s
s --> c1["rtty (Linux Device)"]
s --> c2["rtty (Linux Device)"]
s --> c3["rtty (Linux Device)"]
```




## 概述
rtty 是一个由客户端和[服务端]组成的强大远程终端解决方案。
**客户端实现:**
- **C 客户端:** 超轻量级,专为嵌入式 Linux 和资源受限设备设计。
- **Go 客户端:** 易于交叉平台编译,适合快速集成和云原生/容器环境。
服务端使用 Go 实现,前端采用 [Vue] 构建的现代化界面。
您可以通过 Web 浏览器从任何地方访问您的设备,并使用唯一的设备 ID 管理设备。
rtty 非常适合大规模分布式 Linux 设备的远程维护和管理,是企业运维的绝佳选择。
**Go 客户端仓库:** [https://github.com/zhaojh329/rtty-go](https://github.com/zhaojh329/rtty-go)
## 主要特性
### 🚀 **多语言客户端选项**
- **C 客户端:**
- 超轻量级,专为嵌入式 Linux 和资源受限设备设计
- 极小的占用空间(无 SSL:rtty 32KB + libev 56KB;有 SSL:+ libmbedtls 88KB + libmbedcrypto 241KB + libmbedx509 48KB)
- 支持多种 SSL 后端 (OpenSSL, mbedtls, CyaSSl/wolfssl)
- 支持 mTLS 双向认证
- **Go 客户端:**
- 易于交叉平台编译,适合快速集成和云/容器环境
- 依赖项极少,部署简单
- 具有与 C 客户端相同的功能,并完全兼容。
### 🔐 **安全性**
- 支持多种 SSL 后端和双向认证,确保数据传输安全
### 🌐 **高级远程管理**
- 跨多台设备批量执行命令
- 使用唯一的设备 ID 进行设备识别
- 支持 HTTP 代理,用于访问设备的 Web 界面
### 📁 **文件管理**
- 无缝文件传输:便捷的上传和下载
- 基于网页的界面,提供直观的文件操作
### 💻 **现代终端体验**
- 由 [Xterm.js] 驱动的全功能终端
- 随时随地的浏览器访问
- 支持触摸设备的虚拟键盘
- 支持窗口拆分,实现多会话和多任务处理
### ⚡ **部署与兼容性**
- 部署简单,设置快捷
- 易于使用的界面
- 跨平台兼容性
### ⚡ **部署与易用性**
- **简单的部署**流程
- **易于使用的**界面
- **跨平台兼容性**
## 生产用户
受到领先科技公司的信赖:
- **[GL.iNet](https://www.gl-inet.com/)**
- **[云联芯科技](http://www.iyunlink.com/)**
- **[One IOT World](https://www.oneiotworld.com/)**
- **[bitswrt 通信技术](http://bitswrt.com/)**
- **[广州灵派科技](https://linkpi.cn/)**
- *...以及更多*
## 客户端依赖
### C 客户端依赖
- **必需:**
- [libev] - 高性能事件循环库
- [inih](https://github.com/benhoyt/inih) - 用于加载 rtty 配置文件的轻量级 INI 解析器
- **可选(用于 SSL 支持):**
- [mbedtls(polarssl)] - 轻量级 SSL/TLS 库
- [CyaSSl(wolfssl)] - 嵌入式 SSL/TLS 库
- [openssl] - 功能齐全的 SSL/TLS 工具包
### Go 客户端依赖
- 无额外依赖。纯 Go 构建和运行。
## 🤝 贡献
帮助我们让 [rtty](https://github.com/zhaojh329/rtty) 变得更好!
有关如何为该项目做贡献的详细指南,请参阅 [CONTRIBUTING.md](https://github.com/zhaojh329/rtty/blob/master/CONTRIBUTING.md) 文件。
## ❤️ [捐赠](https://zhaojh329.github.io/zhaojh329/)
标签:Go语言, IoT管理, libev, mbedtls, mTLS, OpenSSL, rtty, Vue, Web SSH, Web终端, 内网穿透, 分布式设备管理, 安全测试工具, 客户端加密, 嵌入式Linux, 开源, 文件系统扫描, 日志审计, 物联网, 程序破解, 终端管理, 设备管理, 设备维护, 运维工具, 远程控制, 远程管理, 远程终端, 远程访问, 远程运维