anthtrigger
Version:
Trigger events via http service
74 lines (49 loc) • 2.64 kB
Markdown
anthTrigger
===
A tool with web interface to manage and execute shells on server.
管理和执行服务器端脚本命令工具。
# 功能简介
* npm一条命令安装,配置简单
* 用户权限,分为普通用户、管理用户和超级管理员,普通用户只具有执行权限;管理员可以撰写脚本,超级管理员可以管理用户和进行系统设置。
* 脚本在线编写,可以实现接受执行参数,及脚本间的相互调用
* 脚本执行,系统会记录下每次执行的相关信息,如触发用户,执行参数,脚本内容,执行结果等
* 脚本执行日志,脚本执行时输出所有日志信息
* 系统操作日志,记录下每位用户的系统操作信息
# 系统依赖
> 1. MongoDB
> 2. Node.js
# 安装方式
```
npm install anthtrigger -g
```
# 配置方法
```
anthtrigger setup
```
然后会有交互式命令提示,根据提示输入一些配置信息,如:
> 1. 服务监听端口号
> 2. MongoDB服务器配置
> 3. 脚本执行shell
> 4. 超级管理员密码
执行完毕后,anthtrigger会在用户HOME目录下创建`.anthTrigger.config.json`文件,此文件中记录配置信息(不包括管理员密码),并会初始化数据库。
# 运行程序
配置完成后,执行以下命令将使用pm2启动起来:
```
anthtrigger start
```
然后可以在浏览器中访问服务器地址对应端口号,即可打开Web管理页面,输入超级管理员账户`admin`和刚才配置的密码,即可登陆并添加和配置其它用户,以及添加配置脚本。
# 更新升级
```
pm2 stop anthTrigger
npm install anthtrigger@latest -g
anthtrigger setup
pm2 restart anthTrigger
```
(更便捷的更新方式在开发中。。。)
# 开源协议
MIT
# 更多信息
> 1. 脚本权限控制: 采用“权限标签”方式,创建脚本时可以为脚本指定标签,只有拥有此标签的用户(除超级管理员)才有权限操作它,这样可以灵活地设定不同脚本与用户的权限关系;同时还可以根据标签来检索脚本。
> 2. 脚本执行参数: 触发脚本执行时,可以在弹出的面板中为脚本指定执行时传入的参数,在脚本中通过标准的shell语法($1-$9)来获取到这些参数。
> 3. 脚本间互相调用: 每个脚本添加时会有一个自增长的数字脚本ID, 在编写脚本时,添加命令如:`anthtrigger run 8 arg1 arg2`, 即可调用脚本ID=8的脚本,并且执行时会传入两个参数`arg1`,`arg2`。
> 4. 功能在继续完善中。。。