Назад | Перейти на главную страницу

Проблемы SSL с puppetdb

Я настраиваю Puppetdb с SSL, и у меня проблемы с сертификатами.

Я использую Nginx в качестве SSL-прокси для Puppet, поэтому мой центр сертификации управляется сервером mongrel на этом прокси-сервере Nginx.

Если я сгенерирую сертификат для своего URI Puppetdb с помощью CA на машине Nginx, я смогу настроить Puppetdb с помощью puppetlabs-puppetdb модуль (поскольку агент Puppet использует CA прокси), но тогда Puppetmaster не может подключиться к нему, потому что у него есть собственный сертификат CA, который генерируется сам.

Если я сгенерирую сертификат для URI Puppetdb с помощью одного из Puppetmasters, я не смогу развернуть Puppetdb с помощью puppetlabs-puppetdb модуль, поскольку агент Puppet не использует тот же сертификат CA.

Что я мог сделать, чтобы все это примирить? Могу ли я полностью отключить SSL на моих мастерах марионеток (поскольку SSL управляется прокси-сервером Nginx) и заставить их использовать CA прокси для подключения к Puppetdb?

Я использовал неправильную настройку своих марионеточных мастеров, а именно позволял им создавать свой собственный центр сертификации в отдельном каталоге. Эта ссылка прояснил это. Я сейчас:

  • Используйте один и тот же каталог в режиме агента и мастера (в моем случае стандартный /var/lib/puppet/ssl каталог). Это гарантирует, что он использует один и тот же CA для обоих режимов;
  • Использовать ca=false на кукловода (раздел master) так что кукловод не будет жаловаться на использование другого CA, кроме его собственного;
  • Прекратить указывать certname= для мастеров марионеток и разрешите им использовать имя машины, как это сделано в режиме агента.