远程执行 Shell 命令的 Telegram 机器人

2020-03-01 08:33:47 +08:00
 vicalloy

项目地址: https://github.com/vicalloy/telegram-shell-bot

很早之前就打算做这么一个东西,后来因为要调用的脚本是 Python 写的,于是直接在 Bot 里调用 Python 代码。 近期把这个想法重新实现了。

网上也有类似的项目,其中一些比较简单,甚至都没有对用户做校验,这样只要有人可以连上你的机器人就可以控制你的机器。类似的机器人里功能最强的是shell-bot。"shell-bot"模拟了一个 tty,实现较复杂,没有仔细研究。

Telegram Shell Bot目前提供的功能有:

  1. 鉴权,只有在许可列表里的用户才能对机器人发号指令。
  2. Shell 命令的执行,如 ls、cat、ps 等。
  3. 长时间执行命令的管理。如执行 wget 操作,只返回最开始几条输出(防止一直刷屏)。之后可以通过/tasks命令查看有哪些命令还在执行中,并可以通过 /kill pid 的方式强制结束命令。
  4. 支持 sudo。注:sudo 通过 echo password | su -S 的方式实现,需要自行评估风险。
  5. 自定义脚本放在 ./scripts 目录,通过 /script 命令可以快速访问这些脚本并执行。

2142 次点击
所在节点    Telegram
1 条回复
Tink
2020-03-01 09:39:44 +08:00
我之前写过一个微信公众号的,也没有身份验证,只能访问服务端指定的那几个目录 233

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/648747

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX