Модуль fortinet.fortios.fortios_waf_profile — настройка конфигурации межсетевого экрана веб-приложений в Fortinet FortiOS и FortiGate.
Примечание
Этот модуль входит в коллекцию fortinet.fortios (версия 2.5.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install fortinet.fortios. Для использования этого модуля требуются дополнительные компоненты. Подробнее см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: fortinet.fortios.fortios_waf_profile.
Добавлено в fortinet.fortios 2.0.0
Краткое описание
- Этот модуль позволяет настраивать устройство FortiGate или FortiOS (FOS), задавая и изменяя параметры функций waf и категории профилей. В примерах приведены все параметры и значения, которые необходимо адаптировать к источникам данных перед использованием. Проверено на FOS v6.0.0
Требования
На узле, выполняющем этот модуль, требуются следующие компоненты.
- ansible>=2.16
Параметры
Параметр | Комментарии |
|---|---|
access_token string | Аутентификация на основе токена. Создан в графическом интерфейсе Fortigate. |
enable_log boolean | Включить/отключить ведение журнала для задачи. Варианты:
|
member_path string | Путь к атрибуту элемента, с которым нужно выполнить операцию. Если атрибутов несколько, они разделяются символом косой черты. Параметр с указанным member_path можно использовать для выполнения операции с элементом. |
member_state string | Добавить или удалить элемент по указанному пути атрибута. Если задан member_state, параметр state игнорируется. Варианты:
|
state string / обязательный | Указывает, следует ли создать или удалить объект. Варианты:
|
vdom string | Виртуальный домен из числа ранее определённых. VDOM — это виртуальный экземпляр FortiGate, который можно настроить и использовать как отдельное устройство. По умолчанию: |
waf_profile dictionary | Настройка межсетевого экрана веб-приложений. |
|
address_list dictionary |
Списки блокировки и разрешённых адресов. |
|
blocked_address list / elements=dictionary |
Заблокированный адрес. |
|
name string / обязательный |
Имя адреса. Источник: firewall.address.name, firewall.addrgrp.name. |
|
blocked_log string |
Включить/отключить ведение журнала для заблокированных адресов. Варианты:
|
|
severity string |
Степень серьёзности. Варианты:
|
|
status string |
Состояние. Варианты:
|
|
trusted_address list / elements=dictionary |
Доверенный адрес. |
|
name string / обязательный |
Имя адреса. Источник: firewall.address.name, firewall.addrgrp.name. |
|
comment string |
Комментарий. |
|
constraint dictionary |
Ограничения протокола HTTP для WAF. |
|
content_length dictionary |
Длина содержимого HTTP-запроса. |
|
action string |
Действие. Варианты:
|
|
length integer |
Длина содержимого HTTP в байтах (от 0 до 2147483647). |
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
severity string |
Степень серьёзности. Варианты:
|
|
status string |
Включить/отключить ограничение. Варианты:
|
|
exception list / elements=dictionary |
Исключение для ограничений HTTP. |
|
address string |
Адрес узла. Источник: firewall.address.name, firewall.addrgrp.name. |
|
content_length string |
Длина содержимого HTTP-запроса. Варианты:
|
|
header_length string |
Длина заголовка HTTP-запроса. Варианты:
|
|
hostname string |
Включить/отключить проверку имени узла. Варианты:
|
|
id integer / обязательный |
Идентификатор исключения. См. <a href=’#notes’>Примечания</a>. |
|
line_length string |
Длина строки HTTP-запроса. Варианты:
|
|
malformed string |
Включить/отключить проверку HTTP-запросов с неверным форматом. Варианты:
|
|
max_cookie string |
Максимальное количество файлов cookie в HTTP-запросе. Варианты:
|
|
max_header_line string |
Максимальное количество строк заголовка HTTP. Варианты:
|
|
max_range_segment string |
Максимальное количество сегментов диапазона в строке диапазона HTTP. Варианты:
|
|
max_url_param string |
Максимальное количество параметров в URL. Варианты:
|
|
method string |
Включить/отключить проверку метода HTTP. Варианты:
|
|
param_length string |
Максимальная длина параметра в URL, HTTP POST-запросе или теле HTTP-сообщения. Варианты:
|
|
pattern string |
Шаблон URL. |
|
regex string |
Включить/отключить сопоставление с шаблоном на основе регулярного выражения. Варианты:
|
|
url_param_length string |
Максимальная длина параметра в URL. Варианты:
|
|
version string |
Включить/отключить проверку версии HTTP. Варианты:
|
|
header_length dictionary |
Длина заголовка HTTP-запроса. |
|
action string |
Действие. Варианты:
|
|
length integer |
Длина заголовка HTTP в байтах (от 0 до 2147483647). |
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
severity string |
Степень серьёзности. Варианты:
|
|
status string |
Включить/отключить ограничение. Варианты:
|
|
hostname dictionary |
Включить/отключить проверку имени узла. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
severity string |
Степень серьёзности. Варианты:
|
|
status string |
Включить/отключить ограничение. Варианты:
|
|
line_length dictionary |
Длина строки HTTP-запроса. |
|
action string |
Действие. Варианты:
|
|
length integer |
Длина строки HTTP в байтах (от 0 до 2147483647). |
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
malformed dictionary |
Включить или отключить проверку некорректных HTTP-запросов. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить или отключить ведение журнала. Варианты:
|
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
max_cookie dictionary |
Максимальное количество файлов cookie в HTTP-запросе. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить или отключить ведение журнала. Варианты:
|
|
max_cookie integer |
Максимальное количество файлов cookie в HTTP-запросе (от 0 до 2147483647). |
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
max_header_line dictionary |
Максимальное количество строк заголовка HTTP. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить или отключить ведение журнала. Варианты:
|
|
max_header_line integer |
Максимальное количество строк заголовка HTTP (от 0 до 2147483647). |
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
max_range_segment dictionary |
Максимальное количество сегментов диапазона в строке диапазона HTTP. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить или отключить ведение журнала. Варианты:
|
|
max_range_segment integer |
Максимальное количество сегментов диапазона в строке диапазона HTTP (от 0 до 2147483647). |
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
max_url_param dictionary |
Максимальное количество параметров в URL. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить или отключить ведение журнала. Варианты:
|
|
max_url_param integer |
Максимальное количество параметров в URL (от 0 до 2147483647). |
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
method dictionary |
Включить или отключить проверку метода HTTP. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить или отключить ведение журнала. Варианты:
|
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
param_length dictionary |
Максимальная длина параметра в URL, HTTP POST-запросе или теле HTTP-запроса. |
|
action string |
Действие. Варианты:
|
|
length integer |
Максимальная длина параметра в URL, HTTP POST-запросе или теле HTTP-запроса в байтах (от 0 до 2147483647). |
|
log string |
Включить или отключить ведение журнала. Варианты:
|
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
url_param_length dictionary |
Максимальная длина параметра в URL. |
|
action string |
Действие. Варианты:
|
|
length integer |
Максимальная длина параметра URL в байтах (от 0 до 2147483647). |
|
log string |
Включить или отключить ведение журнала. Варианты:
|
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
version dictionary |
Включить или отключить проверку версии HTTP. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить или отключить ведение журнала. Варианты:
|
|
severity string |
Степень серьезности. Варианты:
|
|
status string |
Включить или отключить ограничение. Варианты:
|
|
extended_log string |
Включить или отключить расширенное ведение журнала. Варианты:
|
|
external string |
Отключить или включить внешнюю проверку HTTP. Варианты:
|
|
method dictionary |
Ограничение методов. |
|
default_allowed_methods list / elements=string |
Методы. Варианты:
|
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
method_policy list / elements=dictionary |
Политика методов HTTP. |
|
address string |
Адрес узла. Источник: firewall.address.name, firewall.addrgrp.name. |
|
allowed_methods list / elements=string |
Разрешённые методы. Варианты:
|
|
id integer / обязательный |
Идентификатор политики методов HTTP. См. <a href=’#notes’>Примечания</a>. |
|
pattern string |
Шаблон URL. |
|
regex string |
Включить/отключить сопоставление с шаблоном на основе регулярного выражения. Варианты:
|
|
severity string |
Уровень серьёзности. Варианты:
|
|
status string |
Статус. Варианты:
|
|
name string / обязательный |
Имя профиля WAF. |
|
signature dictionary |
Сигнатуры WAF. |
|
credit_card_detection_threshold integer |
Минимальное количество кредитных карт для обнаружения нарушения. |
|
custom_signature list / elements=dictionary |
Пользовательская сигнатура. |
|
action string |
Действие. Варианты:
|
|
case_sensitivity string |
Чувствительность шаблона к регистру. Варианты:
|
|
direction string |
Направление трафика. Варианты:
|
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
name string / обязательный |
Имя сигнатуры. |
|
pattern string |
Шаблон сопоставления. |
|
severity string |
Уровень серьёзности. Варианты:
|
|
status string |
Статус. Варианты:
|
|
target list / elements=string |
Цель сопоставления HTTP. Варианты:
|
|
disabled_signature list / elements=dictionary |
Отключённые сигнатуры. |
|
id integer / обязательный |
Идентификатор сигнатуры. См. <a href=’#notes’>Примечания</a>. Источник: waf.signature.id. |
|
disabled_sub_class list / elements=dictionary |
Отключённые подклассы сигнатур. |
|
id integer / обязательный |
Идентификатор подкласса сигнатуры. См. <a href=’#notes’>Примечания</a>. Источник: waf.sub-class.id. |
|
main_class list / elements=dictionary |
Основной класс сигнатур. |
|
action string |
Действие. Варианты:
|
|
id integer / обязательный |
Идентификатор основного класса сигнатур. См. <a href=’#notes’>Примечания</a>. Источник: waf.main-class.id. |
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
severity string |
Уровень серьёзности. Варианты:
|
|
status string |
Статус. Варианты:
|
|
url_access list / elements=dictionary |
Список правил доступа к URL. |
|
access_pattern list / elements=dictionary |
Шаблон доступа к URL. |
|
id integer / обязательный |
Идентификатор шаблона доступа к URL. См. <a href=’#notes’>Примечания</a>. |
|
negate string |
Включить/отключить инверсию условия сопоставления. Варианты:
|
|
pattern string |
Шаблон URL. |
|
regex string |
Включить/отключить сопоставление с шаблоном на основе регулярного выражения. Варианты:
|
|
srcaddr string |
Исходный адрес. Источник: firewall.address.name, firewall.addrgrp.name. |
|
action string |
Действие. Варианты:
|
|
address string |
Адрес узла. Источник: firewall.address.name, firewall.addrgrp.name. |
|
id integer / обязательный |
Идентификатор правила доступа к URL. См. <a href=’#notes’>Примечания</a>. |
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
severity string |
Уровень серьёзности. Варианты:
|
Примечания
Примечание
- Устаревшая библиотека fortiosapi больше не поддерживается; для запуска плейбуков рекомендуется использовать httpapi
- Модуль поддерживает check_mode.
Примеры
- name: Configure Web application firewall configuration.
fortinet.fortios.fortios_waf_profile:
vdom: "{{ vdom }}"
state: "present"
access_token: "<your_own_value>"
waf_profile:
address_list:
blocked_address:
-
name: "default_name_5 (source firewall.address.name firewall.addrgrp.name)"
blocked_log: "enable"
severity: "high"
status: "enable"
trusted_address:
-
name: "default_name_10 (source firewall.address.name firewall.addrgrp.name)"
comment: "Comment."
constraint:
content_length:
action: "allow"
length: "67108864"
log: "enable"
severity: "high"
status: "enable"
exception:
-
address: "<your_own_value> (source firewall.address.name firewall.addrgrp.name)"
content_length: "enable"
header_length: "enable"
hostname: "enable"
id: "24"
line_length: "enable"
malformed: "enable"
max_cookie: "enable"
max_header_line: "enable"
max_range_segment: "enable"
max_url_param: "enable"
method: "enable"
param_length: "enable"
pattern: "<your_own_value>"
regex: "enable"
url_param_length: "enable"
version: "enable"
header_length:
action: "allow"
length: "8192"
log: "enable"
severity: "high"
status: "enable"
hostname:
action: "allow"
log: "enable"
severity: "high"
status: "enable"
line_length:
action: "allow"
length: "1024"
log: "enable"
severity: "high"
status: "enable"
malformed:
action: "allow"
log: "enable"
severity: "high"
status: "enable"
max_cookie:
action: "allow"
log: "enable"
max_cookie: "16"
severity: "high"
status: "enable"
max_header_line:
action: "allow"
log: "enable"
max_header_line: "32"
severity: "high"
status: "enable"
max_range_segment:
action: "allow"
log: "enable"
max_range_segment: "5"
severity: "high"
status: "enable"
max_url_param:
action: "allow"
log: "enable"
max_url_param: "16"
severity: "high"
status: "enable"
method:
action: "allow"
log: "enable"
severity: "high"
status: "enable"
param_length:
action: "allow"
length: "8192"
log: "enable"
severity: "high"
status: "enable"
url_param_length:
action: "allow"
length: "8192"
log: "enable"
severity: "high"
status: "enable"
version:
action: "allow"
log: "enable"
severity: "high"
status: "enable"
extended_log: "enable"
external: "disable"
method:
default_allowed_methods: "get"
log: "enable"
method_policy:
-
address: "<your_own_value> (source firewall.address.name firewall.addrgrp.name)"
allowed_methods: "get"
id: "113"
pattern: "<your_own_value>"
regex: "enable"
severity: "high"
status: "enable"
name: "default_name_118"
signature:
credit_card_detection_threshold: "3"
custom_signature:
-
action: "allow"
case_sensitivity: "disable"
direction: "request"
log: "enable"
name: "default_name_126"
pattern: "<your_own_value>"
severity: "high"
status: "enable"
target: "arg"
disabled_signature:
-
id: "132 (source waf.signature.id)"
disabled_sub_class:
-
id: "134 (source waf.sub-class.id)"
main_class:
-
action: "allow"
id: "137 (source waf.main-class.id)"
log: "enable"
severity: "high"
status: "enable"
url_access:
-
access_pattern:
-
id: "143"
negate: "enable"
pattern: "<your_own_value>"
regex: "enable"
srcaddr: "<your_own_value> (source firewall.address.name firewall.addrgrp.name)"
action: "bypass"
address: "<your_own_value> (source firewall.address.name firewall.addrgrp.name)"
id: "150"
log: "enable"
severity: "high"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
build string | Номер сборки образа FortiGate Возвращается: всегда Пример: |
http_method string | Последний метод, использованный для предоставления содержимого в FortiGate Возвращается: всегда Пример: |
http_status string | Последний результат, возвращенный FortiGate при выполнении последней операции Возвращается: всегда Пример: |
mkey string | Мастер-ключ (идентификатор), использованный при последнем вызове FortiGate Возвращается: успешно Пример: |
name string | Имя таблицы, использованной для выполнения запроса Возвращается: всегда Пример: |
path string | Путь к таблице, использованной для выполнения запроса Возвращается: всегда Пример: |
revision string | Внутренний номер ревизии Возвращается: всегда Пример: |
serial string | Серийный номер устройства Возвращается: всегда Пример: |
status string | Результат выполнения операции Возвращается: всегда Пример: |
vdom string | Используемый виртуальный домен Возвращается: всегда Пример: |
version string | Версия FortiGate Возвращается: всегда Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/fortinet/fortios/fortios_waf_profile_module.html