ngine_io.cloudstack.cs_firewall – Управляет правилами брандмауэра в облаках на основе Apache CloudStack.
Примечание
Этот плагин является частью коллекции ngine_io.cloudstack (версия 2.0.0).
Для его установки используйте: ansible-galaxy collection install ngine_io.cloudstack
Для использования в книге задач укажите: ngine_io.cloudstack.cs_firewall
Новое в версии 0.1.0: из ngine_io.cloudstack
Обзор
- Создает и удаляет правила брандмауэра.
Требования
Ниже перечислены требования, необходимые на хосте, на котором будет выполняться этот модуль.
- python >= 2.6
- cs >= 0.9.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account строка | Аккаунт, к которому относится правило брандмауэра. | |
| api_http_method строка |
| Метод HTTP, используемый для запроса к API-точке. Если не указан, используется переменная окружения CLOUDSTACK_METHOD. |
| api_key строка / обязательно | Ключ API для API CloudStack. Если не указан, используется переменная окружения CLOUDSTACK_KEY. | |
| api_secret строка / обязательно | Секретный ключ API CloudStack. Если не задан, используется переменная окружения CLOUDSTACK_SECRET. | |
| api_timeout целое число | По умолчанию: 10 | Таймаут HTTP в секундах. Если не задан, используется переменная окружения CLOUDSTACK_TIMEOUT. |
| api_url строка / обязательно | URL API CloudStack, например https://cloud.example.com/client/api. Если не указан, используется переменная окружения CLOUDSTACK_ENDPOINT. | |
| api_verify_ssl_cert строка | Проверка сертификата CA. Если не задан, используется переменная окружения CLOUDSTACK_VERIFY. | |
| cidrs список / элементы=строка | По умолчанию: "0.0.0.0/0" | Список CIDR (полная запись) для использования в правиле брандмауэра. С версии 2.5, это список CIDR. псевдонимы: cidr |
| domain строка | Домен, к которому относится правило брандмауэра. | |
| end_port целое число | Конечный порт для данного правила. Учитывается, если protocol=tcp или protocol=udp. Если не указан, равен start_port. | |
| icmp_code целое число | Код ошибки для данного сообщения ICMP. Учитывается, если protocol=icmp. | |
| icmp_type целое число | Тип ICMP сообщения. Учитывается, если protocol=icmp. | |
| ip_address строка | Общедоступный IP-адрес, назначенный правилу входящего трафика. Требуется, если type=ingress. | |
| network строка | Сеть, к которой относится правило исходящего трафика. Требуется, если type=egress. | |
| poll_async булево |
| Ожидать завершения асинхронных задач. |
| project строка | Название проекта, к которому относится правило брандмауэра. | |
| protocol строка |
| Протокол правила брандмауэра. all доступно только при type=egress. |
| start_port целое число | Начальный порт для данного правила. Учитывается, если protocol=tcp или protocol=udp. псевдонимы: port | |
| state строка |
| Состояние правила брандмауэра. |
| tags список / элементы=словарь | Список тегов. Теги — список словарей с ключами key и value. Для удаления всех тегов, установите пустой список, например, tags: []. псевдонимы: tag | |
| type строка |
| Тип правила брандмауэра. |
| zone строка / обязательно | Имя зоны, в которой находится виртуальная машина. |
Примечания
Примечание
- Подробное руководство по модулям cloudstack можно найти в Руководстве по облаку CloudStack.
- Этот модуль поддерживает режим проверки.
Примеры
- name: Allow inbound port 80/tcp from 1.2.3.4 to 4.3.2.1
ngine_io.cloudstack.cs_firewall:
ip_address: 4.3.2.1
zone: zone01
port: 80
cidr: 1.2.3.4/32
- name: Allow inbound tcp/udp port 53 to 4.3.2.1
ngine_io.cloudstack.cs_firewall:
ip_address: 4.3.2.1
zone: zone01
port: 53
protocol: '{{ item }}'
with_items:
- tcp
- udp
- name: Ensure firewall rule is removed
ngine_io.cloudstack.cs_firewall:
ip_address: 4.3.2.1
zone: zone01
start_port: 8000
end_port: 8888
cidr: 17.0.0.0/8
state: absent
- name: Allow all outbound traffic
ngine_io.cloudstack.cs_firewall:
network: my_network
zone: zone01
type: egress
protocol: all
- name: Allow only HTTP outbound traffic for an IP
ngine_io.cloudstack.cs_firewall:
network: my_network
zone: zone01
type: egress
port: 80
cidr: 10.101.1.20
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| cidr строка | успех | Строка CIDR правила. Пример: 0.0.0.0/0 |
| cidrs список / элементы=строка | успех | Список CIDR правила. Пример: ['0.0.0.0/0'] |
| end_port целое число | успех | Конечный порт правила. Пример: 80 |
| icmp_code целое число | успех | Код ICMP правила. Пример: 1 |
| icmp_type целое число | успех | Тип ICMP правила. Пример: 1 |
| id строка | успех | UUID правила. Пример: 04589590-ac63-4ffc-93f5-b698b8ac38b6 |
| ip_address строка | успех | IP-адрес правила, если type=ingress.
Пример: 10.100.212.10 |
| network строка | успех | Имя сети, если type=egress.
Пример: my_network |
| protocol строка | успех | Протокол правила. Пример: tcp |
| start_port целое число | успех | Начальный порт правила. Пример: 80 |
| type строка | успех | Тип правила. Пример: ingress |
Авторы
- René Moser (@resmo)
© 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/ngine_io/cloudstack/cs_firewall_module.html