Expose Localhost to the Internet with Zero-Install SSH Tunnels
Share your local web app, webhook endpoint, or any TCP service with the outside world without downloading or installing anything extra. Every modern computer already has an SSH client built in. One command is all it takes to go live.
📋 What's in this guide
Why Zero-Install Matters
The standard way to use Localtonet is by downloading the client binary and running it with your AuthToken. That works great but there are situations where installing software is inconvenient, restricted, or simply not an option.
Zero-Install SSH Tunnel
- No software to install or update
- Works behind corporate firewalls
- SSH client already on every machine
- Single command to activate
- End-to-end encrypted by default
- Automatic HTTPS on HTTP tunnels
Standard Localtonet Client
- Requires downloading the binary
- May need IT approval in locked-down environments
- Needs updating with new versions
- More setup steps for first-time use
What You Need Before Starting
✅ Checklist
- ☑️ A free Localtonet account
- ☑️ Your built-in SSH client
sshon macOS/Linux,ssh.exeon Windows 10+, or PuTTY on older Windows - ☑️ A local service running on a known port for example a web app on
127.0.0.1:8080
Open a terminal (PowerShell on Windows, Terminal on macOS/Linux) and run the command below. If you see a version number, you're ready. On Windows 10 and 11, OpenSSH is installed by default.
ssh -V
Step-by-Step Setup
Sign in to the Localtonet dashboard
Go to localtonet.com/dashboard. If you don't have an account yet, register for free — no credit card required.
Create a new tunnel
Navigate to Tunnels → New Tunnel. Select TCP for any TCP-based service,
or HTTP if you're exposing a web app HTTP tunnels get automatic HTTPS at no extra cost.
Enter your local IP (127.0.0.1) and port, then click Create.
Open the SSH Command
In the tunnel list, click the Settings icon on your tunnel card, then click SSH Command. Localtonet generates a ready-to-paste one-liner pre-filled with your token and port. Click to copy it.
Paste and run the command
Open your terminal (Terminal, PowerShell, iTerm, or PuTTY), paste the command, and press Enter. The SSH connection establishes immediately and your local service is now publicly accessible.
Verify the tunnel is live
The terminal confirms the tunnel is active and prints the public relay address. Share that address with teammates or paste it into a webhook provider all traffic is securely forwarded to your local machine.
What the SSH Command Looks Like
The command Localtonet generates for you looks like this:
ssh -p 223 YourTunnelToken@example.localto.net -R3327:127.0.0.1:8080
And once it runs, the terminal confirms the active forwarding:
TCP ⇒ example.localto.net:3327 ⇒ 127.0.0.1:8080
| Part of the command | What it means |
|---|---|
ssh |
The built-in SSH client on your machine |
-p 223 |
The SSH port Localtonet listens on (223, not the default 22) |
YourAuthToken |
Your unique tunnel authentication token pre-filled by Localtonet automatically |
@example.localto.net |
The Localtonet relay server your tunnel connects to |
-R3327:127.0.0.1:8080 |
Remote port forward: relay port 3327 → your local port 8080 |
-p 223YourTunnelToken-R3327:127.0.0.1:8080Localtonet generates the complete, correct command for your specific tunnel automatically. You just copy and paste it. The breakdown above is for those who are curious about what each part does.
Running the Command on Your Platform
🪟 Windows 10 / 11 — PowerShell or Command Prompt
OpenSSH is built into Windows 10 and 11. Open PowerShell or Command Prompt from the Start menu, paste the command Localtonet gave you, and press Enter. No installation needed.
🪟 Older Windows — PuTTY
Download the free PuTTY application.
In PuTTY's Session settings enter the relay host and port 223.
Under Connection → SSH → Tunnels, add the remote port forward from the -R part of the command.
Authenticate with your tunnel token when prompted.
🍎 macOS — Terminal or iTerm2
Open Terminal (Applications → Utilities) or iTerm2. Paste the SSH command and press Return. macOS ships with OpenSSH pre-installed on all versions nothing to set up.
🐧 Linux — Any Terminal
Open any terminal emulator, paste the command, and press Enter. OpenSSH client is pre-installed on virtually every Linux distribution. If missing for any reason, install it with your package manager:
# Debian / Ubuntu
sudo apt install openssh-client
# Fedora / RHEL
sudo dnf install openssh
The SSH tunnel stays active only as long as the terminal session is running. Closing the terminal or pressing Ctrl+C disconnects the tunnel immediately. For a persistent tunnel that survives terminal closure and system reboots, use the standard Localtonet client with service mode instead.
Popular Use Cases
🖥️ Frontend Previews for Teammates or Clients
Running a React, Vue, or Angular app locally on port 3000 or 5173? Share the SSH tunnel address with a teammate on the other side of the world. They open the URL in their browser and see your local dev server in real time no deployment, no staging server, no commit needed.
🪝 Webhook Testing with Stripe, GitHub, Twilio, and More
Webhook providers need a publicly reachable HTTPS URL to send events to. Run your local API, open the SSH tunnel, and paste the relay address into the Stripe, GitHub, Twilio, or Zapier dashboard as the webhook endpoint. Live events arrive at your local machine instantly, no mock server, no fake payloads.
📱 Mobile App QA Against a Local API
Your mobile app is in QA and needs to hit your local backend. Open a tunnel to your local server and point the QA team's devices at the relay address. Changes you make locally are immediately live for testers on real devices.
🤖 AI Agent and LLM API Endpoints
Exposing a local LLM inference backend or an MCP-compatible service for remote testing? The SSH tunnel gives you a public URL in seconds without touching your network config. Share the endpoint with collaborators or connect it to an orchestration platform instantly.
🎮 Quick Multiplayer Game Server
Hosting a temporary game server for friends? Open an SSH tunnel to your game server's local port, share the relay address, and friends connect directly. When you close the terminal the tunnel disappears cleanly, no lingering open ports.
🗄️ Temporary Remote Database Access
Need a colleague to access a database running on your local machine without a VPN?
Open a TCP tunnel to the database port (e.g. 3306 for MySQL, 5432 for PostgreSQL).
Temporary, encrypted, and closed the moment you shut the terminal.
Frequently Asked Questions
Is the SSH tunnel secure?
Yes. SSH provides end-to-end encryption on all traffic passing through the tunnel. HTTP tunnels additionally get automatic TLS 1.3 via Let's Encrypt, so browser connections use HTTPS without any extra configuration on your part.
Do I need to install anything at all?
No. Windows 10+, macOS, and Linux all ship with an SSH client pre-installed. Older Windows users can use the free PuTTY application. No Localtonet binary is needed for the zero-install SSH method.
What happens if I close the terminal?
The SSH tunnel closes immediately when the terminal session ends. If you need a tunnel that stays active without a terminal window open, use the standard Localtonet client with service mode instead it runs as a background OS service that survives reboots.
Can I use a custom domain or a fixed port?
Yes. Go to Add-ons → Reserved Ports in the Localtonet dashboard to reserve a specific port that stays the same every time. For a custom domain, add your domain in the DNS Manager and select it when creating the tunnel.
Does this work behind a corporate firewall?
In most cases, yes. Localtonet uses port 223 for its SSH connections, which is generally not blocked. SSH traffic is standard and whitelisted in most corporate network policies. If port 223 is blocked, ask your IT team to whitelist it, it's a straightforward request for SSH on an alternate port.
How is this different from standard SSH port forwarding?
This uses SSH's built-in reverse port forwarding (-R flag), but instead of connecting to your own server, you connect to Localtonet's relay. Localtonet handles the public URL, TLS certificate, and routing you just provide the SSH command and your local port.
Is this a replacement for ngrok or Cloudflare Tunnel?
It's a strong alternative especially in environments where installing binaries is not possible. For environments where you can install the Localtonet client, the full client offers more features: UDP tunnels, persistent service mode, and dashboard management. The SSH method is best for quick, temporary, or restricted-environment use cases.
Go Live in Under 60 Seconds
Create a free Localtonet account, copy the SSH command from your tunnel's settings, paste it into any terminal. No install, no config, your local service is on the internet.
Create Free Account →