rtty 由客戶端和服務(wù)端組成。客戶端采用純C實(shí)現(xiàn),服務(wù)端采用 GO 語(yǔ)言實(shí)現(xiàn),前端界面采用 vue 實(shí)現(xiàn)。使用 rtty 可以在任何地方通過(guò) Web 訪問(wèn)您的設(shè)備的終端,通過(guò) 設(shè)備ID 來(lái)區(qū)分您的不同的設(shè)備。rtty 非常適合遠(yuǎn)程維護(hù) Linux設(shè)備。
特性
- 客戶端 C 語(yǔ)言實(shí)現(xiàn),非常小,適合嵌入式 Linux
- 不支持 SSL:rtty(32K) + libev(56K)
- 支持 SSL:+ libmbedtls(88K) + libmbedcrypto(241K) + * libmbedx509(48k)
- 遠(yuǎn)程批量執(zhí)行命令
- 支持SSL: openssl、mbedtls、CyaSSl(wolfssl)
- SSL 雙向認(rèn)證(mTLS)
- 非常方便的上傳和下載文件
- 根據(jù) 設(shè)備ID 訪問(wèn)不同的設(shè)備
- 支持 HTTP 代理 訪問(wèn)您的設(shè)備的 Web
- 基于 Xterm.js 的全功能終端
- 部署簡(jiǎn)單,使用方便
演示

02d6d99dd3454b7632aedcecc7c1f484.jpg

35926612cea520d67890a3482e38533c.jpg

aa4630efc6c4ab3e8cfb6ee50f76f10d.jpg
部署服務(wù)端
安裝依賴
sudo apt install -y libev-dev libssl-dev # Ubuntu, Debian
sudo pacman -S --noconfirm libev openssl # ArchLinux
sudo yum install -y libev-devel openssl-devel # Centos
克隆 rtty 代碼
git clone --recursive https://github.com/zhaojh329/rtty.git
編譯
cd rtty && mkdir build && cd build
cmake .. && make install
將下面的參數(shù)替換為您自己的參數(shù)
sudo rtty -I 'My-device-ID' -h 'your-server' -p 5912 -a -v -d 'My Device Description'
生成一個(gè) token
$ rttys token
Please set a password:******
Your token is: 34762d07637276694b938d23f10d7164
使用 token
$rttys -t 34762d07637276694b938d23f10d7164
通過(guò)瀏覽器訪問(wèn)
使用 Web 瀏覽器訪問(wèn)您的服務(wù)器:http://your-server-host:5913,然后點(diǎn)擊連接按鈕。
或者直接連接設(shè)備,無(wú)需 Web 登錄(需要在服務(wù)端配置設(shè)備白名單)
http://your-server-host:5913/connect/devid1
http://your-server-host:5913/connect/devid2
從本地傳輸文件到遠(yuǎn)程設(shè)備
rtty -R
從遠(yuǎn)程設(shè)備傳輸文件到本地
rtty -S test.txt