Модуль amazon.aws.ec2_security_group — управление группой безопасности EC2
Примечание
Этот модуль входит в коллекцию amazon.aws (версия 11.3.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install amazon.aws. Для работы с этим модулем требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: amazon.aws.ec2_security_group.
Добавлен в amazon.aws 1.0.0
Краткое описание
- Управляет группами безопасности EC2.
Псевдонимы: ec2_group
Требования
Перечисленные ниже компоненты должны быть установлены на хосте, на котором выполняется этот модуль.
- python >= 3.6
- boto3 >= 1.35.0
- botocore >= 1.35.0
Параметры
Параметр | Комментарии |
|---|---|
access_key aliases: aws_access_key_id, aws_access_key string | Идентификатор ключа доступа AWS. Дополнительную информацию о токенах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также можно использовать переменные среды Параметры aws_access_key и profile являются взаимоисключающими. Псевдоним aws_access_key_id добавлен в выпуске 5.1.0 для соответствия AWS SDK botocore. |
aws_ca_bundle path | Путь к пакету сертификатов CA, используемому для проверки SSL-сертификатов. Также можно использовать переменную среды |
aws_config dictionary | Словарь для изменения конфигурации botocore. Параметры описаны в документации AWS https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. |
debug_botocore_endpoint_logs boolean | Используйте регистратор Также можно использовать переменную среды Варианты:
|
description string | Описание группы безопасности. Обязательно, если |
endpoint_url aliases: aws_endpoint_url string | URL для подключения вместо конечных точек AWS по умолчанию. Этот параметр можно использовать для подключения к другим совместимым с AWS сервисам, однако коллекции amazon.aws и community.aws тестируются только с AWS. Также можно использовать переменную среды |
group_id string | |
name string | Имя группы безопасности. Необходимо указать один и только один из параметров Обязательно, если |
profile aliases: aws_profile string | Именованный профиль AWS для аутентификации. Дополнительную информацию об именованных профилях см. в документации AWS https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html. Также можно использовать переменную среды Параметр profile является взаимоисключающим с параметрами aws_access_key, aws_secret_key и session_token. |
purge_rules boolean | Удалять существующие правила группы безопасности, отсутствующие в rules. Варианты:
|
purge_rules_egress aliases: purge_egress_rules boolean | Удалять существующие правила rules_egress группы безопасности, отсутствующие в rules_egress. Варианты:
|
purge_tags boolean | Если задано Если параметр Ключи тегов, начинающиеся с Варианты:
|
region aliases: aws_region string | Используемый регион AWS. Для глобальных сервисов, таких как IAM, Route53 и CloudFront, параметр region игнорируется. Также можно использовать переменную среды Дополнительную информацию см. в документации Amazon AWS http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region. |
rules list / elements=dictionary | Список входящих правил брандмауэра, которые необходимо применить к этой группе (см. пример). Если список не указан, входящие правила не будут включены. Список правил может содержать собственное имя в |
|
cidr_ip list / elements=string |
Диапазон IPv4 CIDR, из которого поступает трафик. Можно указать только один из параметров |
|
cidr_ipv6 list / elements=string |
Диапазон IPv6 CIDR, из которого поступает трафик. Можно указать только один из параметров |
|
from_port integer |
Начало диапазона портов, на которые направлен трафик. Значение может находиться в диапазоне от Если Взаимоисключающий параметр для |
|
group_desc string |
Если задан |
|
group_id list / elements=string |
Идентификатор группы безопасности, из которой поступает трафик. Можно указать только один из параметров |
|
group_name list / elements=string |
Имя группы безопасности, из которой поступает трафик. Если группа безопасности не существует, будет создана новая группа безопасности с описанием
Можно указать только один из параметров |
|
icmp_code integer добавлено в amazon.aws 3.3.0 |
Код ICMP-пакета. Значение Требуется Взаимоисключающий параметр для |
|
icmp_type integer добавлено в amazon.aws 3.3.0 |
Тип ICMP-пакета. Значение Требуется Взаимоисключающий параметр для |
|
ip_prefix list / elements=string |
Префикс IP https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-prefix-lists.html, из которого поступает трафик. Можно указать только один из параметров |
|
ports list / elements=string |
Список портов, на которые направлен трафик. Элементами списка могут быть отдельные порты (например, Взаимоисключающий параметр для |
|
proto string |
Имя протокола IP ( По умолчанию: |
|
rule_desc string |
Описание правила. |
|
to_port integer |
Конец диапазона портов, на которые направлен трафик. Значение может находиться в диапазоне от Если Взаимоисключающий параметр для |
rules_egress aliases: egress_rules list / elements=dictionary | Список исходящих правил брандмауэра, которые необходимо применить к этой группе (см. пример). Если список не указан, предполагается стандартное правило, разрешающее весь исходящий трафик. Если указан пустой список, исходящие правила не будут включены. |
|
cidr_ip list / elements=string |
Диапазон IPv4 CIDR, в который направляется трафик. Можно указать только один из параметров |
|
cidr_ipv6 list / elements=string |
Диапазон IPv6 CIDR, в который направляется трафик. Можно указать только один из параметров |
|
from_port integer |
Начало диапазона портов, на которые направлен трафик. Значение может находиться в диапазоне от Если Взаимоисключающий параметр для |
|
group_desc string |
Если задан |
|
group_id list / elements=string |
Идентификатор группы безопасности, в которую направляется трафик. Можно указать только один из параметров |
|
group_name list / elements=string |
Имя группы безопасности, в которую направляется трафик. Если группа безопасности не существует, будет создана новая группа безопасности с описанием Можно указать только один из параметров |
|
icmp_code integer добавлено в amazon.aws 3.3.0 |
Код ICMP-пакета. Значение Требуется Взаимоисключающий параметр для |
|
icmp_type integer добавлено в amazon.aws 3.3.0 |
Тип ICMP-пакета. Значение CV(-1) означает все типы ICMP. Требуется Взаимоисключающий параметр для |
|
ip_prefix list / elements=string |
Префикс IP https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-prefix-lists.html, в который направляется трафик. Можно указать только один из параметров |
|
ports list / elements=string |
Список портов, на которые направлен трафик. Элементами списка могут быть отдельные порты (например, Взаимоисключающий параметр для |
|
proto string |
Имя протокола IP ( По умолчанию: |
|
rule_desc string |
Описание правила. |
|
to_port integer |
Конец диапазона портов, на которые направлен трафик. Значение может находиться в диапазоне от Если Взаимоисключающий параметр для |
secret_key псевдонимы: aws_secret_access_key, aws_secret_key string | Секретный ключ доступа AWS. Дополнительные сведения о токенах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также можно использовать переменные среды Параметры secret_key и profile взаимоисключающие. Псевдоним aws_secret_access_key добавлен в выпуске 5.1.0 для согласованности с AWS botocore SDK. |
session_token псевдонимы: aws_session_token string | Токен сеанса AWS STS для временных учетных данных. Дополнительные сведения о токенах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также можно использовать переменную среды Параметры session_token и profile взаимоисключающие. |
state string | Создать или удалить группу безопасности. Варианты:
|
tags псевдонимы: resource_tags dictionary | Словарь, содержащий теги, которые будут применены к ресурсу. Если параметр |
validate_certs boolean | Если задано значение Настоятельно не рекомендуется задавать validate_certs=false; вместо этого рассмотрите возможность задать aws_ca_bundle. Варианты:
|
vpc_id string | Идентификатор VPC, в которой нужно создать группу. |
Примечания
Примечание
- Если правило содержит group_name, а такая группа не существует, она будет создана автоматически. В этом случае также следует указать group_desc. Модуль откажется создавать группу, от которой зависит правило, если для нее не задано описание.
- До выпуска 5.0.0 этот модуль назывался amazon.aws.ec2_group_info. Использование не изменилось.
- Внимание: Для модулей переменные среды и файлы конфигурации считываются из контекста «хоста» Ansible, а не из контекста «контроллера». Поэтому файлы может потребоваться явно скопировать на «хост». Для плагинов поиска и подключения переменные среды и файлы конфигурации считываются из контекста «контроллера» Ansible, а не из контекста «хоста».
- Используемый Ansible AWS SDK (boto3) также может считывать значения по умолчанию для учетных данных и других параметров, например региона, из файлов конфигурации в контексте «хоста» Ansible (обычно
~/.aws/credentials). Дополнительные сведения см. по адресу https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
- name: example using security group rule descriptions
amazon.aws.ec2_security_group:
name: "{{ name }}"
description: sg with rule descriptions
vpc_id: vpc-xxxxxxxx
rules:
- proto: tcp
ports:
- 80
cidr_ip: 0.0.0.0/0
rule_desc: allow all on port 80
- name: example using ICMP types and codes
amazon.aws.ec2_security_group:
name: "{{ name }}"
description: sg for ICMP
vpc_id: vpc-xxxxxxxx
rules:
- proto: icmp
icmp_type: 3
icmp_code: 1
cidr_ip: 0.0.0.0/0
- name: example ec2 group
amazon.aws.ec2_security_group:
name: example
description: an example EC2 group
vpc_id: 12345
rules:
- proto: tcp
from_port: 80
to_port: 80
cidr_ip: 0.0.0.0/0
- proto: tcp
from_port: 22
to_port: 22
cidr_ip: 10.0.0.0/8
- proto: tcp
from_port: 443
to_port: 443
# this should only be needed for EC2 Classic security group rules
# because in a VPC an ELB will use a user-account security group
group_id: amazon-elb/sg-87654321/amazon-elb-sg
- proto: tcp
from_port: 3306
to_port: 3306
group_id: 123456789012/sg-87654321/exact-name-of-sg
- proto: udp
from_port: 10050
to_port: 10050
cidr_ip: 10.0.0.0/8
- proto: udp
from_port: 10051
to_port: 10051
group_id: sg-12345678
- proto: icmp
from_port: 8 # icmp type, -1 = any type
to_port: -1 # icmp subtype, -1 = any subtype
cidr_ip: 10.0.0.0/8
- proto: all
# the containing group name may be specified here
group_name: example
- proto: all
# in the 'proto' attribute, if you specify -1 (only supported when I(proto=icmp)), all, or a protocol number
# other than tcp, udp, icmp, or 58 (ICMPv6), traffic on all ports is allowed, regardless of any ports that
# you specify.
from_port: 10050 # this value is ignored
to_port: 10050 # this value is ignored
cidr_ip: 10.0.0.0/8
rules_egress:
- proto: tcp
from_port: 80
to_port: 80
cidr_ip: 0.0.0.0/0
cidr_ipv6: 64:ff9b::/96
group_name: example-other
# description to use if example-other needs to be created
group_desc: other example EC2 group
- name: example2 ec2 group
amazon.aws.ec2_security_group:
name: example2
description: an example2 EC2 group
vpc_id: 12345
rules:
# 'ports' rule keyword was introduced in version 2.4. It accepts a single
# port value or a list of values including ranges (from_port-to_port).
- proto: tcp
ports: 22
group_name: example-vpn
- proto: tcp
ports:
- 80
- 443
- 8080-8099
cidr_ip: 0.0.0.0/0
# Rule sources list support was added in version 2.4. This allows to
# define multiple sources per source type as well as multiple source types per rule.
- proto: tcp
ports:
- 6379
- 26379
group_name:
- example-vpn
- example-redis
- proto: tcp
ports: 5665
group_name: example-vpn
cidr_ip:
- 172.16.1.0/24
- 172.16.17.0/24
cidr_ipv6:
- 2607:F8B0::/32
- 64:ff9b::/96
group_id:
- sg-edcd9784
diff: true
- name: "Delete group by its id"
amazon.aws.ec2_security_group:
group_id: sg-33b4ee5b
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь; далее перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
description string | Описание группы безопасности. Возвращается: при создании/обновлении Пример: |
group_id string | Идентификатор группы безопасности. Возвращается: при создании/обновлении Пример: |
group_name string | Имя группы безопасности. Возвращается: при создании/обновлении Пример: |
ip_permissions list / elements=dictionary | Входящие правила, связанные с группой безопасности. Возвращается: всегда |
|
from_port integer |
Если используется протокол TCP или UDP, это начало диапазона портов. Возвращается: при успешном выполнении Пример: |
|
ip_protocol string |
Имя или номер IP-протокола. Возвращается: всегда |
|
ip_ranges list / elements=dictionary |
Диапазоны IPv4. Возвращается: всегда |
|
cidr_ip string |
Диапазон IPv4 в формате CIDR. Возвращается: всегда |
|
ipv6_ranges list / elements=dictionary |
Диапазоны IPv6. Возвращается: всегда |
|
cidr_ipv6 string |
Диапазон IPv6 в формате CIDR. Возвращается: всегда |
|
prefix_list_ids list / elements=dictionary |
Идентификаторы списков префиксов. Возвращается: всегда |
|
prefix_list_id string |
Идентификатор префикса. Возвращается: всегда |
|
to_group integer |
Если используется протокол TCP или UDP, это конец диапазона портов. Возвращается: при успешном выполнении Пример: |
|
user_id_group_pairs list / elements=dictionary |
Пары идентификаторов группы безопасности и учетной записи AWS. Возвращается: всегда |
|
group_id string |
Идентификатор группы безопасности в паре. Возвращается: всегда |
|
user_id string |
Идентификатор пользователя в паре. Возвращается: всегда |
ip_permissions_egress list / elements=dictionary | Исходящие правила, связанные с группой безопасности. Возвращается: всегда |
|
ip_protocol string |
Имя или номер IP-протокола. Возвращается: всегда |
|
ip_ranges list / elements=dictionary |
Диапазоны IPv4. Возвращается: всегда |
|
cidr_ip string |
Диапазон IPv4 в формате CIDR. Возвращается: всегда |
|
ipv6_ranges list / elements=dictionary |
Диапазоны IPv6. Возвращается: всегда |
|
cidr_ipv6 string |
Диапазон IPv6 в формате CIDR. Возвращается: всегда |
|
prefix_list_ids list / elements=dictionary |
Идентификаторы списков префиксов. Возвращается: всегда |
|
prefix_list_id string |
Идентификатор префикса. Возвращается: всегда |
|
user_id_group_pairs list / elements=dictionary |
Пары идентификаторов группы безопасности и учетной записи AWS. Возвращается: всегда |
|
group_id string |
Идентификатор группы безопасности в паре. Возвращается: всегда |
|
user_id string |
Идентификатор пользователя в паре. Возвращается: всегда |
owner_id integer | Идентификатор учетной записи AWS, которой принадлежит группа безопасности. Возвращается: при создании/обновлении Пример: |
tags dictionary | Теги, связанные с группой безопасности. Возвращается: при создании/обновлении Пример: |
vpc_id string | Идентификатор VPC, которой принадлежит группа безопасности. Возвращается: при создании/обновлении Пример: |
Ссылки на коллекцию
© 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/amazon/aws/ec2_security_group_module.html