Migrate away from the VPN backend mode
The vpn backend mode was removed in v1.1.11 due to dependency conflicts with core zrok libraries.
If you were using the VPN backend mode, consider these alternatives depending on your use case.
For host-to-host connectivity
TCP tunnel mode
The tcpTunnel backend mode tunnels specific TCP ports between hosts. Use this when you need to access a specific
service on a remote machine.
Example: SSH access to a remote machine
-
On the machine you want to access, create a private share of the SSH port:
zrok2 share private --backend-mode tcpTunnel localhost:22This creates a private share and outputs a share token (e.g.,
abc123). -
On your local machine, bind the share to a local port:
zrok2 access private --bind 127.0.0.1:2222 <share-token> -
Connect via SSH through the tunnel:
ssh -p 2222 user@127.0.0.1
Example: Database on a remote server
-
On the remote machine, create a private share of the database port:
zrok2 share private --backend-mode tcpTunnel localhost:5432 -
On your local machine, bind the share to a local port:
zrok2 access private --bind 127.0.0.1:5432 <share-token> -
Connect with your database client:
psql -h 127.0.0.1 -p 5432 -U myuser mydatabase
SOCKS proxy mode
The socks backend mode creates a SOCKS5 proxy for dynamic port forwarding to multiple destinations through a single
share. Use this when you need to access multiple services on a remote network.
-
On the remote machine, create a private share in SOCKS mode:
zrok2 share private --backend-mode socks -
On your local machine, bind the share to a local SOCKS5 port:
zrok2 access private --bind 127.0.0.1:1080 <share-token> -
Configure your applications to use the SOCKS5 proxy at
127.0.0.1:1080. For example:curl:
curl --socks5-hostname 127.0.0.1:1080 http://internal-server:8080/apiSSH (to access any host reachable from the remote machine):
ssh -o ProxyCommand='nc -x 127.0.0.1:1080 %h %p' user@internal-hostBrowser: Configure your browser's proxy settings to use SOCKS5 proxy
127.0.0.1:1080to browse internal web applications.
When to use each mode
| Use case | Recommended mode |
|---|---|
| Access a single TCP service (SSH, database, etc.) | tcpTunnel |
| Access multiple services on a remote network | socks |
| Web browsing through a remote network | socks |
| Persistent service tunneling | tcpTunnel with reserved name |
For network-level access
Consider deploying an OpenZiti network directly for full network-level zero-trust connectivity.
Support
If you have questions or need help migrating, start a discussion on the OpenZiti Discourse Group.