一个功能弱小的 AstrBot 插件,允许您通过聊天窗口连接远程 SSH 服务器并执行命令。支持交互式 Shell 会话、状态保持、LLM 函数调用,并具备不完善的安全保护机制。
- 交互式 Shell:支持
cd、export等上下文命令,状态在会话期间保持。 - 自动图片渲染:命令输出过长时自动转换为图片发送,保持聊天界面整洁。
- LLM 函数调用:支持大语言模型通过工具调用执行 SSH 命令(如“帮我看看服务器内存占用”)。
- 安全保护:
- 仅限管理员使用。
- 内置黑名单,禁止 LLM 执行
rm -rf、mkfs等高危指令。
- 智能管理:
- 自动管理 SSH 连接,闲置 30 分钟(可配置)后自动断开。
- 支持
/ssh out手动断开连接。
将本插件文件夹 astrbot_plugin_ssh 放置于 AstrBot 的 data/plugins/ 目录下。
或者使用从链接安装,输入
https://github.com/HSOS6/astrbot_plugin_ssh
启用插件后,请在 AstrBot 管理面板 -> 插件配置中填写服务器信息:
| 配置项 | 描述 | 默认值 |
|---|---|---|
host |
SSH 服务器地址 (IP 或域名) | 127.0.0.1 |
port |
SSH 端口 | 22 |
username |
登录用户名 | root |
password |
登录密码 | 123456 |
timeout |
连接超时时间 (秒) | 10 |
idle_timeout |
闲置自动断开时间 (分钟) | 30 |
⚠️ 注意:密码以明文存储在配置文件中,请确保您的 AstrBot 部署环境安全。
注意:指令仅限管理员使用。
直接在对话中通过自然语言请求:
- “连接服务器查看一下 CPU 占用”
- “去 /home/admin 目录下看看有什么文件”
- “帮我重启一下 nginx 服务” (如果 LLM 判断安全)
为了防止误操作,插件内置了针对 LLM 调用的安全检查,以下命令模式将被拦截:
rm -rf/rm -rmkfs(格式化)dd(磁盘操作)shutdown/reboot/init 0- Fork炸弹及其他高危操作
- 支持使用ssh log查看执行的内容
- 初始版本发布。
- 支持交互式 Shell、LLM 调用。