Spec-Zone.ru › Ansible 2.8

fortios_waf_profile – Настройка межсетевого экрана веб-приложений в Fortinet’s FortiOS и FortiGate

Новая версия 2.8.

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Краткое описание

  • Этот модуль позволяет настроить FortiGate или FortiOS, позволяя пользователю устанавливать и изменять параметры и профили категорий функций waf. Примеры всех параметров и значений должны быть скорректированы в источниках данных перед использованием. Тестировано с FOS v6.0.2

Требования

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

  • fortiosapi>=0.9.8

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
host
- / обязательно
IP-адрес FortiOS или FortiGate.
https
логический тип
    Варианты:
  • нет
  • да ←
Указывает, должны ли запросы к FortiGate использовать протокол HTTPS.
password
-
Значение по умолчанию:
""
Пароль FortiOS или FortiGate.
username
- / обязательно
Имя пользователя FortiOS или FortiGate.
vdom
-
Значение по умолчанию:
"root"
Виртуальная область (vdom), определённая ранее. VDOM — это виртуальный экземпляр FortiGate, который можно настроить и использовать как отдельное устройство.
waf_profile
-
Значение по умолчанию:
null
Настройка межсетевого экрана веб-приложений.
address-list
-
Список заблокированных и разрешённых адресов.
blocked-address
-
Заблокированный адрес.
name
- / обязательно
Имя адреса. Используется в firewall.address.name и firewall.addrgrp.name.
blocked-log
-
    Варианты:
  • включить
  • выключить
Включить/выключить протоколирование заблокированных адресов.
severity
-
    Варианты:
  • высокий
  • средний
  • низкий
Уровень важности.
status
-
    Варианты:
  • включить
  • выключить
Статус.
trusted-address
-
Доверенный адрес.
name
- / обязательно
Имя адреса. Используется в firewall.address.name и firewall.addrgrp.name.
comment
-
Комментарий.
constraint
-
Ограничения протокола HTTP для WAF.
content-length
-
Длина содержимого HTTP-запроса.
action
-
    Варианты:
  • разрешить
  • заблокировать
Действие.
length
-
Длина содержимого HTTP-запроса в байтах (от 0 до 2147483647).
log
-
    Варианты:
  • включить
  • выключить
Включить/выключить протоколирование.
severity
-
    Варианты:
  • высокий
  • средний
  • низкий
Уровень важности.
status
-
    Варианты:
  • включить
  • выключить
Включить/выключить ограничение.
exception
-
Исключение HTTP-ограничения.
address
-
Адрес хоста. Используется в firewall.address.name и firewall.addrgrp.name.
content-length
-
    Варианты:
  • включить
  • выключить
Длина содержимого HTTP-запроса.
header-length
-
    Варианты:
  • включить
  • выключить
Длина заголовков HTTP-запроса.
hostname
-
    Варианты:
  • включить
  • выключить
Включить/выключить проверку имени хоста.
id
- / обязательно
Идентификатор исключения.
line-length
-
    Варианты:
  • включить
  • выключить
Длина строки HTTP-запроса.
malformed
-
    Варианты:
  • включить
  • выключить
Включить/выключить проверку на некорректный HTTP-запрос.
max-cookie
-
    Варианты:
  • включить
  • выключить
Максимальное количество cookie в HTTP-запросе.
max-header-line
-
    Варианты:
  • включить
  • выключить
Максимальное количество строк в заголовке HTTP-запроса.
max-range-segment
-
    Варианты:
  • включить
  • выключить
Максимальное количество фрагментов в строке HTTP-запроса Range.
max-url-param
-
    Варианты:
  • включить
  • выключить
Максимальное количество параметров в URL.
method
-
    Варианты:
  • включить
  • выключить
Включить/выключить проверку HTTP-метода.
param-length
-
    Варианты:
  • включить
  • выключить
Максимальная длина параметра в URL, запросе HTTP POST или теле запроса HTTP.
pattern
-
Шаблон URL.
regex
-
    Варианты:
  • включить
  • выключить
Включить/выключить сопоставление шаблона на основе регулярных выражений.
url-param-length
-
    Варианты:
  • включить
  • выключить
Максимальная длина параметра в URL.
version
-
    Варианты:
  • включить
  • выключить
Включить/выключить проверку версии HTTP.
header-length
-
Длина заголовка HTTP в запросе.
action
-
    Варианты:
  • разрешить
  • заблокировать
Действие.
length
-
Длина заголовка HTTP в байтах (от 0 до 2147483647).
log
-
    Варианты:
  • включить
  • выключить
Включить/выключить логирование.
severity
-
    Варианты:
  • высокий
  • средний
  • низкий
Уровень серьезности.
status
-
    Варианты:
  • включить
  • выключить
Включить/выключить ограничение.
hostname
-
Включить/выключить проверку имени хоста.
action
-
    Варианты:
  • разрешить
  • заблокировать
Действие.
log
-
    Варианты:
  • включить
  • выключить
Включить/выключить логирование.
severity
-
    Варианты:
  • высокий
  • средний
  • низкий
Уровень серьезности.
status
-
    Варианты:
  • включить
  • выключить
Включить/выключить ограничение.
line-length
-
Длина строки HTTP в запросе.
action
-
    Варианты:
  • разрешить
  • заблокировать
Действие.
length
-
Длина строки HTTP в байтах (от 0 до 2147483647).
log
-
    Варианты:
  • включить
  • выключить
Включить/выключить логирование.
severity
-
    Варианты:
  • высокий
  • средний
  • низкий
Уровень серьезности.
status
-
    Варианты:
  • включить
  • выключить
Включить/выключить ограничение.
malformed
-
Включить/выключить проверку некорректных запросов HTTP.
action
-
    Варианты:
  • разрешить
  • заблокировать
Действие.
log
-
    Варианты:
  • включить
  • выключить
Включить/выключить логирование.
severity
-
    Варианты:
  • высокий
  • средний
  • низкий
Уровень серьезности.
status
-
    Варианты:
  • включить
  • выключить
Включить/выключить ограничение.
max-cookie
-
Максимальное количество куки в запросе HTTP.
action
-
    Варианты:
  • разрешить
  • заблокировать
Действие.
log
-
    Варианты:
  • включить
  • выключить
Включить/выключить логирование.
max-cookie
-
Максимальное количество куки в запросе HTTP (от 0 до 2147483647).
severity
-
    Варианты:
  • высокий
  • средний
  • низкий
Уровень серьезности.
status
-
    Варианты:
  • включить
  • выключить
Включить/выключить ограничение.
max-header-line
-
Максимальное количество строк HTTP-заголовка.
action
-
    Choices:
  • allow
  • block
Действие.
log
-
    Choices:
  • enable
  • disable
Включить/выключить логирование.
max-header-line
-
Максимальное количество строк HTTP-заголовков (от 0 до 2147483647).
severity
-
    Choices:
  • high
  • medium
  • low
Уровень важности.
status
-
    Choices:
  • enable
  • disable
Включить/выключить ограничение.
max-range-segment
-
Максимальное количество фрагментов диапазона в строке HTTP-диапазона.
action
-
    Choices:
  • allow
  • block
Действие.
log
-
    Choices:
  • enable
  • disable
Включить/выключить логирование.
max-range-segment
-
Максимальное количество фрагментов диапазона в строке HTTP-диапазона (от 0 до 2147483647).
severity
-
    Choices:
  • high
  • medium
  • low
Уровень важности.
status
-
    Choices:
  • enable
  • disable
Включить/выключить ограничение.
max-url-param
-
Максимальное количество параметров в URL.
action
-
    Choices:
  • allow
  • block
Действие.
log
-
    Choices:
  • enable
  • disable
Включить/выключить логирование.
max-url-param
-
Максимальное количество параметров в URL (от 0 до 2147483647).
severity
-
    Choices:
  • high
  • medium
  • low
Уровень важности.
status
-
    Choices:
  • enable
  • disable
Включить/выключить ограничение.
method
-
Включить/выключить проверку HTTP-метода.
action
-
    Choices:
  • allow
  • block
Действие.
log
-
    Choices:
  • enable
  • disable
Включить/выключить логирование.
severity
-
    Choices:
  • high
  • medium
  • low
Уровень важности.
status
-
    Choices:
  • enable
  • disable
Включить/выключить ограничение.
param-length
-
Максимальная длина параметра в URL, запросе HTTP POST или теле HTTP-запроса.
action
-
    Choices:
  • allow
  • block
Действие.
length
-
Максимальная длина параметра в URL, запросе HTTP POST или теле HTTP-запроса в байтах (от 0 до 2147483647).
log
-
    Choices:
  • enable
  • disable
Включить/выключить логирование.
severity
-
    Choices:
  • high
  • medium
  • low
Уровень важности.
status
-
    Choices:
  • enable
  • disable
Включить/выключить ограничение.
url-param-length
-
Максимальная длина параметра в URL.
action
-
    Choices:
  • allow
  • block
Действие.
length
-
Максимальная длина URL-параметра в байтах (от 0 до 2147483647).
log
-
    Choices:
  • enable
  • disable
Включить/выключить логирование.
severity
-
    Choices:
  • high
  • medium
  • low
Уровень важности.
статус
-
    Варианты:
  • включить
  • выключить
Включить/выключить ограничение.
версия
-
Включить/выключить проверку версии HTTP.
действие
-
    Варианты:
  • разрешить
  • заблокировать
Действие.
лог
-
    Варианты:
  • включить
  • выключить
Включить/выключить ведение журнала.
степень_серьёзности
-
    Варианты:
  • высокая
  • средняя
  • низкая
Степень серьёзности.
статус
-
    Варианты:
  • включить
  • выключить
Включить/выключить ограничение.
расширенный_лог
-
    Варианты:
  • включить
  • выключить
Включить/выключить расширенное ведение журнала.
внешний
-
    Варианты:
  • выключить
  • включить
Отключить/Включить внешний HTTP-инспекцию.
метод
-
Ограничение метода.
по-умолчанию_разрешенные_методы
-
    Варианты:
  • get
  • post
  • put
  • head
  • connect
  • trace
  • options
  • delete
  • others
Методы.
лог
-
    Варианты:
  • включить
  • выключить
Включить/выключить ведение журнала.
политика_методов
-
Политика HTTP-методов.
адрес
-
Адрес хоста. Источник брандмауэр.address.name брандмауэр.addrgrp.name.
разрешенные_методы
-
    Варианты:
  • get
  • post
  • put
  • head
  • connect
  • trace
  • options
  • delete
  • others
Разрешенные методы.
id
- / обязательно
ID политики HTTP-методов.
шаблон
-
Шаблон URL.
regex
-
    Варианты:
  • включить
  • выключить
Включить/выключить сопоставление шаблона на основе регулярных выражений.
степень_серьёзности
-
    Варианты:
  • высокая
  • средняя
  • низкая
Степень серьёзности.
статус
-
    Варианты:
  • включить
  • выключить
Статус.
название
- / обязательно
Название профиля WAF.
подпись
-
Подписи WAF.
порог_обнаружения_кредитных_карт
-
Минимальное количество кредитных карт для обнаружения нарушения.
пользовательская_подпись
-
Пользовательская подпись.
действие
-
    Варианты:
  • разрешить
  • заблокировать
  • стереть
Действие.
чувствительность_к_регистру
-
    Варианты:
  • отключить
  • включить
Чувствительность к регистру в шаблоне.
направление
-
    Варианты:
  • запрос
  • ответ
Направление трафика.
лог
-
    Варианты:
  • включить
  • выключить
Включить/выключить ведение журнала.
название
- / обязательно
Название подписи.
шаблон
-
Шаблон сопоставления.
степень_серьёзности
-
    Варианты:
  • высокая
  • средняя
  • низкая
Степень серьёзности.
статус
-
    Варианты:
  • включить
  • выключить
Статус.
цель
-
    Варианты:
  • arg
  • имя_арг
  • тело_запр
  • куки_запр
  • имя_куки_запр
  • имя_файла_запр
  • заголовок_запр
  • имя_заголовка_запр
  • сырой_uri_запр
  • uri_запр
  • тело_отв
  • заголовок_отв
  • статус_отв
Сопоставление HTTP-цели.
отключенные_подписи
-
Отключенные подписи
id
- / обязательно
ID подписи. Источник waf.signature.id.
отключенные_подклассы
-
Отключенные подклассы подписей.
id
- / обязательно
Идентификатор подкласса подписи. Источник waf.sub-class.id.
main-class
-
Основной класс подписи.
action
-
    Варианты:
  • allow
  • block
  • erase
Действие.
id
- / обязательно
Идентификатор основного класса подписи. Источник waf.main-class.id.
log
-
    Варианты:
  • enable
  • disable
Включить/выключить ведение журнала.
severity
-
    Варианты:
  • high
  • medium
  • low
Уровень серьезности.
status
-
    Варианты:
  • enable
  • disable
Статус.
state
-
    Варианты:
  • present
  • absent
Указывает, нужно ли создать или удалить объект
url-access
-
Список доступа к URL.
access-pattern
-
Шаблон доступа к URL.
id
- / обязательно
Идентификатор шаблона доступа к URL.
negate
-
    Варианты:
  • enable
  • disable
Включить/выключить отрицание соответствия.
pattern
-
Шаблон URL.
regex
-
    Варианты:
  • enable
  • disable
Включить/выключить проверку шаблона на основе регулярных выражений.
srcaddr
-
Адрес источника. Source firewall.address.name firewall.addrgrp.name.
action
-
    Варианты:
  • bypass
  • permit
  • block
Действие.
address
-
Адрес хоста. Source firewall.address.name firewall.addrgrp.name.
id
- / обязательно
Идентификатор доступа к URL.
log
-
    Варианты:
  • enable
  • disable
Включить/выключить ведение журнала.
severity
-
    Варианты:
  • high
  • medium
  • low
Уровень серьезности.

Примечания

Примечание

  • Требуется библиотека fortiosapi, разработанная Fortinet
  • Выполнять как local_action в вашем плейбуке

Примеры

- hosts: localhost
  vars:
   host: "192.168.122.40"
   username: "admin"
   password: ""
   vdom: "root"
  tasks:
  - name: Web application firewall configuration.
    fortios_waf_profile:
      host:  "{{ host }}"
      username: "{{ username }}"
      password: "{{ password }}"
      vdom:  "{{ vdom }}"
      https: "False"
      waf_profile:
        state: "present"
        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: "15"
                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: "39"
                log: "enable"
                severity: "high"
                status: "enable"
            hostname:
                action: "allow"
                log: "enable"
                severity: "high"
                status: "enable"
            line-length:
                action: "allow"
                length: "50"
                log: "enable"
                severity: "high"
                status: "enable"
            malformed:
                action: "allow"
                log: "enable"
                severity: "high"
                status: "enable"
            max-cookie:
                action: "allow"
                log: "enable"
                max-cookie: "62"
                severity: "high"
                status: "enable"
            max-header-line:
                action: "allow"
                log: "enable"
                max-header-line: "68"
                severity: "high"
                status: "enable"
            max-range-segment:
                action: "allow"
                log: "enable"
                max-range-segment: "74"
                severity: "high"
                status: "enable"
            max-url-param:
                action: "allow"
                log: "enable"
                max-url-param: "80"
                severity: "high"
                status: "enable"
            method:
                action: "allow"
                log: "enable"
                severity: "high"
                status: "enable"
            param-length:
                action: "allow"
                length: "90"
                log: "enable"
                severity: "high"
                status: "enable"
            url-param-length:
                action: "allow"
                length: "96"
                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: "120"
            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
строка
всегда
Номер сборки образа fortigate

Пример:
1547
http_method
строка
всегда
Последний метод, используемый для подготовки содержимого в FortiGate

Пример:
PUT
http_status
строка
всегда
Последний результат, предоставленный FortiGate для последней операции

Пример:
200
mkey
строка
успех
Главный ключ (id), используемый в последнем вызове FortiGate

Пример:
id
name
строка
всегда
Имя таблицы, используемой для выполнения запроса

Пример:
urlfilter
path
строка
всегда
Путь таблицы, используемой для выполнения запроса

Пример:
webfilter
revision
строка
всегда
Внутренний номер ревизии

Пример:
17.0.2.10658
serial
строка
всегда
Серийный номер устройства

Пример:
FGVMEVYYQT3AB5352
status
строка
всегда
Указание результата операции

Пример:
успех
vdom
строка
всегда
Используемый виртуальный домен

Пример:
root
version
строка
всегда
Версия FortiGate

Пример:
v5.6.3


Статус

  • Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • Miguel Angel Munoz (@mamunozgonzalez)
  • Nicolas Thomas (@thomnico)

Подсказка

Если вы заметили какие-либо проблемы в данной документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/fortios_waf_profile_module.html

Spec-Zone.ru

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