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 iview & Vue.
You can access your device's terminal from anywhere via the web. Differentiate your different device 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.
- 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
- Support transfer file
- SSL support: openssl, mbedtls, CyaSSl(wolfssl)
- Support device authorization
- Support Execute a command remote
- The client is very small, suitable for embedded Linux: rtty(20.1K) + libev(48.5K) + libuwsc(24.4K) = 93K. If you want to support ssl, +libwolfssl(595.9K) = 688.9K
- libev - A full-featured and high-performance event loop
- libuwsc - A Lightweight and fully asynchronous WebSocket client library based on libev
- mbedtls(polarssl), CyaSSl(wolfssl) or openssl - If you want to support SSL
Install
wget -qO- https://raw.githubusercontent.com/zhaojh329/rtty/master/tools/install.sh | sudo bash
Command-line Options
Usage: rtty [option]
-i ifname # Network interface name - Using the MAC address of
the interface as the device ID
-I id # Set an ID for the device(Maximum 63 bytes, valid character:letters
and numbers and underlines and short lines) - If set,
it will cover the MAC address(if you have specify the ifname)
-h host # Server host
-p port # Server port(Default is 5912)
-a # Auto reconnect to the server
-v # verbose
-d # Adding a description to the device(Maximum 126 bytes)
-s # SSL on
-k keepalive # keep alive in seconds for this client. Defaults to 5
-V # Show version
-D # Run in the background
-t token # Authorization token
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'
If your rttys is configured with a token, add the following parameter(Replace the following token with your own)
-t 34762d07637276694b938d23f10d7164
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
Transfer file from local to remote device
rtty -R
Transfer file from remote device to the local
rtty -S test.txt
- シ乄BB~★ - 150¥
- 许玉善(Tim Xu) - 100¥
- just_doing - 20¥
If you would like to help making rtty better, see the CONTRIBUTING.md file.