{% extends "base.html" %} {% block title %}{{ peer.name }} - WireGuard Admin{% endblock %} {% block breadcrumbs %}/ Peers / {{ peer.name }}{% endblock %} {% block content %} {% if error %}

{{ error }}

{% endif %}

{{ peer.name }} {{ iface.name }} {% if not peer.has_private_key %} imported {% endif %}

Details

Address
{{ peer.address }}
Public key
{{ peer.public_key }}
Enabled
{% if peer.enabled %} yes {% else %} no {% endif %}
Created
{{ peer.created_at.strftime("%Y-%m-%d %H:%M") }}
{% if peer.expires_at %}
Expires
{{ peer.expires_at.strftime("%Y-%m-%d %H:%M") }}
{% endif %}
Usage
{{ peer.cum_total | fmt_bytes }} {% if peer.quota_bytes %} / {{ peer.quota_bytes | fmt_bytes }} {% if peer.over_quota %} over quota {% endif %} {% endif %}

Live status

{% if peer_status %}
Status
{% if peer_status.online %} online {% else %} offline {% endif %}
Endpoint
{{ peer_status.endpoint or "-" }}
Handshake
{{ peer_status.latest_handshake.strftime("%Y-%m-%d %H:%M:%S") if peer_status.latest_handshake else "never" }}
Session traffic
RX {{ peer_status.rx_bytes | fmt_bytes }} / TX {{ peer_status.tx_bytes | fmt_bytes }}
{% else %}

Not present on interface (disabled or interface down).

{% endif %}

Client config

{% if peer.has_private_key %} QR code {% else %}

This peer was imported from an existing config, so the server only knows its public key. The client keeps using its current config and everything works, but the panel cannot generate a .conf or QR code.

To manage the client config from here, rotate its keys and install the new config on the device.

{% endif %}

Edit

{% if client_config %}

{{ peer.name }}.conf

{{ client_config }}
{% endif %} {% if client_config %}

Client setup guide

Linux (wg-quick)

# Install wireguard tools
sudo apt install wireguard        # Debian/Ubuntu
sudo dnf install wireguard-tools  # Fedora/RHEL

# Save the config (downloaded or copied from above)
sudo mv {{ peer.name }}.conf /etc/wireguard/{{ peer.name }}.conf
sudo chmod 600 /etc/wireguard/{{ peer.name }}.conf

# Bring the tunnel up / down
sudo wg-quick up {{ peer.name }}
sudo wg-quick down {{ peer.name }}

# Start automatically at boot
sudo systemctl enable --now wg-quick@{{ peer.name }}

# Verify: check handshake and ping the server
sudo wg show
ping {{ server_tunnel_ip }}

Linux (NetworkManager)

nmcli connection import type wireguard file {{ peer.name }}.conf
nmcli connection up {{ peer.name }}

macOS / Windows

Install the official WireGuard app, then Import Tunnel from File and select the downloaded {{ peer.name }}.conf, or Add Empty Tunnel and paste the config above.

iOS / Android

Install the WireGuard app, tap Add Tunnel, then Create from QR code and scan the QR code above.

{% endif %} {% endblock %}