Intranet

🌐 零配置本地 HTTP 服务器,插件即服务

零配置本地 HTTP 文件服务器,支持插件扩展与 CGI 动态脚本,无需 root 权限即可快速搭建内网服务。

收藏
8.3k
安装
2k
版本
3.2.3
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

Intranet 是一款轻量级本地 HTTP 文件服务器,主打零依赖、零配置启动。用户仅需运行 Python 脚本即可在默认 8080 端口提供服务,无需安装 Apache/Nginx,也无需 root 权限。

主要功能:

  • 静态文件服务:自动托管 www/ 目录下的文件
  • 插件系统:通过 config.json 将外部目录挂载到指定 URL 前缀,支持静态或 CGI 动态模式
  • CGI 动态执行:启用后可运行 index.py 处理动态请求,插件需 SHA-256 哈希校验
  • 安全访问控制:支持 Token 认证、Host 白名单、会话 Cookie 机制

启动方式:

python3 scripts/intranet.py start              # 默认 localhost:8080
python3 scripts/intranet.py start --port 9000 --token SECRET  # 自定义端口+认证

显著优点

1. 极简部署:纯 Python 实现,仅依赖系统自带的 python3,无额外安装
2. 安全设计:CGI 默认关闭、index.py 唯一入口、插件需哈希校验、路径遍历防护、配置隔离于 webroot 外

3. 灵活扩展:插件机制允许模块化开发,静态/CGI 混合模式满足不同场景

4. 局域网友好:支持 --host 0.0.0.0 配合 Token 认证实现安全的内网共享

潜在缺点与局限性

  • 性能瓶颈:单进程 Python HTTP 服务器,无异步/多线程优化,不适合高并发生产环境
  • CGI 限制:仅支持 index.py 入口,其他 .py 文件一律 403,灵活性受限
  • 无 HTTPS:明文传输,Token 认证在公网环境下存在中间人攻击风险
  • 平台依赖:CGI 执行依赖 Unix 权限模型(chmod +x),Windows 兼容性存疑
  • 社区规模小:GitHub 仓库星标较少,长期维护与生态扩展能力待观察

适合人群

  • 开发者快速搭建本地开发环境、API 原型
  • 小型团队内网文件共享与轻量级工具托管
  • 需要简单 CGI 动态页面的低流量场景
  • 教育/学习用途理解 HTTP 服务器原理

常规风险

| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| CGI 代码执行 | 恶意插件或篡改的 `index.py` 可导致 RCE | 启用哈希校验、严格插件目录权限、保持 CGI 默认关闭 |
| Token 泄露 | 明文 URL 参数传递 Token 可能被日志记录 | 优先使用 `Authorization` 头部、定期轮换 Token |
| 路径遍历 | 尽管有防护,配置错误或符号链接滥用可能绕过 | 定期审计插件目录、避免敏感数据置于 workspace |
| 会话劫持 | Cookie 无额外加密,局域网环境易被嗅探 | 限制 `--host 0.0.0.0` 使用、结合 VPN 或防火墙 |
| 资源耗尽 | 30 秒 CGI 超时可缓解,但仍可能被慢请求 DoS | 前端加反向代理、限制并发连接数 |

Intranet 内容

scripts文件夹
手动下载zip · 15.0 kB
intranet_web.pytext/plain
请选择文件