Skip to content
プロジェクト

zhaojh329/rtty has 4,051 GitHub stars and 551 forks. GitHot measured 0 stars in 24 hours and -1 in 7 days. Last checked 2026-11-12 10:33 UTC. Last push 2026-10-16.

この数値の測り方

🐛 Access your device from anywhere via the web.

計測したスター増加

24時間
0
7日間
-1
15日間
更新が遅れています
1か月
更新が遅れています

期間ごとの純増数です。期間は重複しており、日別の値ではありません。未計測の値は空欄です。スター数は注目度の指標であり、品質の保証ではありません。

rtty (中文) - Access your device from anywhere via the web

This project is officially supported by GL.iNet.

license PRs Welcome Issue Welcome Release Version Build Status Downloads

Project website · Installation & usage guide

Architecture

flowchart TB
s["rttys server"]
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)"]

Remote terminal in the browser File upload and download Access to a device's web interface

Overview

rtty is a remote access solution composed of device clients and the rttys server. This repository contains the C client; rttys provides the web interface and relays connections to devices. Open a terminal, transfer files, and access device services through a central server.

Client Implementations:

  • C Client: Ultra-lightweight, designed for embedded Linux and resource-constrained devices.
  • Go Client: Easy cross-platform compilation, suitable for rapid integration and deployment.

The server is implemented in Go, with a modern frontend built using Vue.

Both browsers and device clients must be able to reach the server. Clients initiate connections to it, so devices behind NAT do not need public IP addresses or inbound port forwarding. Access devices through your browser and identify them by device ID and group.

Use rtty to maintain OpenWrt routers, troubleshoot embedded Linux gateways, or manage distributed Linux devices remotely.

Go client repository: https://github.com/zhaojh329/rtty-go

Key Features

🚀 Multi-language Client Options

  • C Client:

    • Ultra-lightweight, designed for embedded Linux and resource-constrained devices
    • Multiple SSL backends (OpenSSL, mbedtls, CyaSSl/wolfssl)
    • mTLS support for mutual authentication
  • Go Client:

    • Easy cross-platform compilation, suitable for rapid integration and deployment
    • Dependencies managed by the Go toolchain for straightforward builds and deployment
    • Connects to the same rttys server as the C client

🔐 Security

  • TLS encryption for connections between device clients and rttys
  • Optional mutual TLS (mTLS) for certificate-based client authentication

🌐 Advanced Remote Management

  • Batch command execution across multiple devices
  • Device identification and organization using IDs and groups
  • HTTP proxy support for accessing device web interfaces
  • TCP port forwarding for accessing TCP services through connected devices

📁 File Management

  • Upload and download files through the web interface

💻 Modern Terminal Experience

  • Full-featured terminal powered by Xterm.js
  • Browser-based access from anywhere
  • Virtual keyboard support for touch devices
  • Window splitting for multi-session and multitasking
  • Serial terminal forwarding support

⚡ Deployment & Compatibility

  • Simple deployment: configure the server and connect your devices to get started
  • Manage devices, access terminals, and transfer files through the web interface
  • Clients for Linux and OpenWrt environments

Production Users

Trusted by leading technology companies:

Client Dependencies

C Client Dependencies

  • Required:
    • libev - High-performance event loop library
    • inih - Lightweight INI parser for loading rtty config file
  • Optional (for SSL support):

Go Client Dependencies

  • Go module dependencies are managed by the Go toolchain.

⭐ Star History

🤝 Contributing

Help us make rtty even better!

See the CONTRIBUTING.md file for detailed guidelines on how to contribute to this project.

❤️ Donation

関連プロジェクトを探す