Stars
Forks
Watchers
Developer links
zrok
zrok puts services that live behind NAT and firewalls onto the public internet with a shareable URL, without opening a single inbound port. The machine being shared dials out to an OpenZiti overlay network, so a web app on your desk, a Raspberry Pi at home, or a staging box inside a corporate network becomes reachable through your instance while its firewall stays closed. One command shares an HTTP service publicly; add a name from one of your namespaces and the URL stays stable even when you move the backend to a different machine, and an ephemeral name can be promoted to a reserved one when a quick demo turns into a keeper. Private shares skip the public internet entirely and reach only the users you grant, including raw TCP and UDP services, while web and drive backend modes publish static sites or whole folders, with OAuth, password auth, and an interstitial warning page available on public shares. The long-running agent keeps every share and access under one process, restarts the named ones after a reboot, and offers a localhost console for point-and-click sharing; the account-wide web console maps your environments, shares, and accesses as a navigable graph or a sortable table with live activity. Operators get invite-based accounts, InfluxDB-backed usage metrics, and configurable limits that warn or cut off accounts that exceed their quotas. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. Apache-2.0 licensed.
Benefits
- No Inbound Ports To Open
- Shared machines connect outward to the OpenZiti overlay, so services behind NAT, hotel Wi-Fi, or locked-down corporate firewalls become reachable without port forwarding, VPN clients, or firewall change requests.
- Stable Names, Movable Backends
- Namespaces and names decouple your public URLs from any single share or machine. Detach a name from one environment, attach it to another, and your users keep the same address.
- Private Sharing Without Exposure
- Private shares never touch a public endpoint and reach only granted users, covering TCP and UDP services as well as HTTP. Vanity share tokens make invitations easy to read aloud.
- Operate It Like A Service
- Invite-based accounts, per-account metrics in InfluxDB, and a limits agent with bandwidth and resource quotas let you run zrok for a team or community with usage under control.
Features
- Public And Private Shares
- Share HTTP services publicly with generated or named URLs, or privately with token-based access for other zrok users, including TCP and UDP backends beyond the web.
- Namespaces And Names
- Create namespaces to organize names, attach names to shares, promote ephemeral names to reserved ones with zrok2 modify name, and move names between environments freely.
- Agent With Web Console
- The zrok agent supervises all shares and accesses in one process, restarts named shares automatically, retries failures with backoff, and serves a localhost management console.
- Visual API Console
- The web console renders accounts, environments, shares, and accesses as an interactive node graph with focus mode, or as a filterable table with live activity columns.
- Metrics And Limits
- OpenZiti fabric usage events flow through a metrics bridge into InfluxDB to power console activity graphs, while the limits agent enforces transfer and resource quotas per account.