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

25 lines
521 B
Django/Jinja

# {{ ansible_managed }}
[NetDev]
Name={{ vpn_media.interface }}
Kind=wireguard
Description=WireGuard tunnel {{ vpn_media.interface }}
[WireGuard]
PrivateKeyFile={{ vpn_media.private_key_path }}
RouteTable=main
{% for peer in vpn_media.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 %}