Защита ключей SSL (для производственного веб-приложения) с помощью Puppet и Hiera

Я хотел бы знать, как лучше всего защитить ключи и сертификаты SSL для веб-приложений. Я использую шаблон ролей/профилей. Вот сценарий:

  • У меня есть веб-приложение. Существует модуль Puppet, который настраивает приложение. Этот модуль также устанавливает ключи и сертификаты SSL, необходимые для его работы. Эти файлы фиксируются в том же репозитории (что небезопасно) в каталоге app/files, а затем размещаются в нужных местах с использованием типа file.
  • Существует манифест профиля, который объединяет стек для этого приложения — установите и настройте apache, установите и настройте memcached, установите php и настройте приложение, используя указанный выше модуль.

Теперь ключи и сертификаты SSL проверяются в одном и том же репо, и это, вероятно, не лучший способ сделать это. Я рассматриваю возможность использования модуля hiera-eyaml, а затем помещаю зашифрованную версию этих сертификатов и ключей в файл hiera.

Мне просто интересно, так ли это у большинства людей? Или есть лучшие способы справиться с этим?


person vaidik    schedule 03.04.2015    source источник
comment
Я считаю, что альтернатива, которую вы набросали, действительно является обычной практикой. Ваши зашифрованные данные должны оставаться где-то, и Puppet потребуется средство для их расшифровки. Следовательно, это, вероятно, самый прямой подход.   -  person Felix Frank    schedule 07.04.2015


Ответы (1)


В настоящее время я использую hiera-eyaml в проектах. Мы используем шифрование PKCS, даем всем открытый ключ, чтобы они могли вносить изменения, а закрытый ключ существует только на мастере марионеток и в защищенной резервной копии. Он заработал только после того, как мы его настроили, все быстро привыкли использовать этот инструментарий для шифрования значений.

person Chris Pitman    schedule 08.04.2015
comment
Да, это звучит разумно. Меня беспокоило только то, что при шифровании SSL-сертификатов и ключей вы получаете очень большую зашифрованную строку. И когда у вас есть несколько сертификатов/ключей, помещенных в один файл eyaml, файл становится слишком большим для чтения. В этом нет ничего особенно плохого, но это просто не лучший способ сделать это. Есть мысли по этому поводу? - person vaidik; 09.04.2015
comment
У нас всего несколько ключей, так что это не было большой проблемой для нас. Я не уверен, насколько хорошо это будет работать, но можно разделить значения на несколько файлов на основе иерархии hiera. - person Chris Pitman; 09.04.2015
comment
Да ну это правда. Hiera просто продолжит спускаться вниз по иерархии, когда поиск вверх не удался. - person vaidik; 09.04.2015