一个轻量级 Web 终端,基于 Django + Django Channels + Paramiko + xterm.js,支持直接输入服务器 IP、用户名、密码,通过 WebSocket 建立 SSH 连接,实现远程命令执行。
- 基于 Web 的 SSH 终端
- 支持直接输入服务器信息连接
- GitHub 风格界面
- 实时命令执行和输出
- 错误处理与连接状态显示
- 无数据库依赖,极度轻量化
- 前端:xterm.js + JavaScript
- 后端:Python3.12 + Django4.2.20 + Django Channels
- SSH 连接:Paramiko
- 通信协议:WebSocket
- 通道层:内存通道层(InMemoryChannelLayer),无Redis依赖
-
克隆项目
git clone https://github.com/yourusername/wsterm.git cd wsterm
-
安装依赖
pip install -r requirements.txt
-
运行项目
daphne -b 127.0.0.1 -p 8090 webterminal.asgi:application
- 填写服务器 IP、端口、用户名和密码
- 点击"连接"按钮建立 SSH 连接
- 在终端中执行命令
- 点击"断开连接"按钮结束会话
- 本项目仅用于学习和测试目的
- 生产环境需要https,对密码进行更安全处理。
- 项目使用内存通道层,无需额外的Redis服务.
- 无数据库依赖,轻量化.
MIT