紅聯Linux門戶
Linux幫助

rtty:反向代理WebTTY,Linux遠程維護調試工具

發布時間:2018-03-26 09:02:20來源:github.com/zhaojh329/rtty作者:趙建輝
rtty 是一個反向代理 WebTTY。它由客戶端和服務端組成。服務端采用 Go 語言實現, 以及使用了 vue + iview。你可以基于你設置的設備 ID(不設置則為設備的 MAC 地址)通過 Web 瀏覽器訪問你的任意一臺終端。
rtty 非常適合遠程維護你的或者你公司的部署在全球各地的成千上萬的 Linux 設備。
rtty:反向代理WebTTY,Linux遠程維護調試工具
 
特性
部署簡單,使用方便
反向代理
根據你設置的 ID 連接你的設備
基于 Xterm.js 的全功能終端
支持 SSL: openssl、mbedtls、 CyaSSl(wolfssl)
支持上傳文件到設備
支持從設備下載文件
支持遠程執行命令
跨平臺: macOS、Linux、FreeBSD/OpenBSD、OpenWrt/LEDE
 
客戶端依賴
libubox - 用于 OpenWrt 的 C 工具函數庫,但也可以用于其他 Linux 系統中。
libuwsc - 一個輕量的針對嵌入式 Linux 的基于 libubox 的 WebSocket 客戶端 C 庫。
ustream-ssl - 如果你需要支持 SSL
mbedtls - 如果你選擇 mbedtls 作為你的 SSL 后端
CyaSSl(wolfssl) - 如果你選擇 wolfssl 作為你的 SSL 后端
openssl - 如果你選擇 openssl 作為你的 SSL 后端
 
部署服務端
安裝
curl https://raw.githubusercontent.com/zhaojh329/rttys/master/install.sh | sudo sh
 
手動運行
rttys -cert /etc/rttys/rttys.crt -key /etc/rttys/rttys.key
 
后臺運行
sudo /etc/init.d/rttys start
 
如何編譯和安裝 rtty 客戶端
針對 Linux 發行版,例如 Ubuntu 和 CentOS
安裝編譯工具:
sudo apt install gcc cmake git  # For Ubuntu
yum install gcc cmake git   # For Centos
編譯和安裝依賴軟件包:
sudo apt install libjson-c-dev  # For Ubuntu
sudo apt install json-c-devel   # For Centos
git clone https://git.openwrt.org/project/libubox.git
cd libubox && cmake -DBUILD_LUA=OFF . && sudo make install
git clone https://github.com/zhaojh329/libuwsc.git
cd libuwsc && cmake -DUWSC_SSL_SUPPORT=OFF . && sudo make install
編譯和安裝 rtty:
git clone https://github.com/zhaojh329/rtty.git
cd rtty && cmake . && sudo make install
運行 rtty ,將下面的參數替換為你自己的參數:
sudo rtty -I 'My-device-ID' -h 'your-server' -p 5912 -a -v -s -d 'My Device Description'
查詢在線設備列表:
curl -k https://your-server:5912/devs
[{"id":"My-device-ID","description":"My device"}]
 
嵌入式Linux平臺
你需要自行交叉編譯。
 
如何在 OpenWRT 中使用
安裝:
opkg update
opkg list | grep rtty
opkg install rtty-nossl
如果安裝失敗,你可以自己編譯。
配置服務器參數:
uci add rtty rtty   # If it's the first configuration
uci set [email protected][0].host='your server host'
uci set [email protected][0].port='your server port'
你可以給你的設備自定義一個 ID。如果未指定,rtty 將使用指定的網絡接口的 MAC 地址作為其 ID, 以 MAC 地址作為 ID 的格式為:1A2A3A4A5A6A。
uci set [email protected][0].id='your-device-id'
使用 SSL:
uci set [email protected][0].ssl='1'
保存配置并應用:
uci commit
/etc/init.d/rtty restart
 
如何使用
使用你的 Web 瀏覽器訪問你的服務器: https://your-server-host:5912,然后點擊連接按鈕。
rtty:反向代理WebTTY,Linux遠程維護調試工具
你可以非常方便的將 rtty 嵌入到你現有的平臺: https://your-server-host:5912?id=your-id。
自動登錄: https://your-server:5912/?id=device-id&username=device-username&password=device-password。
 
上傳文件和下載文件
使用快捷鍵打開菜單: Ctrl+Shift+f。
rtty:反向代理WebTTY,Linux遠程維護調試工具
rtty:反向代理WebTTY,Linux遠程維護調試工具
 
遠程執行命令
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 dev etc lib mnt overlay proc rom root sbin sys tmp usr var www ","stderr":""}
 
貢獻代碼
如果你想幫助 rtty(https://github.com/zhaojh329/rtty)變得更好,請參考 https://github.com/zhaojh329/rtty/blob/master/CONTRIBUTING_ZH.md。
 
Remmina:一個Linux下功能豐富的遠程桌面共享工具:http://www.1851002.live/linux/30659.html
rdiff-backup:一個Linux中的遠程增量備份工具:http://www.1851002.live/linux/30658.html
不錯的多窗口Windows/Linux遠程桌面連接工具-寶塔遠程桌面助手:http://www.1851002.live/linux/30161.html
解決:利用Xware在centos上搭建遠程下載器:http://www.1851002.live/linux/29970.html
在Windows和Ubuntu上安裝VNC連接遠程服務器:http://www.1851002.live/linux/29919.html
贵州体彩11选5查询号码 打缺一门麻将稳赢技 琼崖海南麻将新版本 斗牛游戏棋牌下载 王中王六肖期期准 二肖二码中特期期100准 智慧农业股票趋势 欢乐真人麻将赢话费 福彩开奖结果查询果 今天股票行情涨跌 哈哈湖南麻将官网