Я создаю скрипт формирования облака, который будет иметь ELB. В конфигурации запуска Auto Scaling я хочу добавить зашифрованный том EBS. Не удалось найти зашифрованное свойство с помощью blockdevicemapping. Мне нужно зашифровать том. Как подключить зашифрованный том EBS к инстансу EC2 с помощью конфигурации запуска с автоматическим масштабированием?
AWS Auto Scaling Launch Configuration Пример формирования зашифрованного облака EBS
Ответы (4)
По какой-то странной причине такого свойства нет при использовании конфигураций запуска, однако оно есть при использовании сопоставлений блочных устройств с простыми инстансами EC2. См. launchconfig-blockdev против ec2-blockdev
Таким образом, вам придется либо использовать простые экземпляры вместо групп автомасштабирования, либо вы можете попробовать этот обходной путь:
Идентификаторы SnapshotId также принимаются для разработки блоков launchconf и, как указано в здесь "Моментальные снимки, сделанные из зашифрованных томов, автоматически шифруются. Тома, созданные из зашифрованных моментальных снимков, также автоматически шифруются".
Создайте снимок из зашифрованного пустого тома EBS и используйте его в шаблоне CloudFormation. Если ваш шаблон должен работать в нескольких регионах, вам, конечно, придется создать моментальный снимок в каждом регионе и использовать сопоставление в шаблоне.
Как говорит Мартон, такого свойства нет (к сожалению, CloudFormation часто требуется время, чтобы догнать основные API).
Обычно у каждого зашифрованного тома, который вы создаете, будет свой ключ. Однако при использовании упомянутого обходного пути (использование зашифрованного моментального снимка) результирующие зашифрованные тома наследуют ключ шифрования от моментального снимка и все будут одинаковыми.
С точки зрения криптографии это плохая идея, поскольку у вас может быть несколько разных томов и моментальных снимков с одним и тем же ключом. Если у злоумышленника есть доступ ко всему этому, он потенциально может использовать различия для более легкого вывода информации о ключе.
В качестве альтернативы можно написать сценарий, который создает и подключает новый зашифрованный том во время загрузки экземпляра. Это довольно легко сделать. Вам потребуется предоставить экземпляру разрешения на создание и присоединение томов, а также установить инструмент командной строки AWS или библиотеку для предпочитаемого вами языка сценариев. Тот, который у вас есть, вы можете из загружаемого экземпляра создать том и присоединить его.
Вы можете найти отправную точку для такого скрипта здесь: https://github.com/guardian/machine-images/blob/master/packer/resources/features/ebs/add-encrypted.sh
Существует тип блочного устройства AutoScaling EBS с параметром «Зашифровано»:
Надеюсь это поможет!
AWS недавно анонсировала шифрование по умолчанию для новых томов EBS. Вы можете включить это для каждого региона через
EC2 Console > Settings > Always encrypt new EBS volumes
https://aws.amazon.com/blogs/aws/new-opt-in-to-default-encryption-for-new-ebs-volumes/