Jianhui Zhao ca5ed5129d Bump version 6.1.2
Signed-off-by: Jianhui Zhao <jianhuizhao329@gmail.com>
2018-09-20 21:42:09 +08:00
2018-09-08 17:45:57 +08:00
2018-09-20 21:42:09 +08:00
2018-09-08 23:56:13 +08:00
2018-01-12 18:14:44 +08:00
2018-01-17 22:39:08 +08:00
2018-09-08 17:53:00 +08:00
2018-03-15 13:30:48 +08:00
2018-03-15 13:30:48 +08:00
2018-03-15 13:30:48 +08:00
2018-03-03 17:28:20 +08:00
2018-09-09 12:56:52 +08:00
2018-09-09 12:56:52 +08:00
2018-09-20 21:42:09 +08:00
2018-09-20 21:42:09 +08:00
2018-06-16 11:59:07 +08:00
2018-06-16 11:59:07 +08:00
2018-06-18 00:27:31 +08:00
2018-03-21 21:10:09 +08:00

rtty(中文)

license PRs Welcome Issue Welcome Release Version Build Status

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

You can access your terminals from anywhere via the web. Differentiate your different terminals by device ID(If the ID is not set, the MAC address of your device is used).

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

Features

  • Simple to deployment and easy to use
  • Access different devices based on device ID
  • Provide a dashboard to visualize online devices
  • Fully-featured terminal based on Xterm.js
  • SSL support: openssl, mbedtls, CyaSSl(wolfssl)
  • Support upload file to device
  • Support download file from devices
  • Support Execute a command remote
  • The client written in pure C, suitable for embedded Linux
  • Cross platform: Linux, OpenWrt/LEDE

Dependencies for Client side

  • libev - A full-featured and high-performance event loop
  • libuwsc - A Lightweight and fully asynchronous WebSocket client library based on libev
  • protobuf-c: - Protocol Buffers implementation in C
  • mbedtls(polarssl) - If you choose mbedtls as your SSL backend
  • CyaSSl(wolfssl) - If you choose wolfssl as your SSL backend
  • openssl - If you choose openssl as your SSL backend

Deploying the server side

How to install and run the Client - rtty

For Linux distribution: Ubuntu, Debian, ArchLinux, Centos

Install

wget -qO- https://raw.githubusercontent.com/zhaojh329/rtty/master/tools/install.sh | sudo bash

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

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

For Embedded Linux Platform

You need to cross compiling by yourself

For OpenWRT

Usage

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

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

Automatic login: https://your-server:5912/#/?id=device-id&username=device-username&password=device-password

Other functions

Please click the right mouse button

Execute a command remote

Shell

curl -k https://your-server:5912/cmd -d '{"devid":"test","username":"test","password":"123456","cmd":"ls","params":["/"],"env":{}}'

{"Err":0,"msg":"","code":0,"stdout":"bin\ndev\netc\nlib\nmnt\noverlay\nproc\nrom\nroot\nsbin\nsys\ntmp\nusr\nvar\nwww\n","stderr":""}

Jquery

var data = {devid: 'test', username: 'test', password: '123456', cmd: 'ls', params: ['/'], env: {}};
$.post('https://your-server:5912/cmd', JSON.stringify(data), function(r) {console.log(r)});

Axios

var data = {devid: 'test', username: 'test', password: '123456', cmd: 'ls', params: ['/'], env: {}};
axios.post('https://your-server:5912/cmd', JSON.stringify(data)).then(function (response) {
    console.log(response.data);
}).catch(function (error) {
    console.log(error);
});

Donate

Contributing

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

QQ group: 153530783

If the project is helpful to you, please do not hesitate to star. Thank you!

S
Description
⚠️ ARCHIVED: Original GitHub repository no longer exists. Preserved as backup on 2026-02-27T09:20:37.234Z
Readme MIT 9.7 MiB
Languages
C 96.1%
CMake 2.5%
Shell 1.4%