Spec-Zone.ru › Ansible 2.11

ansible.posix.firewalld – Управление произвольными портами/службами с помощью firewalld

Примечание

Этот плагин входит в состав коллекции ansible.posix (версия 1.1.1).

Для его установки используйте: ansible-galaxy collection install ansible.posix.

Для использования в плейбуке укажите: ansible.posix.firewalld.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры

Обзор

  • Этот модуль позволяет добавлять или удалять службы и порты (TCP или UDP) в правила firewalld, работающие или постоянные.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • firewalld >= 0.2.11

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
icmp_block
строка
Блокировка ICMP, которую нужно добавить/удалить из зоны в firewalld.
icmp_block_inversion
строка
Включить/выключить инверсию блокировок ICMP для зоны в firewalld.
immediate
булево
    Варианты:
  • нет ←
  • да
Необходимо ли применить эту конфигурацию немедленно, если она установлена как постоянная.
interface
строка
Интерфейс, который нужно добавить/удалить из зоны в firewalld.
masquerade
строка
Настройка маскирования, которую нужно включить/выключить для зон в firewalld.
offline
булево
    Варианты:
  • нет
  • да
Необходимо ли выполнить этот модуль даже когда firewalld недоступен.
permanent
булево
    Варианты:
  • нет
  • да
Должна ли эта конфигурация быть в текущей конфигурации firewalld или сохраняться при перезагрузке.
Начиная с Ansible 2.3, операции permanent могут работать с конфигурациями firewalld, когда он не запущен (требуется firewalld >= 3.0.9).
Обратите внимание, что если это no, immediate предполагается yes.
port
строка
Имя порта или диапазона портов для добавления/удаления из firewalld.
Должен быть в формате PORT/PROTOCOL или PORT-PORT/PROTOCOL для диапазонов портов.
rich_rule
строка
Обогащенное правило для добавления/удаления из firewalld.
См. Синтаксис правил firewalld в расширенном языке.
service
строка
Имя службы для добавления/удаления из firewalld.
Служба должна быть в списке вывода firewall-cmd --get-services.
source
строка
Источник/сеть, которую нужно добавить/удалить из firewalld.
state
строка / обязательно
    Варианты:
  • absent
  • disabled
  • enabled
  • present
Включить или отключить настройку.
Для портов: должен ли этот порт принимать (включен) или отклонять (выключен) подключения.
Состояния present и absent могут использоваться только в операциях на уровне зон (т.е. когда не заданы другие параметры, кроме зоны и состояния).
timeout
целое число
По умолчанию:
0
Время действия правила, если оно не постоянное.
zone
строка
Зона firewalld, для добавления/удаления.
Обратите внимание, что зона по умолчанию может быть настроена на каждом сервере, но public является значением по умолчанию от разработчиков.
Доступные варианты могут быть расширены в зависимости от конфигурации каждого сервера, здесь указаны значения по умолчанию по умолчанию.
Возможные значения включают block, dmz, drop, external, home, internal, public, trusted, work.

Примечания

Примечание

  • Не тестировалось на системах на базе Debian.
  • Требуются python2-bindings для firewalld, которые могут быть не установлены по умолчанию.
  • Для дистрибутивов, где python2-bindings для firewalld недоступны (например, Fedora 28 и выше), необходимо установить ansible_python_interpreter для этих хостов на путь к интерпретатору python3 и установить python3-bindings.
  • Транзакции зон (создание, удаление) могут выполняться с использованием только параметров zone и state «present» или «absent». Обратите внимание, что для транзакций зон обязательно должно быть указано permanent. Это ограничение firewalld. Это также означает, что вам придется перезагрузить firewalld после добавления зоны, на которой вы хотите выполнить немедленные действия. Модуль не будет выполнять это за вас неявно, так как это отменит любые ранее выполненные немедленные действия, которые не были постоянными. Поэтому, если вам требуется немедленный доступ к недавно созданной зоне, рекомендуется сразу же перезагрузить firewalld после возвращения зоны с изменённым состоянием и перед выполнением любых других немедленных, непостоянных действий в этой зоне.

Примеры

- name: permit traffic in default zone for https service
  ansible.posix.firewalld:
    service: https
    permanent: yes
    state: enabled

- name: do not permit traffic in default zone on port 8081/tcp
  ansible.posix.firewalld:
    port: 8081/tcp
    permanent: yes
    state: disabled

- ansible.posix.firewalld:
    port: 161-162/udp
    permanent: yes
    state: enabled

- ansible.posix.firewalld:
    zone: dmz
    service: http
    permanent: yes
    state: enabled

- ansible.posix.firewalld:
    rich_rule: rule service name="ftp" audit limit value="1/m" accept
    permanent: yes
    state: enabled

- ansible.posix.firewalld:
    source: 192.0.2.0/24
    zone: internal
    state: enabled

- ansible.posix.firewalld:
    zone: trusted
    interface: eth2
    permanent: yes
    state: enabled

- ansible.posix.firewalld:
    masquerade: yes
    state: enabled
    permanent: yes
    zone: dmz

- ansible.posix.firewalld:
    zone: custom
    state: present
    permanent: yes

- ansible.posix.firewalld:
    zone: drop
    state: enabled
    permanent: yes
    icmp_block_inversion: yes

- ansible.posix.firewalld:
    zone: drop
    state: enabled
    permanent: yes
    icmp_block: echo-request

- name: Redirect port 443 to 8443 with Rich Rule
  ansible.posix.firewalld:
    rich_rule: rule family=ipv4 forward-port port=443 protocol=tcp to-port=8443
    zone: public
    permanent: yes
    immediate: yes
    state: enabled

Авторы

  • Adam Miller (@maxamillion)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/ansible/posix/firewalld_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API