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-адрес сервера.
    • Требуется заменить сертификаты по требованиям ИБ.

    Основные приципы

    Обновление сертификатов системы производится путём запуска обновления Мониторинга и ПринтМенеджера. При обновлении требуется указать переменные, содержащие ссылки на локальные файлы сертификатов:

      SSL_CERT - переменная для хранения пути ssl-сертификата сервера. SSL_KEY - переменная для хранения пути ключа к ssl-сертификату. SSL_CERT_CA - переменная для хранения пути корневового сертификата.

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

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

      Офлайн метод:

      tar xvf printum-x.x.x.tar.gz
      cd printum-x.x.x
      sudo -E SSL_CERT=/path/cert.crt \
             SSL_KEY=/path/cert.key \
             SSL_CERT_CA=/path/ca.crt ./install.sh 
      

      Онлайн метод:

      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: обновление сертификатов ПринтМенеджер

      Офлайн метод:

      tar xvf printmanager-x.x.x.tar.gz
      cd printmanager-x.x.x
      sudo -E SSL_CERT=/path/cert.crt \
             SSL_KEY=/path/cert.key \
             SSL_CERT_CA=/path/ca.crt ./install.sh 
      

      Онлайн метод:

      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 управляется заказчиком.

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