Show HN: Arbok – Self-hosted HTTP tunnels to localhost using WireGuard
3 mr-karan 0 8/1/2025, 4:15:34 PM github.com ↗
Hi HN,
I wanted a simple way to expose local dev servers to the internet that I could host myself, so I built Arbok. It's an open-source tunneling service that uses WireGuard for the data plane.
The server is a single Go binary that uses a userspace WireGuard implementation (`wireguard-go`), so it can run without root privileges and has no kernel dependencies, making it easy to deploy in a container.
What makes it different:
1. Self-Hosted & Open Source:** Run it on your own domain and infrastructure. Full control, no surprises.
2. Simple Client Experience:** A single `curl` command gets you a ready-to-use WireGuard configuration. No signup needed.
3. Userspace WireGuard Server:** The server runs as an unprivileged user, which simplifies deployment and enhances security.
Here's how you'd use it:```
# 1. Request a tunnel for your local service on port 3000
$ curl https://arbok.mrkaran.dev/3000 > arbok.conf
# The server responds with a config and your unique public URL.
# The URL will be printed to your console, for example:
#
# Your app is live at: https://brave-snake-1234.arbok.mrkaran.dev
# 2. Activate the tunnel using standard tools (requires sudo on client)
$ sudo wg-quick up ./arbok.conf
```You can check out the code and a more detailed setup guide on GitHub: https://github.com/mr-karan/arbok
I'm still actively developing it and would love to get your feedback, feature ideas, or contributions. Let me know what you think!
No comments yet