Expose your localhost to the internet with a single command.
HTTP tunnels, raw TCP tunnels, real-time dashboard. Self-hosted, open-source.
ptunnel http 3000 for web apps. ptunnel tcp 25565 for game servers, SSH, databases.
Each client gets a unique subdomain that persists across reconnects. Your URL stays the same every time.
Monitor active tunnels, client info, request logs, domain settings, and bandwidth usage from the web dashboard.
Run on your own server. Full control over your data. Works on Windows, Linux & macOS.
Clone the repository and install dependencies
git clone https://github.com/Jindanet/private-tunnel.git
cd private-tunnel
npm install
npm linkCopy .env.example to .env and finish setup from the dashboard
cp .env.example .env
# Edit .env: set MySQL + startup defaultsRun on your server machine
node server/index.jsRun on your local machine
ptunnel http 3000 --server wss://iam.iws.lol/_private-tunnel/ws
ptunnel tcp 25565 --server wss://iam.iws.lol/_private-tunnel/ws