Files
a13labs.infra/ansible/roles/fail2ban/tasks/manage_config.yml
T

80 lines
3.2 KiB
YAML
Raw Normal View History

2024-09-24 15:19:51 +02:00
---
# Configuration tasks file for fail2ban
# =============================================================================
- name: 'CONFIG | PATHS | Ensure main configuration folder exists'
ansible.builtin.file:
dest: "{{ fail2ban_paths.folders.main.path }}"
owner: "{{ fail2ban_paths.folders.main.owner | default('root') }}"
group: "{{ fail2ban_paths.folders.main.group | default('root') }}"
mode: "{{ fail2ban_paths.folders.main.mode | default('0755') }}"
state: 'directory'
- name: 'CONFIG | Ensure actions folder exists'
ansible.builtin.file:
dest: "{{ fail2ban_paths.folders.action.path }}"
owner: "{{ fail2ban_paths.folders.action.owner | default('root') }}"
group: "{{ fail2ban_paths.folders.action.group | default('root') }}"
mode: "{{ fail2ban_paths.folders.action.mode | default('0755') }}"
state: 'directory'
- name: 'CONFIG | Ensure filters folder exists'
ansible.builtin.file:
dest: "{{ fail2ban_paths.folders.filter.path }}"
owner: "{{ fail2ban_paths.folders.filter.owner | default('root') }}"
group: "{{ fail2ban_paths.folders.filter.group | default('root') }}"
mode: "{{ fail2ban_paths.folders.filter.mode | default('0755') }}"
state: 'directory'
- name: 'CONFIG | Manage main configuration file'
community.general.ini_file:
dest: "{{ fail2ban_paths.files.main_config.path }}"
owner: "{{ fail2ban_paths.files.main_config.owner | default('root') }}"
group: "{{ fail2ban_paths.files.main_config.group | default('root') }}"
mode: "{{ fail2ban_paths.files.main_config.mode | default('0644') }}"
section: "{{ item.section | default('Definition') }}"
option: "{{ item.option }}"
value: "{{ item.value }}"
notify: 'HANDLER | Restart fail2ban'
with_items: "{{ fail2ban_main_config_content }}"
become: true
- name: 'CONFIG | Manage actions configurations files'
ansible.builtin.template:
src: "{{ role_path }}/templates/action.conf.j2"
dest: "{{ fail2ban_paths.folders.action.path }}/{{ item.key }}.conf"
owner: "{{ fail2ban_paths.files.action.owner | default('root') }}"
group: "{{ fail2ban_paths.files.action.group | default('root') }}"
mode: "{{ fail2ban_paths.files.action.mode | default('0644') }}"
notify: 'HANDLER | Restart fail2ban'
with_dict: "{{ fail2ban_actions }}"
become: true
- name: 'CONFIG | Manage filters configurations files'
ansible.builtin.template:
src: "{{ role_path }}/templates/filter.conf.j2"
dest: "{{ fail2ban_paths.folders.filter.path }}/{{ item.key }}.conf"
owner: "{{ fail2ban_paths.files.filter.owner | default('root') }}"
group: "{{ fail2ban_paths.files.filter.group | default('root') }}"
mode: "{{ fail2ban_paths.files.filter.mode | default('0644') }}"
notify: 'HANDLER | Restart fail2ban'
with_dict: "{{ fail2ban_filters }}"
become: true
- name: 'CONFIG | Manage local jails configuration file'
ansible.builtin.template:
src: "{{ role_path }}/templates/jail.local.j2"
dest: "{{ fail2ban_paths.files.jail_local.path }}"
owner: "{{ fail2ban_paths.files.jail_local.owner | default('root') }}"
group: "{{ fail2ban_paths.files.jail_local.group | default('root') }}"
mode: "{{ fail2ban_paths.files.jail_local.mode | default('0644') }}"
notify: 'HANDLER | Restart fail2ban'
become: true