Как загружать капли с помощью Terraform?

При создании капель в Digital Ocean с помощью Terraform пароли созданных машин пересылаются по почте. Если я получу документацию по поставщику Digital Ocean, , вы также можете указать SSH-идентификаторы используемых ключей.

Если я загружаю центр обработки данных с помощью Terraform, какой вариант мне выбрать?

Почему-то кажется неправильным иметь разные пароли для каждой машины (каким-то образом использование паролей как таковых кажется неправильным), но также кажется неправильным, если каждая машина связана с ключом SSH моего пользователя.

Как ты это делаешь? Есть ли здесь способ, который можно считать хорошей (лучшей?) Практикой? Должен ли я создать пару ключей SSH только для этого и зафиксировать ее вместе с файлами Terraform в Git? …?


person Golo Roden    schedule 20.07.2016    source источник


Ответы (1)


Как вы упомянули, использование паролей в экземплярах является абсолютной проблемой, если у вас их заметное количество. Он также менее безопасен, чем ключи SSH, которыми правильно управляют (хранятся в секрете). Очевидно, у вас возникнут проблемы с привязкой остальной части вашей автоматизации к некоторым учетным данным, которые доставляются по внешнему каналу к вашим инструментам автоматизации, поэтому, если вам действительно нужно настроить эти серверы для выполнения каких-либо действий, то вариант пароля по электронной почте в значительной степени отсутствует.

Я обычно использую разные ключи SSH для каждого приложения и этапа разработки (например, разработка, тестирование / постановка, производство), но тогда все внутри этой комбинации получает один и тот же открытый ключ для простоты управления. Такое разделение означает, что если у вас скомпрометирован один ключ, вам не нужно везде заменять открытый ключ, и, таким образом, минимизирует радиус взрыва этого события. Это также означает, что вы можете вращать их независимо, тем более что некоторые среды могут двигаться быстрее, чем другие.

В качестве последнего слова предупреждения не помещайте свой закрытый SSH-ключ в тот же репозиторий git, что и остальной код, и определенно не публикуйте закрытый SSH-ключ в общедоступном репозитории. Вы, вероятно, захотите изучить некоторые способы управления секретами, такие как Vault Hashicorp, если вы работаете в большой команде или, по крайней мере, распространение этих общих закрытых ключей по внешнему каналу, если они должны использоваться несколькими людьми.

person ydaetskcoR    schedule 21.07.2016