# {{ ansible_managed }} {{ ansible_date_time.time }} {{ ansible_date_time.date }} [NetDev] Name={{ vpn_interface }} Kind=wireguard Description=WireGuard tunnel {{ vpn_interface }} [WireGuard] # PrivateKeyFile option does not seem to work, perhaps a bug? PrivateKey={{ vpn_private_key }} {% for peer in vpn_peers %} [WireGuardPeer] PublicKey={{ peer.public_key }} # PresharedKeyFile option does not seem to work, perhaps a bug? PresharedKey={{ peer.preshared_key }} AllowedIPs={{ peer.allowd_ips }} {% if peer.endpoint %} Endpoint={{ peer.endpoint }} {% endif %} {% if not loop.last %} {% endif %} {% endfor %}