Introduction
Kepeink documentation
Learn what Kepeink is, how the outbound-only agent works, and how to expose a local service to the public internet at an assigned hostname.
Kepeink documentation
Kepeink is a reverse-connectivity tunnel service. You install a small Agent on your machine, choose a local service — a web app, a static folder, or an SSH endpoint — and Kepeink publishes it on the public internet at a hostname it assigns you. The agent dials out to Kepeink over HTTPS and holds the tunnel open; nothing ever connects in to your machine, so no port forwarding and no public IP address are required.
When Kepeink is useful
- You have no public IP. Home broadband behind CGNAT, mobile/LTE, or satellite links never expose an inbound port. The agent's outbound connection sidesteps that entirely.
- You want to share a local dev server. Hand a teammate a real HTTPS URL for the app running on your laptop instead of screen-sharing.
- You self-host from home. Put a home-lab dashboard, a personal wiki, or a media server online without touching your router.
- You need a quick, disposable demo. Spin up a public URL for a folder of files or a prototype, then tear it down when you are done.
How it works
- You sign up and create a tunnel in the dashboard. The tunnel records which local target to expose and in which backend mode.
- Kepeink gives you an agent token and a one-line installer.
- You run the installer on the machine that hosts the service. The agent opens an outbound HTTPS connection to Kepeink's router plane and keeps it alive.
- Visitors reach your assigned hostname over HTTPS. Kepeink relays each request down the open tunnel to your local target and streams the response back.
Backend modes
Each tunnel runs in one backend mode:
- proxy — the agent reverse-proxies a local HTTP(S) target you name, such as
http://localhost:3000. Use this for web apps, APIs, and dashboards. - static — the agent serves files from a local folder directly, no application server required. Use this for a built site or a folder of assets.
Hostnames, custom domains, and TLS
- Every tunnel gets a server-assigned public hostname on a shared Kepeink domain, ready to use immediately.
- You can attach your own custom domain to a tunnel when you want a branded URL.
- You can turn on end-to-end TLS, where the agent terminates HTTPS on your machine with its own Let's Encrypt certificate. The private key is generated on your machine and never leaves it.
Billing
Kepeink is billed as prepaid traffic credit. You buy a bandwidth top-up up front; the traffic your visitors use draws it down. Credit is valid for the period shown at purchase, and you can buy more whenever you need it from the dashboard.
Start here
New to Kepeink? Follow the tutorials in order: begin with Install the Agent, then Expose a local web app. Prefer to learn by example? Jump to the use cases for ready-to-run recipes.
Tutorials
- Install the AgentInstall the Kepeink agent on Linux, macOS, or Windows with a one-line installer and connect it to a tunnel using your agent token.
- Expose a local web appPublish a locally running web app or API over HTTPS with a proxy-mode Kepeink tunnel that reverse-proxies your local HTTP target.
- Serve a static folderPublish a local folder of files online with a static-mode Kepeink tunnel — no application server needed.
- Add a custom domainAttach your own domain to a Kepeink tunnel so visitors reach your service at a branded hostname instead of the shared Kepeink domain.
- Turn on end-to-end TLSEnable end-to-end TLS so the agent terminates HTTPS on your machine with its own Let's Encrypt certificate — the private key never leaves the host.
- How to invite peopleGenerate invite links from your dashboard and bring people onto Kepeink.
Use cases
- Share a local dev server with a teammateGive a teammate a real HTTPS URL for the app running on your laptop, instead of screen-sharing or deploying a throwaway build.
- Reach a home service behind CGNATExpose a service running at home over HTTPS even when your ISP puts you behind CGNAT and you have no public IP or inbound ports.
- Put a home-lab dashboard onlineReach your home-lab dashboard over HTTPS from anywhere, with your own domain, without opening your home network to the internet.
- Receive webhooks on a local appGive a third-party service a public HTTPS URL that delivers webhooks straight to the app running on your development machine.