Кукольный шпаргалка
Puppet - это инструмент управления конфигурацией, который помогает системным администраторам автоматизировать предоставление, настройку и управление серверной инфраструктурой. Обычно он работает в режиме мастер / агент, где главный сервер управляет конфигурацией нескольких узлов агента. Связь между мастером и агентами предоставляется и защищается с помощью проверенного клиента HTTPS, который требует действительной идентификации SSL-сертификатов. Хозяин Puppet действует как центр сертификации для управления этими сертификатами.
Это руководство по стилю шпаргалки предоставляет краткий справочник по использованию команды + puppet cert +
для управления этими сертификатами.
-
Как использовать это руководство: *
-
Это руководство в формате шпаргалки с отдельными фрагментами командной строки
-
Перейдите к любому разделу, который имеет отношение к задаче, которую вы пытаетесь выполнить.
Листинг сертификатов запросов
Когда серверы агентов Puppet подключаются к сети, если все настроено правильно, они отправляют запрос на подпись сертификата мастеру Puppet. Эти запросы можно просмотреть с помощью команды + puppet cert list
.
Список всех запросов, подписанных и неподписанных
Чтобы просмотреть все запросы на сертификаты, подписанные и неподписанные, используйте флаг + - all +
следующим образом:
sudo puppet cert list --all
Подписанным запросам предшествует плюс (+
), а неподписанным - нет. В приведенных ниже выходных данных + host2.example.com +
не был подписан, в то время как + host1 +
и + puppet +
имеют:
Output:+ "host1.example.com" (SHA256) 51:D8:7A:EB:40:66:74:FD:0A:03:5D:35:AA:4D:B3:FA:35:99:C2:A8:C9:01:83:34:F6:16:60:BB:46:1F:33:3F
"host2.example.com" (SHA256) 3C:A9:96:3A:8D:24:5F:25:DB:FF:67:B5:22:B1:46:D9:89:F1:75:EC:BA:F2:D6:87:70:0C:59:97:11:11:01:E3
+ "puppet.example.com" (SHA256) 12:32:47:18:D1:12:85:A6:EA:D4:51:9C:24:96:E2:8A:51:41:8D:EB:E8:7C:EB:47:94:B0:8B:16:16:51:6A:D1 (alt names: "DNS:puppet", "DNS:puppet.localdomain", "DNS:puppet.example.com")
Список неподписанных запросов
Прежде чем Puppet Server сможет взаимодействовать с узлом агента и контролировать его, он должен подписать сертификат этого конкретного узла агента. Чтобы просмотреть неподписанные запросы, используйте команду + puppet cert list
с сервера Puppet:
sudo puppet cert list
Это будет только список неподписанных запросов. Вывод будет выглядеть примерно так:
Output: "host2.example.com" (SHA256) 9D:49:DE:46:1C:0F:40:19:9B:55:FC:97:69:E9:2B:C4:93:D8:A6:3C:B8:AB:CB:DD:E6:F5:A0:9C:37:C8:66:A0
Отсутствие знака плюс (+
) означает, что эти сертификаты еще не подписаны. Если нет неподписанных запросов, вы вернетесь в командную строку без вывода.
Подписание запроса на сертификат
Подпишите конкретные запросы
Чтобы подписать один запрос сертификата, используйте команду + puppet cert sign +
, с одним или несколькими именами хостов, как показано в запросе сертификата.
puppet cert sign
Вывод, аналогичный приведенному ниже, показывает, что запрос сертификата был подписан:
Output:Notice: Signed certificate request for
Notice: Removing file Puppet::SSL::CertificateRequest at '/etc/puppetlabs/puppet/ssl/ca/requests/.pem'
Подпишите все запросы
Вы можете подписать все запросы, добавив флаг + - all +
:
sudo puppet cert sign --all
Отзыв сертификатов
В конце концов, вы можете удалить хост из Puppet или перестроить хост, а затем добавить его обратно. В этом случае вам необходимо отозвать сертификат хоста у мастера Puppet. Для этого используйте действие + clean +
:
Отозвать определенные сертификаты
Вы можете отозвать один или несколько конкретных сертификатов с помощью + puppet cert clean +
, указав одно или несколько имен хостов, которые появляются в сертификате:
sudo puppet cert clean
После отзыва сертификата вы должны restart Puppet master, чтобы отзыв вступил в силу.
sudo service puppetserver reload
В следующий раз, когда + puppet agent
будет запущен на узле агента, он отправит новый запрос на подпись сертификата мастеру Puppet, который может быть подписан с помощью` + puppet cert sign`. Вы можете вызвать запрос немедленно с помощью:
sudo puppet agent --test
Отозвать несколько сертификатов
Puppet не разрешает массовое удаление сертификатов с флагом + - all +
, но несколько сертификатов можно отозвать сразу, указав имена хостов, разделенные пробелом:
sudo puppet cert clean . . .
После отзыва сертификатов вы должны restart Puppet master, чтобы аннулирования вступили в силу.
sudo service puppetserver reload
Заключение
В этом руководстве рассматриваются некоторые общие команды для управления сертификатами Puppet в Puppet версии 4.x. Есть другие действия и флаги, которые можно использовать с + puppet cert +
. Полный список см. На странице `+puppet cert + `man.