arch-setup/templates/personal/desktop/network/wg0.netdev.j2

25 lines
529 B
Django/Jinja

# {{ ansible_managed }}
[NetDev]
Name={{ vpn_default.interface }}
Kind=wireguard
Description=WireGuard tunnel {{ vpn_default.interface }}
[WireGuard]
PrivateKeyFile={{ vpn_default.private_key_path }}
RouteTable=main
{% for peer in vpn_default.peers %}
[WireGuardPeer]
PublicKey={{ peer.public_key }}
PresharedKeyFile={{ peer.preshared_key_path }}
{% for ip in peer.allowed_ips %}
AllowedIPs={{ ip }}
{% endfor %}
{% if peer.endpoint %}
Endpoint={{ peer.endpoint }}
{% endif %}
{% if not loop.last %}
{% endif %}
{% endfor %}