20 lines
664 B
Django/Jinja
20 lines
664 B
Django/Jinja
[Interface]
|
|
Address = {{ vpn_ip }}
|
|
PostUp = wg set %i private-key <(cat /etc/wireguard/privkey)
|
|
ListenPort = 51820
|
|
|
|
{% for selected_host in groups['cluster_nodes']|difference([inventory_hostname]) %}
|
|
[Peer]
|
|
PublicKey = {{ hostvars[selected_host].wireguard_pubkey.stdout }}
|
|
Endpoint = {{ hostvars[selected_host].public_ip }}:{{ hostvars[selected_host].public_vpn_port }}
|
|
AllowedIPs = {{ hostvars[selected_host].vpn_ip }}/32
|
|
PersistentKeepalive = 25
|
|
{% endfor %}
|
|
|
|
{% for host in other_vpn_nodes %}
|
|
[Peer]
|
|
PublicKey = {{ host.pubkey }}
|
|
Endpoint = {{ host.public_ip }}:{{ host.public_vpn_port }}
|
|
AllowedIPs = {{ host.vpn_ip }}/32
|
|
PersistentKeepalive = 25
|
|
{% endfor %}
|