ttyhttpd
项目简介
本项目基于 tinyhttpd 实现,是一个轻量级的 HTTP 服务器,扩展了云会话功能,允许用户通过浏览器访问本机 Shell。
功能说明
HTTP 服务器:
- 支持简单的 HTTP 请求处理(如
GET方法)。 - 返回 ttyd 地址,并生成一次性密码,通过邮件发送给用户。
- 支持简单的 HTTP 请求处理(如
云会话功能:
- 内网访问:提供在内网范围内的任意设备访问本机 Shell。
- 一次性密码:生成随机密码并通过邮件发送,确保最低级别的安全性。
- 自动关闭:会话结束后自动关闭,避免长期占用。
守护进程模式:
- 支持以守护进程(daemon)模式运行,确保服务在后台持续运行。
使用场景
- 远程协作:团队成员可以通过浏览器访问同一终端,实时协作。
- 临时访问:生成一次性密码,避免长期暴露 Shell 访问权限。
- 教学演示:用于演示终端操作或网络编程示例。
安全性说明
- 密码保护:每次启动会话时生成随机密码,并通过邮件发送。
- 内网限制:默认仅允许内网访问,避免暴露到公网。
- 短期会话:会话结束后自动关闭,避免长期占用。
快速开始
编译运行:
make
./ttyhttpd访问终端:
- 打开浏览器访问
http://<服务器IP>:53327/new - 打开展示的链接地址
- 输入一次性密码(通过邮件获取)即可进入终端。
- 打开浏览器访问
配置说明
# ttyhttpd 配置文件 |
依赖项
ttyd:webshell,用于浏览器终端使用。s-nail:mailclient,用于发送邮件通知。
tinyhttpd README
原版
tinyhttpd是一个简单的 HTTP 服务器,用于教学和测试。更多信息请参考 tinyhttpd 原版仓库。