Prerequisites
- • An active WireZTNA partner account (admin panel access)
- • A Linux machine on your client's network for the publisher (any VM, bare metal, or cloud instance)
- • A workstation (macOS, Windows, or Linux) for the client
Install the Publisher
In the admin panel, go to Publishers and click "+ Add Publisher". This generates a one-time enrollment token and shows you a one-liner command.
SSH into your client's Linux machine and run the command:
curl -fsSL https://your-tenant.wireztna.com/api/v1/publishers/install.sh | sudo bash
This downloads the publisher binary (8 MB), enrolls it with the broker using the embedded token, creates a WireGuard tunnel, and installs a systemd service. Takes ~10 seconds.
What happens under the hood:
- Downloads
wireztna-publisherstatic binary - Generates a WireGuard keypair locally (private key never leaves the machine)
- Registers with the broker via the enrollment token
- Establishes a persistent WireGuard tunnel to the broker
- Installs as a systemd service (auto-starts on boot)
Create a User and Generate Enrollment Token
In the admin panel:
- Go to Users → + New User — enter the user's email
- Go to Groups — assign the user to a group that has access to the publisher
- Click the user → Enrollment tab → Generate Token
- Copy the enrollment URL and send it to the user
The enrollment URL looks like: https://your-tenant.wireztna.com/api/v1/clients/enroll?token=abc123...
Tokens are one-time use, expire in 24h, and can be revoked from the admin panel.
Enroll and Connect the Client
On the user's workstation, run these three commands:
Enroll (registers the device with the broker):
wireztna enroll "https://your-tenant.wireztna.com/api/v1/clients/enroll?token=abc123"
Login (authenticates the user):
wireztna login
Connect (establishes the tunnel):
sudo wireztna connect
On Windows, use an elevated PowerShell instead of sudo. On macOS/Linux, sudo is needed for creating the network interface.
Verify Connectivity
Once connected, the client can reach resources on the publisher's network:
# Ping a host on the publisher's LAN
ping 10.50.1.100
# Access a service
curl http://10.50.1.100:8080
# Check tunnel status
wireztna status
The client only has access to the CIDRs exposed by publishers in their assigned groups. All other traffic stays on the user's default network (split tunnel).