Find your next open-source project

Search by name, purpose, or keyword — or paste a GitHub repository URL

fosrl/pangolin

DevOps & Self-hosting

Self-hostable zero-trust access platform combining WireGuard VPN, reverse proxy, PAM and an identity-aware AI gateway.

23,580
829
TypeScript
NOASSERTION
2 years old

What Pangolin does

Pangolin is an open-source SASE platform built on WireGuard that unifies several capabilities normally sold as separate products: a zero-trust VPN, an identity-aware reverse proxy, privileged access management (PAM) for SSH, and an AI gateway for cloud and self-hosted model endpoints. All of them share one identity and policy model, so a user granted access to a resource keeps the same roles whether they reach it through a site connector, a browser, or a desktop client.

The main use cases are exposing internal web apps, remote desktops (VNC/RDP), SSH hosts, and CIDR ranges without public IPs or open inbound ports, and putting SSO plus budgets and audit logs in front of model APIs such as OpenAI, Anthropic, Ollama or vLLM. Site connectors run in user space and use outbound tunnels with NAT traversal, so they work behind restrictive firewalls.

It is aimed at homelab operators, small teams and administrators who want Cloudflare One/Zscaler-style access control but prefer to self-host. This is infrastructure software, not a single-user utility: you configure sites, resources, users and routing.

Quick start

There is no single path; pick one of the three deployment models:

  1. Cloud – create an account at app.pangolin.net and use the managed service.
  2. Self-host, Community Edition – follow the quick install guide. Docker images are published as fosrl/pangolin on Docker Hub.
  3. One-click deploy – AWS AMIs (x86 and Graviton, configurable via user-data or CloudFormation) or the DigitalOcean marketplace app; overview in the deployment docs.

After the server is up, the typical flow is: install a site connector in the private network, register the site in the web UI, then define resources (HTTP(S) apps, SSH hosts, CIDR ranges) and grant users or IdP-synced roles access to them. End users then open the resource launcher or install a client for Mac, Windows, Linux, iOS or Android to reach private resources. The README deliberately omits detailed configuration steps and points to the full documentation; use that for actual setup, since a complete command sequence is not given here.

Operational constraints

  • Two code bases: the Community Edition is AGPL-3; the Enterprise Edition is under the Fossorial Commercial License, free for personal and hobby use and for businesses under $100K USD gross annual revenue. Commercial use beyond that requires a license.
  • Self-hosting requires a server, a domain with TLS (automatic certificates are handled by the reverse proxy), an identity provider if you want SSO, and outbound connectivity for site connectors. No public IP or open ports are needed for the connectors themselves.
  • The AI gateway needs provider credentials (cloud API keys) or reachable self-hosted endpoints; keyless client access depends on the desktop client acting as the credential.
  • Clients must be installed on user devices for tunneled private access; browser-only access covers reverse-proxied web, SSH, VNC and RDP resources.
  • Exact platform requirements, supported IdPs and upgrade procedures are only in the docs; verify them before committing to a deployment.

HotRepo's take

Pangolin has 23,536 stars and appeared on the TypeScript daily list on 2026-11-10 with 125 new stars and a best position of 11 that day. The 500-point Show HN launch thread framed it as an open alternative to Cloudflare Tunnels, and a later thread discussed its identity-based VPN positioning against Twingate and Zscaler thread. In the launch discussion a maintainer explained the design trade-off: Pangolin targets static, permanent tunnels for exposing services to public users, rather than the ephemeral connections of SSH tunnels or Tailscale reply. The later AI-gateway thread describes the client-side mechanism in detail — an authenticated WebSocket provisions a WireGuard peer, and DNS queries are intercepted inside the tunnel and answered locally for known resources comment. That mechanism is what makes keyless, client-authenticated model access possible instead of distributing API keys. Given the breadth of the feature set, the realistic effort is in operating the platform, not just running a container.

Written by AI from the project's README, updated . The project's own docs are the source of truth.

Hacker News

Show HN: Pangolin – Open source alternative to Cloudflare Tunnels
▲ 500 · 125 comments · July 10, 2025
Show HN: Pangolin: Open-source identity-based VPN (Twingate/Zscaler alternative)
▲ 81 · 28 comments · February 15, 2026
Show HN: Pangolin – SSO and WireGuard instead of API keys for LLM access
▲ 3 · 1 comment · September 3, 2026

You might also like

  1. netbirdio/netbirdBuilds identity-based private networks that connect devices peer-to-peer over WireGuard, with central access control.Go30,383
  2. tailscale/tailscaleA WireGuard-based mesh VPN daemon and CLI for connecting servers, laptops and remote devices into one private network.Go38,215
  3. oauth2-proxy/oauth2-proxyPuts OAuth2/OIDC login in front of internal web apps that have no auth of their own, for self-hosters and platform teams.Go15,263
  4. cloudflare/cloudflaredPublishes a local web, SSH or RDP server through Cloudflare without opening firewall ports.Go16,292
  5. linguo2625469/workbuddy2api-panelSelf-hosted OpenAI-compatible gateway that pools CodeBuddy accounts and automates growth tasks, with an admin panel.Go4,799