Skip to main content

Как обновить SSL-сертификаты Printum


title: Как обновить SSL-сертификаты Printum slug: ts-ssl-obnovlenie-sertifikatov tags: [ssl, сертификат, обновление, истёк срок, балансировщик] domain: Operations type: Runbook audience: partner-engineer product_versions: "4.x" status: ready related_components: [Мониторинг, ПринтМенеджер, Балансировщик] related_pages:

  • trebovaniya-k-ssl-sertifikatam
  • kak-obnovit-printum

Как обновить SSL-сертификаты Printum

Когда использовать

  • Истёк срок действия сертификатов.
  • Изменился hostname или IP-адрес сервера.
  • Требуется заменить сертификаты по требованиям ИБ.

Singlenode: обновление сертификатов М

sudo curl -L https://s3.printum.io/box/monitoring/install.sh | \
  sudo -E SSL_CERT=/path/cert.crt \
       SSL_KEY=/path/cert.key \
       SSL_CERT_CA=/path/ca.crt bash -s agent

Singlenode: обновление сертификатов ПринтМенеджер

sudo curl -L https://s3.printum.io/distrib/printum-printmanager/install.sh | \
  sudo -E SSL_CERT=/path/cert.crt \
       SSL_KEY=/path/cert.key \
       SSL_CERT_CA=/path/ca.crt bash

Балансировщик: обновление собственных сертификатов через скрипт

В файле config.ini обновить пути к новым сертификатам:

[General]
SSL_CERT_CA = /path/to/new/ca.crt

[Balancer]
SSL_CERT = /path/to/balancer/cert.crt
SSL_KEY  = /path/to/balancer/cert.key

[Monitoring]
SSL_CERT = /path/to/monitoring/cert.crt
SSL_KEY  = /path/to/monitoring/cert.key

[PrintManager_1]
SSL_CERT = /path/to/pm1/cert.crt
SSL_KEY  = /path/to/pm1/cert.key

# [PrintManager_2], [PrintManager_3] — аналогично

Запустить скрипт:

sudo ./install_all_offline.sh

Балансировщик: перевыпуск автоматических сертификатов

Выполнять на сервере балансировщика раз в год:

# Удалить все сертификаты
sudo rm -fr /opt/printum_balancer/certificates

# Выпустить новый корневой сертификат
sudo /opt/printum_balancer/scripts/generate_ca_cert.sh

# Перевыпустить сертификаты для всех серверов
cd /opt/printum_balancer/scripts
sudo ./regenerate_all_certs.sh \
  -balancer <BALANCER_ADR> \
  -pm <PM_1> \
  -pm <PM_2> \
  -pm <PM_3>

Где <BALANCER_ADR>, <PM_1>, <PM_2>, <PM_3> — те же адреса, что использовались при первоначальной установке.


Проверка после обновления

# Проверить срок действия нового сертификата М
openssl s_client -connect <адрес_М>:8001 </dev/null 2>/dev/null \
  | openssl x509 -noout -dates

# Проверить синхронизацию М–ПМ
cd /opt/printmanager
sudo docker-compose logs printmanager-celery-print-queue --tail=50 | grep -i ssl

Ошибок SSL нет. Синхронизация завершается успешно.


Когда эскалировать

  • Обновление сертификатов не устраняет SSL-ошибки.
  • Цепочка доверия не проходит проверку.
  • PKI управляется заказчиком.

Связанные страницы