Рейтинг:0

Как сгенерировать сертификаты для (вторичного) компиляции puppetserver?

флаг ng

Я пытаюсь масштабировать кукольный сервер, чтобы иметь избыточность, используя DNS с циклическим перебором. вторичный кукольный сервер (версия 7.4.0) настроен на использование центра сертификации основного кукольный сервер:

/etc/puppetlabs/puppet/puppet.conf:

[главный]
ca_name = Puppet CA: puppet-ca-master.company.com
ca_server = кукольный-ca-master.company.com
[агент]
сервер = кукольный-ca-master.company.com
интервал выполнения=1800

На вторичном сервере я отключил службу CA, так как в нем может быть только один центр сертификации. /etc/puppetlabs/puppetserver/services.d/ca.cfg:

# Чтобы включить службу CA, оставьте следующую строку без комментариев
# puppetlabs.services.ca.certificate-authority-service/certificate-authority-service
# Чтобы отключить службу CA, закомментируйте строку выше и раскомментируйте строку ниже
puppetlabs.services.ca.certificate-authority-disabled-service/certificate-authority-disabled-service
puppetlabs.trapperkeeper.services.watcher.filesystem-watch-service/filesystem-watch-service

Я удалил сертификаты из вторичного, чтобы получить сертификат, подписанный сертификатом, из мастера ЦС:

rm -rf /etc/puppetlabs/puppet/ssl && mkdir -p /etc/puppetlabs/puppet/ssl/certs
chmod 0700 /etc/puppetlabs/кукольный/ssl
chown -R кукольный /etc/puppetlabs/puppet/ssl

Однако кукольный сервер служба отказывается запускаться из-за отсутствия сертификата:

2021-09-30T09:06:18.220+02:00 ОШИБКА [async-dispatch-2] [ptinternal] Ошибка при запуске службы!!!
java.lang.IllegalArgumentException: невозможно открыть файл «ssl-cert»: /etc/puppetlabs/puppet/ssl/certs/secondary-puppetserver.company.com.pem

Когда я пытаюсь бежать марионеточный агент -t на вторичном кукольном сервере не удается подписать сертификат:

Не удалось получить сертификат с сервера ЦС; вам может понадобиться подписать сертификат этого агента (secondary-puppetserver.company.com)

Причем генерируется приватный ключ, а не публичный:

ll /etc/puppetlabs/puppet/ssl/public_keys/
всего 0
Рейтинг:0
флаг ng

С циклической конфигурацией DNS CA master /etc/puppetlabs/puppetserver/conf.d/ca.conf необходимо включить:

разрешить-субъектные-альтернативные-имена: правда

Рестарт кукольный сервер и создайте сертификаты для вторичного сервера на главном CA:

puppetserver ca generate --certname puppet-secondary.company.com --subject-alt-names=puppet-secondary.company.com,puppet.company.com

акты передачи:

rsync -a /etc/puppetlabs/puppet/ssl/private_keys/puppet-secondary.company.com.pem вторичный-puppet:/etc/puppetlabs/puppet/ssl/private_keys/
rsync -a /etc/puppetlabs/puppet/ssl/certs/puppet-secondary.company.com.pem вторичный-puppet:/etc/puppetlabs/puppet/ssl/certs/
rsync -a /etc/puppetlabs/puppet/ssl/public_keys/puppet-secondary.company.com.pem вторичный-puppet:/etc/puppetlabs/puppet/ssl/public_keys/

и ЦА

rsync -ra /etc/puppetlabs/puppetserver/ca/{ca_crl.pem,ca_crt.pem} вторичный-puppet:/etc/puppetlabs/puppetserver/ca/

На вторичном убедитесь, что служба CA отключена в /etc/puppetlabs/puppetserver/services.d/ca.cfg.

И убедитесь, что веб-сервер настроен на использование правильных сертификатов. /etc/puppetlabspuppetserver/conf.d/webserver.conf:

веб сервер: {
    доступ-log-config: /etc/puppetlabs/puppetserver/request-logging.xml
    клиент-аутентификация: хочу
    SSL-хост: 0.0.0.0
    ssl-порт: 8140
    SSL-сертификат: /etc/puppetlabs/puppet/ssl/certs/puppet-secondary.company.com.pem
    SSL-ключ: /etc/puppetlabs/puppet/ssl/private_keys/puppet-secondary.company.com.pem
    ssl-ca-cert: /etc/puppetlabs/puppetserver/ca/ca_crt.pem
    ssl-crl-путь: /etc/puppetlabs/puppetserver/ca/ca_crl.pem
}

Альтернативные имена DNS главного ЦС могут быть проверены. Все кукольные серверы должны включать одно и то же доменное имя и другое уникальное имя.

puppetserver список CA --все

искать альтернативные имена: ["DNS: ... . Когда сертификат создается с использованием марионеточный агент, альтернативные имена не включены.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.