WTS:基于Web的Terminal控制台

WTS介绍

WTS,全称web terminal shell,在web窗口和远程服务器分别建立一个虚拟term,实现在web端输入命令并在远程机器上执行,然后把结果回写到web控制台。

系统架构

wts architecture

WTS分为两部分,其中monitor(wts-monit)用于web端输入以及管理remote clients,客户端模块(如Node.js版)用于处理monit发来的指令。

monitor基于koa启动一个webserver,再使用websocket与前端实时互推数据。monit和remote client之间建立TCP长连接,client端掉线后会自动重连。

运行截图

wts architecture

使用场景

  • 偷懒:不用安装类似xshell的terminal软件了,开个网页即可连到服务器

  • 当跳板机使用:由于安全限制,一般不直接登陆IDC机器,需要跳板机作为中转,做好权限控制即可。

如何使用

  • monit机器

wts-monit已经作为node模块发布到npm,可以直接通过npm安装(选择一台与公网隔离的机器):

npm install wts-monit

安装好依赖模块之后即可启动monit(由于使用了koa框架,所以需要Node版本0.12+或者io.js)

cd wts-monit && node index.js

或者推荐使用pm2来启动:

pm2 start pm2_deploy.json

然后在浏览器打开http://[monit host]:3005即可看到web界面。

  • client机器

接着在各remote机器上安装client模块:

npm install wts-node

一般来说,一台remote机器上器启一个实例即可,然后为了方便管理,最好给remote机器分配一个group:

cd wts-node && vim conf.js # 一般只需要设置group项即可

调试:

node index.js

部署启动:

pm2 start pm2_deploy.json
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值