Only generate configured peers and discard the rest
This commit is contained in:
parent
8a0ec15e56
commit
a6d9794abb
|
|
@ -18,7 +18,8 @@ wg_peers:
|
|||
allowedIPs :
|
||||
- "192.168.99.0/24"
|
||||
- "10.22.0.0/16"
|
||||
- name: second_missing_key_test
|
||||
- name: forced_missing_key_test
|
||||
forceRegeneration: True
|
||||
ip: "192.168.99.6/32"
|
||||
allowedIPs :
|
||||
- "192.168.99.0/24"
|
||||
|
|
|
|||
|
|
@ -16,4 +16,5 @@
|
|||
- name: Updating client configs info
|
||||
set_fact:
|
||||
wg_peers: "{{ wg_peers | community.general.lists_mergeby([{'name':item.key,'publicKey':item.value.publicKey}] ,'name')}}"
|
||||
when: item.key in (wg_peers | map(attribute='name'))
|
||||
loop: "{{ existing_wg_config | ansible.builtin.dict2items }}"
|
||||
|
|
|
|||
|
|
@ -1,62 +0,0 @@
|
|||
---
|
||||
- name: Install Wireguard Server
|
||||
apt:
|
||||
pkg:
|
||||
- wireguard
|
||||
state: latest
|
||||
update_cache: true
|
||||
|
||||
|
||||
- name: Create directory for wg keys
|
||||
ansible.builtin.file:
|
||||
path: /etc/wireguard/keys
|
||||
state: directory
|
||||
mode: '0755'
|
||||
|
||||
- name: Creating server privatekey and publickey
|
||||
shell: wg genkey | tee privatekey | wg pubkey > publickey
|
||||
args:
|
||||
chdir: /etc/wireguard/keys
|
||||
|
||||
- name: Get Private Key [privatekey => var_privatekey]
|
||||
shell: cat privatekey
|
||||
register: var_privatekey
|
||||
args:
|
||||
chdir: /etc/wireguard/keys
|
||||
|
||||
|
||||
#- name: Add WireGuard interface
|
||||
# command: ip link add dev wg0 type wireguard
|
||||
|
||||
|
||||
- name: Updating configuration
|
||||
template:
|
||||
src: wireguard_server.jinja
|
||||
dest: /etc/wireguard/wg0.conf
|
||||
|
||||
#- name: Activating link
|
||||
# command: ip link set up dev wg0
|
||||
|
||||
|
||||
- name: Starting wg service
|
||||
systemd:
|
||||
state: started
|
||||
name: wg-quick@wg0
|
||||
enabled: yes
|
||||
|
||||
|
||||
- name: Getting public key
|
||||
shell: cat publickey
|
||||
register: var_publickey
|
||||
args:
|
||||
chdir: /etc/wireguard/keys
|
||||
|
||||
|
||||
- name: Check server public IP
|
||||
shell: curl https://ipinfo.io/ip
|
||||
register: var_server_ip
|
||||
|
||||
|
||||
- name: Printing public key
|
||||
debug:
|
||||
msg: "Server {{ ansible_hostname }} reachable @{{var_server_ip}}. Public key is {{ var_publickey }}"
|
||||
|
|
@ -16,7 +16,7 @@ PostDown = iptables -t nat -D POSTROUTING ! -o {{wg_interface}} -m mark --mark 0
|
|||
|
||||
|
||||
{% for peer in wg_peers %}
|
||||
# {{ peer.name }}
|
||||
# Peer ID : {{ peer.name }}
|
||||
[Peer]
|
||||
PublicKey = {{ peer.publicKey }}
|
||||
AllowedIPs = {{ peer.ip }}
|
||||
|
|
|
|||
Loading…
Reference in New Issue