feat: support ttyd

This commit is contained in:
Fred Liang
2020-05-27 06:39:10 +08:00
parent 52c577d327
commit f2814f0347
8 changed files with 91 additions and 3 deletions

View File

@@ -154,6 +154,7 @@ mixbox help
28. [SSServer]
29. [Transmission]
30. [WebD]
31. [ttyd](https://github.com/tsl0922/ttyd)
### 快速制作插件
@@ -177,6 +178,3 @@ mixbox help
| 微信 | 支付宝 |
| :----------------------------------------------------------: | :----------------------------------------------------------: |
| ![](https://cdn.jsdelivr.net/gh/monlor/file/img/20200312145215.png) | ![](https://cdn.jsdelivr.net/gh/monlor/file/img/20200312145148.png) |

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,18 @@
#------------------【ttyd】--------------------
webshell() {
eval `mbdb export ttyd`
source /etc/mixbox/bin/base
echo "********* $service ***********"
echo "[${appinfo}]"
readsh "启动${appname}服务[1/0] " "enable" "1"
if [ "$enable" == '1' ]; then
readsh "请输入${appname}端口号" "port" "4200"
readsh "请输入${appname}外网访问配置[1/0]" "openport" "1"
${mbroot}/apps/${appname}/scripts/${appname}.sh restart
else
${mbroot}/apps/${appname}/scripts/${appname}.sh stop
fi
}
#------------------【ttyd】--------------------

View File

@@ -0,0 +1,7 @@
service="TTYD"
appname="ttyd"
needver="0.0.1"
supports="linux_arm,linux_mips,linux_x86_64"
appinfo="网页ssh工具可在网页上管理路由器"
newinfo=""
version="0.0.2"

View File

@@ -0,0 +1 @@
1.6.0

64
apps/ttyd/scripts/ttyd.sh Normal file
View File

@@ -0,0 +1,64 @@
#!/bin/sh
source /etc/mixbox/bin/base
eval `mbdb export webshell`
# port=6000
port=$(mbdb get ${appname}.main.port) || port=6000
binname="shellinabox"
start () {
result=$(ps | grep ${mbroot}/apps/${appname}/bin/${appname} | grep -v grep | wc -l)
if [ "$result" != '0' ];then
logsh "$service" "${appname}已经在运行!"
exit 1
fi
logsh "$service" "正在启动${appname}服务... "
if [ ! -f ${mbroot}/apps/${appname}/bin/${appname} ]; then
bincheck ${binname}
[ $? -eq 0 ] && ln -sf $(which $binname) ${mbroot}/apps/${appname}/bin/${appname}
fi
open_port
write_firewall_start
daemon ${mbroot}/apps/${appname}/bin/${appname} -p ${port} ash
if [ $? -ne 0 ]; then
logsh "$service" "启动${appname}服务失败!"
else
logsh "$service" "启动${appname}服务完成!"
logsh "$service" "请在浏览器访问http://$lanip:${port}"
fi
}
stop () {
logsh "$service" "正在停止${appname}服务... "
close_port
remove_firewall_start
killall -9 ${appname} &> /dev/null
}
status() {
result=$(pssh | grep ${mbroot}/apps/${appname}/bin/${appname} | grep -v grep | wc -l)
if [ "$result" == '0' ]; then
status="未运行|0"
else
status="运行端口号: ${port}|1"
fi
mbdb set $appname.main.status="$status"
}
case "$1" in
start) start ;;
stop) stop ;;
restart) stop; start ;;
reload) close_port && open_port ;;
status) status ;;
esac