Watch 67 Star 310 Fork 63

GVP赵建辉 / rttyCMIT

Join us
Explore and code with more than 2 million developers,Free private repositories !:)
Sign up
在任何地方通过web访问您的设备的终端 spread retract

Clone or download


license PRs Welcome Issue Welcome Release Version Build Status Support rtty

It is composed of a client and a server. The client is written in pure C. The server is written in go language and the front-end interface is written in Vue.

You can access your device's terminal from anywhere via the web. Differentiate your different device by device ID.

rtty is very suitable for remote maintenance your or your company's thousands of Linux devices deployed around the world.


  • The client is writen in C language, very small, suitable for embedded Linux
  • Execute command remotely in a batch of devices
  • SSL support: openssl, mbedtls, CyaSSl(wolfssl)
  • Very convenient to upload and download files
  • Access different devices based on device ID
  • Fully-featured terminal based on Xterm.js
  • Simple to deployment and easy to use

Dependencies of the Client side

Deploying the server side

How to install and run the Client - rtty

For Linux distribution: Ubuntu, Debian, ArchLinux, Centos


wget -qO- | sudo bash

Command-line Options

Usage: rtty [option]
    -I, --id=string          Set an ID for the device(Maximum 63 bytes, valid
                             character:letter, number, underline and short line)
    -h, --host=string        Server's host or ipaddr(Default is localhost)
    -p, --port=number        Server port(Default is 5912)
    -d, --description=string Adding a description to the device(Maximum 126 bytes)
    -a                       Auto reconnect to the server
    -s                       SSL on
    -D                       Run in the background
    -t, --token=string       Authorization token
    -f username              Skip a second login authentication. See man login(1) about the details
    -R                       Receive file
    -S file                  Send file
    -v, --verbose            verbose
    -V, --version            Show version
    --help                   Show usage

Run RTTY(Replace the following parameters with your own parameters)

sudo rtty -I 'My-device-ID' -h 'your-server' -p 5912 -a -v -d 'My Device Description'

If your rttys is configured with a token, add the following parameter(Replace the following token with your own)

-t 34762d07637276694b938d23f10d7164

For OpenWRT

For Other Embedded Linux Platform


Use your web browser to access your server: http://your-server-host:5913, then click the connection button

You can easily embed RTTY into your existing platform: http://your-server-host:5913/#/?id=your-id

Automatic login: http://your-server:5913/#/?id=device-id&username=device-username&password=device-password

Transfer file

Transfer file from local to remote device

rtty -R

Transfer file from remote device to the local

rtty -S test.txt

Execute command remotely


If you would like to help making rtty better, see the file.

Comments ( 31 )

Sign in for post a comment


Help Search