Files
sertilab-ansible/roles/homelab/wireguard/tasks/main.yml

68 lines
1.5 KiB
YAML

---
- 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.include_tasks: install_package.yml
- name: "Configure system"
ansible.builtin.include_tasks: configure_system.yml
- name: "Configure wireguard server"
ansible.builtin.include_tasks: configure_wireguard_server.yml
- name: "Create client dirrectory"
ansible.builtin.file:
path: "{{ wireguard_client_config_dir }}"
state: directory
owner: root
group: root
mode: "0700"
- name: "Include peer management tasks"
tags: peers
ansible.builtin.include_tasks: peers.yml
- name: "Deploy wireguard server configuration"
ansible.builtin.template:
src: wg0.conf.j2
dest: "{{ wireguard_config_dir }}/{{ wireguard_interface }}.conf"
owner: root
group: root
mode: '0600'
notify: "restart wireguard"
- name: "Confiugre bind9"
tags: bind9
ansible.builtin.include_tasks: configure_bind9.yml
- name: "Enable and start nftables"
ansible.builtin.systemd:
name: "nftables"
state: started
enabled: yes
- name: "Enable and start wireguard"
ansible.builtin.systemd:
name: "wg-quick@{{ wireguard_interface }}"
state: started
enabled: yes
- name: "Enable and start bind9"
ansible.builtin.systemd:
name: "bind9"
state: started
enabled: yes
- name: "Enable and start named"
ansible.builtin.systemd:
name: "named"
state: started
enabled: yes