文章摘要
Pangolin 是一个隧道反向代理服务器,具备身份验证、访问控制功能,并提供仪表盘用户界面,帮助用户管理和监控代理服务。
文章总结
GitHub 项目 fosrl/pangolin 是一个隧道式反向代理服务器,具备身份验证、访问控制功能,并提供了一个仪表盘用户界面。该项目旨在通过加密隧道安全地暴露私有资源,特别适用于分布式网络环境,尤其是那些位于严格防火墙后的网络。
主要功能
反向代理与 WireGuard 隧道:
- 无需开放端口即可暴露私有资源。
- 支持自定义用户空间 WireGuard 客户端 Newt。
- 自动生成 SSL 证书(通过 Let's Encrypt)。
- 支持 HTTP/HTTPS 和原始 TCP/UDP 服务,并具备负载均衡功能。
身份与访问管理:
- 集中式身份验证系统,支持平台单点登录(SSO)。
- 基于 IP、IP 范围和 URL 路径的访问控制规则。
- 支持 TOTP 双因素认证和角色访问控制。
- 支持外部身份提供商(如 Authentik、Keycloak、Okta 等)。
仪表盘 UI:
- 提供简洁直观的界面,用于管理站点、用户和角色。
- 支持监控站点使用情况和连接状态,具备亮暗模式切换和移动端友好设计。
易于部署:
- 支持在任何云平台或本地部署。
- 提供基于 Docker Compose 的简化部署方案。
- 支持使用任何 WireGuard 客户端连接,或使用 Newt 以获得最佳体验。
模块化设计:
- 可扩展功能,支持现有 Traefik 插件(如 CrowdSec 和 Geoblock)。
- 支持将多个站点连接到中央服务器。
部署与使用示例
- 部署中央服务器:通过 Docker Compose 在云平台(如 RackNerd、Amazon EC2、DigitalOcean 等)上部署。
- 域名配置:将域名指向 VPS 并配置 Pangolin。
- 连接私有站点:在私有站点上安装 Newt 或其他 WireGuard 客户端,自动建立与中央服务器的连接。
- 暴露资源:在中央服务器上添加资源并配置访问控制规则,安全访问这些资源。
使用场景
- 家庭实验室:绕过 ISP 的端口限制,安全暴露 HTTP/HTTPS 资源。
- 企业应用:将业务应用暴露给用户,集成到身份提供商解决方案中。
- 物联网网络:集中管理分散的物联网站点,简化访问控制。
类似项目与灵感
- Cloudflare Tunnels:类似的安全代理私有资源,但 Pangolin 是自托管方案。
- Authelia:启发了 Pangolin 的集中式身份验证系统。
开发与许可
- 项目正在积极开发中,未来可能会增加新功能和改进。
- 采用 AGPL-3.0 和 Fossorial 商业许可双重许可。
贡献与支持
- 欢迎提交 bug 报告和功能请求,贡献指南详见 CONTRIBUTING。
- 项目支持通过 GitHub Sponsors 进行赞助。



评论总结
主要观点总结:
系统组件与功能
- Pangolin 使用 Traefik 进行 HTTP 代理,Badger 插件提供请求认证,Gerbil 管理 WireGuard 连接,Newt 则通过用户空间的 WireGuard 代理本地资源,无需特权进程或容器。
- 关键引用:
- "Pangolin uses Traefik under the hood to do the actual HTTP proxying."
- "This means that you do not need to run a privileged process or container in order to expose your services!"
用户认可与期待
- 多位用户对 Pangolin 表示高度期待和认可,认为其界面简洁且功能强大。
- 关键引用:
- "This is exactly what I have been looking for!"
- "UI looks quite sleek!"
与其他工具的对比
- 用户询问 Pangolin 与 Tailscale 或 CF Tunnels 的区别,尤其是其在管理远程设备或私有服务方面的优势。
- 关键引用:
- "Could you explain in layman’s terms what this solves that e.g. tailscale doesn’t?"
- "I love working with CF Tunnels but I got frustrated with their lackluster web admin ux."
适用场景与部署
- Pangolin 适用于家庭实验室、VPS 或生产环境,能够提供安全的反向代理管理,但需注意在 VPS 上运行时可能存在的隐私问题。
- 关键引用:
- "If you run it on a VPS, traffic is decrypted on VPS, the same privacy issue with Cloudflare tunnels."
- "Installed in a small VPS (static IP) as an entry point for all the services I want to expose to friends and family from my homelab."
技术兼容性
- 用户询问 Pangolin 是否兼容 Docker Swarm,但目前评论中未明确回答。
- 关键引用:
- "Does this work well behind Docker Swarm or is it not designed for that?"
总结:
Pangolin 因其简洁的界面、强大的功能和灵活的部署方式受到用户广泛关注和好评。用户对其在家庭实验室、VPS 和生产环境中的应用表现出浓厚兴趣,但也对隐私问题和技术兼容性提出了疑问。