Bugs fixed and improvements added in task Wireguard #1
@@ -10,7 +10,7 @@
|
|||||||
name: "nftables"
|
name: "nftables"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
||||||
- name: "restart named"
|
- name: "restart bind9"
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "named"
|
name: "bind9"
|
||||||
state: restarted
|
state: restarted
|
||||||
@@ -17,4 +17,4 @@
|
|||||||
owner: root
|
owner: root
|
||||||
group: bind
|
group: bind
|
||||||
mode: '0644'
|
mode: '0644'
|
||||||
notify: "restart named"
|
notify: "restart bind9"
|
||||||
@@ -1,14 +1,17 @@
|
|||||||
---
|
---
|
||||||
- name: "Install default packages"
|
|
||||||
ansible.builtin.apt:
|
|
||||||
name: "{{ default_packages }}"
|
|
||||||
state: present
|
|
||||||
become: true
|
|
||||||
register: deps_installed
|
|
||||||
|
|
||||||
- name: "Install wireguard"
|
- name: "Change repos"
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: mirror-yandex.ru.j2
|
||||||
|
dest: /etc/apt/sources.list
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: '0744'
|
||||||
|
|
||||||
|
- name: "Install packages"
|
||||||
ansible.builtin.apt:
|
ansible.builtin.apt:
|
||||||
name: "{{ wireguard_packages }}"
|
name: "{{ default_packages + wireguard_packages }}"
|
||||||
state: present
|
state: present
|
||||||
|
update_cache: true
|
||||||
become: true
|
become: true
|
||||||
register: deps_installed
|
register: deps_installed
|
||||||
@@ -1,18 +1,5 @@
|
|||||||
---
|
---
|
||||||
|
|
||||||
- name: "Change repos"
|
|
||||||
ansible.builtin.template:
|
|
||||||
src: mirror-yandex.ru.j2
|
|
||||||
dest: /etc/apt/sources.list
|
|
||||||
owner: root
|
|
||||||
group: root
|
|
||||||
mode: '0744'
|
|
||||||
|
|
||||||
- name: "Update cache"
|
|
||||||
ansible.builtin.apt:
|
|
||||||
update_cache: true
|
|
||||||
cache_valid_time: 3600
|
|
||||||
|
|
||||||
- name: "Install packages"
|
- name: "Install packages"
|
||||||
ansible.builtin.include_tasks: install_package.yml
|
ansible.builtin.include_tasks: install_package.yml
|
||||||
|
|
||||||
@@ -22,7 +9,7 @@
|
|||||||
- name: "Configure wireguard server"
|
- name: "Configure wireguard server"
|
||||||
ansible.builtin.include_tasks: configure_wireguard_server.yml
|
ansible.builtin.include_tasks: configure_wireguard_server.yml
|
||||||
|
|
||||||
- name: "Create client dirrectory"
|
- name: "Create client directory"
|
||||||
ansible.builtin.file:
|
ansible.builtin.file:
|
||||||
path: "{{ wireguard_client_config_dir }}"
|
path: "{{ wireguard_client_config_dir }}"
|
||||||
state: directory
|
state: directory
|
||||||
@@ -42,9 +29,8 @@
|
|||||||
group: root
|
group: root
|
||||||
mode: '0600'
|
mode: '0600'
|
||||||
notify: "restart wireguard"
|
notify: "restart wireguard"
|
||||||
#notify: restart wireguard_client_config_dir
|
|
||||||
|
|
||||||
- name: "Confiugre bind9"
|
- name: "Configure bind9"
|
||||||
tags: bind9
|
tags: bind9
|
||||||
ansible.builtin.include_tasks: configure_bind9.yml
|
ansible.builtin.include_tasks: configure_bind9.yml
|
||||||
|
|
||||||
@@ -64,10 +50,4 @@
|
|||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "bind9"
|
name: "bind9"
|
||||||
state: started
|
state: started
|
||||||
enabled: yes
|
enabled: yes
|
||||||
|
|
||||||
- name: "Enable and start named"
|
|
||||||
ansible.builtin.systemd:
|
|
||||||
name: "named"
|
|
||||||
state: started
|
|
||||||
enabled: yes
|
|
||||||
@@ -1,28 +1,22 @@
|
|||||||
---
|
---
|
||||||
|
|
||||||
- name: "Generate private keys"
|
- name: "Check if peer private key exist"
|
||||||
ansible.builtin.shell:
|
ansible.builtin.stat:
|
||||||
cmd: wg genkey
|
path: "{{ wireguard_config_dir }}/peer_{{ item.name }}_private.key"
|
||||||
register: "peer_keys"
|
register: peer_key_stat
|
||||||
loop: "{{ wireguard_clients }}"
|
loop: "{{ wireguard_clients }}"
|
||||||
loop_control:
|
loop_control:
|
||||||
label: "{{ item.name }}"
|
label: "{{ item.name }}"
|
||||||
args:
|
|
||||||
creates: "{{ wireguard_config_dir }}/peer_{{ item.name }}_private.key"
|
|
||||||
no_log: true
|
|
||||||
|
|
||||||
- name: "Save private keys"
|
- name: "Generate and save peer private keys"
|
||||||
ansible.builtin.copy:
|
ansible.builtin.shell: |
|
||||||
content: "{{ item.stdout }}"
|
wg genkey > {{ wireguard_config_dir }}/peer_{{ item.item.name }}_private.key
|
||||||
dest: "{{ wireguard_config_dir }}/peer_{{ item.item.name }}_private.key"
|
chmod 0600 {{ wireguard_config_dir }}/peer_{{ item.item.name }}_private.key
|
||||||
owner: root
|
loop: "{{ peer_key_stat.results }}"
|
||||||
group: root
|
|
||||||
mode: "0600"
|
|
||||||
loop: "{{ peer_keys.results }}"
|
|
||||||
loop_control:
|
loop_control:
|
||||||
label: "{{ item.item.name }}"
|
label: "{{ item.item.name }}"
|
||||||
when: item.change | default(false)
|
when: not item.stat.exists
|
||||||
no_log: true
|
no_log: false
|
||||||
|
|
||||||
- name: "Read all private keys"
|
- name: "Read all private keys"
|
||||||
ansible.builtin.slurp:
|
ansible.builtin.slurp:
|
||||||
@@ -62,10 +56,22 @@
|
|||||||
loop_control:
|
loop_control:
|
||||||
label: "{{ item.0.name }}"
|
label: "{{ item.0.name }}"
|
||||||
|
|
||||||
- name: "Generate QR codes for moblie clients"
|
- name: "Generate QR codes for mobile clients via text format"
|
||||||
ansible.builtin.shell:
|
ansible.builtin.shell:
|
||||||
cmd: "qrencode -t ansiutf8 < {{ wireguard_client_config_dir }}/{{ item.name }}.conf > {{ wireguard_client_config_dir }}/{{ item.name }}_qr.txt"
|
cmd: "qrencode -t ansiutf8 < {{ wireguard_client_config_dir }}/{{ item.name }}.conf > {{ wireguard_client_config_dir }}/{{ item.name }}_qr.txt"
|
||||||
loop: "{{ wireguard_clients }}"
|
loop: "{{ wireguard_clients }}"
|
||||||
loop_control:
|
loop_control:
|
||||||
label: "{{ item.name }}"
|
label: "{{ item.name }}"
|
||||||
|
args:
|
||||||
|
creates: "{{ wireguard_client_config_dir }}/{{ item.name }}_qr.txt"
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: "Generate QR codes for mobile clients via image format"
|
||||||
|
ansible.builtin.shell:
|
||||||
|
cmd: "qrencode -t png -o {{ wireguard_client_config_dir }}/{{ item.name }}.png < {{ wireguard_client_config_dir }}/{{ item.name }}.conf"
|
||||||
|
loop: "{{ wireguard_clients }}"
|
||||||
|
loop_control:
|
||||||
|
label: "{{ item.name }}"
|
||||||
|
args:
|
||||||
|
creates: "{{ wireguard_client_config_dir }}/{{ item.name }}.png"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
|
|||||||
Reference in New Issue
Block a user