firewalld

Ansible роль firewalld

CI MoleculeAnsible Role

Платформы

Тестирование Готово к использованию
Debian 11 :heavy_check_mark:
Debian 10 :heavy_check_mark:
Ubuntu 20.04 :heavy_check_mark:
Ubuntu 18.04 :heavy_check_mark:
Oracle Linux 8 :heavy_check_mark:
Rocky Linux 8 :heavy_check_mark:

Установка

ansible-galaxy install darexsu.firewalld --force

Поведение

Замена или объединение словарей (с "hash_behaviour=replace" в ansible.cfg):

# Замена           # Объединение
---                   ---
  vars:                 vars:
    dict:                 merge:
      a: "значение"         dict: 
      b: "значение"           a: "значение" 
                              b: "значение"

# Как работает объединение?
Ваши переменные [host_vars]  -->  переменные по умолчанию [текущая роль] --> переменные по умолчанию [включаемая роль]
  
  dict:          dict:              dict:
    a: "1" -->     a: "1"    -->      a: "1"
                   b: "2"    -->      b: "2"
                                      c: "3"
    
Установка и настройка: firewalld (объединенная версия)

---
- hosts: все
  стать: true

  vars:
    merge:
      # FirewallD
      firewalld:
        включен: true
      # FirewallD -> установка
      firewalld_install:
        включен: true
      # FirewallD -> правила
      firewalld_rules:
        port_80:
          включен: true
          зона: "public"
          состояние: "включено"
          порт: "80/tcp"
          постоянный: true
        service_http:
          включен: true
          зона: "public"
          состояние: "включено"
          служба: "http"
          постоянный: true
        service_https:
          включен: true
          зона: "public"
          состояние: "включено"
          служба: "https"
          постоянный: true
      # ...
  tasks:
    - name: роль darexsu firewalld
      include_role:
        name: darexsu.firewalld
Установка: firewalld (объединенная версия)

---
- hosts: все
  стать: true

  vars:
    merge:
      # FirewallD
      firewalld:
        включен: true
      # FirewallD -> установка
      firewalld_install:
        включен: true

  tasks:
    - name: роль darexsu firewalld
      include_role:
        name: darexsu.firewalld
Настройка: добавление правил брандмауэра (объединенная версия)

---
- hosts: все
  стать: true

  vars:
    merge:
      # FirewallD
      firewalld:
        включен: true
      # FirewallD -> правила
      firewalld_rules:
        port_80:
          включен: true
          зона: "public"
          состояние: "включено"
          порт: "80/tcp"
          постоянный: true
        service_http:
          включен: true
          зона: "public"
          состояние: "включено"
          служба: "http"
          постоянный: true
        service_https:
          включен: true
          зона: "public"
          состояние: "включено"
          служба: "https"
          постоянный: true
      # rule_name:
      #   включен: true
      #   ключ: значение
      #   ...
  tasks:
    - name: роль darexsu firewalld
      include_role:
        name: darexsu.firewalld
Установка и настройка: firewalld (полная версия)

---
- hosts: все
  стать: true

  vars:
    # FirewallD
    firewalld:
      включен: true
      служба:
        включен: true
        состояние: "запущено"
    # FirewallD -> установка
    firewalld_install:
      включен: true
    # FirewallD -> правила
    firewalld_rules:
      port_80:
        включен: true
        зона: "public"
        состояние: "включено"
        порт: "80/tcp"
        постоянный: true
        немедленно: true
      service_http:
        включен: true
        зона: "public"
        состояние: "включено"
        служба: "http"
        постоянный: true
        немедленно: true
      service_https:
        включен: true
        зона: "public"
        состояние: "включено"
        служба: "https"
        постоянный: true
        немедленно: true
    # ...
  tasks:
    - name: роль darexsu firewalld
      include_role:
        name: darexsu.firewalld
Установка: firewalld (полная версия)

---
- hosts: все
  стать: true

  vars:
    # FirewallD
    firewalld:
      включен: true
    # FirewallD -> установка
    firewalld_install:
      включен: true

  tasks:
    - name: роль darexsu firewalld
      include_role:
        name: darexsu.firewalld
Настройка: добавление правил брандмауэра (полная версия)
---
- hosts: все
  стать: true

  vars:
    # FirewallD
    firewalld:
      включен: true
      служба:
        включен: true
        состояние: "запущено"
    # FirewallD -> правила
    firewalld_rules:
      port_80:
        включен: true
        зона: "public"
        состояние: "включено"
        порт: "80/tcp"
        постоянный: true
        немедленно: true
      service_http:
        включен: true
        зона: "public"
        состояние: "включено"
        служба: "http"
        постоянный: true
        немедленно: true
      service_https:
        включен: true
        зона: "public"
        состояние: "включено"
        служба: "https"
        постоянный: true
        немедленно: true
    # rule_name:
    #   включен: true
    #   ключ: значение
    #   ...
  tasks:
    - name: роль darexsu firewalld
      include_role:
        name: darexsu.firewalld
О проекте

install and configure firewalld

Установить
ansible-galaxy install darexsu/ansible-role-firewalld
Лицензия
mit
Загрузки
3176
Владелец