Требования к SSL-сертификатам для Printum
title: Требования к SSL-сертификатам для Printum slug: trebovaniya-k-ssl-sertifikatam tags: [ssl, сертификат, tls, SAN, требования, установка] domain: Security type: Reference audience: partner-engineer product_versions: "4.x" status: ready related_components: [Мониторинг, ПринтМенеджер, Балансировщик] related_pages:
- kak-obnovit-printum
- ts-ssl-hostname-mismatch
- ts-ssl-self-signed-in-chain
- ts-ssl-unable-to-get-local-issuer
Требования к SSL-сертификатам для Printumбезопасности
Когда использовать
Перед выпуском собственных сертификатов для установки или обновления Printum.
Состав сертификатов
Для базовой (singlenode)сингл) схемы нужны три файла:
| Файл | Описание |
|---|---|
ca.crt |
Корневой сертификат (CA) |
server.crt |
Сертификат сервера |
server.key |
Закрытый ключ сертификата сервера |
Если используется промежуточный CA — он тоже должен быть передан отдельным файлом.
Для схемы с балансировщиком — отдельный сертификат и ключ для каждого сервера (HAProxy, Мониторинг, каждый ПринтМенеджер, сервер БД+NFS).
Привязка сертификата
- Установка по системы IP: сертификат выпускается на IP-адрес сервера.
- Установка по
hostname:системы FQDN: сертификат выпускается наhostnameFQDN (FQDN)доменному имени).
НельзяДолжно смешивать:соблюдаться соответствие между адресом сервера и адресом в выпускаемом сертификате: если система установлена по hostname,FQDN, а сертификат выпущен на IP или наоборот — будетвозникнет ошибка Hostname mismatch.
Обязательные атрибуты
SSL-сертификат сервера:
- X509v3 Extended Key Usage:
TLS Web Server Authentication,TLS Web Client Authentication - X509v3 Subject Alternative Name (SAN) — обязателен. Должен содержать все адреса сервера:
DNS:server1.example.com
DNS:server1
IP:10.0.0.1
Без SAN будет ошибка unable to get local issuer certificate.
Корневой сертификат (CA):
- X509v3 Key Usage:
Digital Signature,Certificate Sign
Формат
- Данные в сертификатах — в незашифрованном текстовом виде, кодировка UTF-8.
- Поддерживаемые расширения:
.cer,.crt,.pem(для сертификатов),.key(для ключа). - Корневой сертификат — отдельный файл. Нельзя включать его содержимое в
server.crt.
Типовые ошибки и их причины
| Ошибка в логах | Причина |
|---|---|
Hostname mismatch |
Адрес сервера не совпадает с CN или SAN сертификата |
self signed certificate in certificate chain |
Содержимое CA включено в server.crt |
unable to get local issuer certificate |
Отсутствует поле SAN в сертификате |
Подробнее — в соответствующих troubleshooting-статьях (ссылки ниже).
Схема с балансировщиком HAProxy
Сертификат и ключ к нему должны быть предоставлены отдельно для каждого сервера. Корневой сертификат остаётся общим.
Пример комплекта сертификатов для развёртывания HAProxyсистемы св серверами:конфигурации балансировщика:
| Сервер | Роль |
|---|---|
| Сервер HAProxy | Балансировщик |
| Сервер 1 | Мониторинг |
| Сервер 2 | ПринтМенеджер №1 |
| Сервер 3 | ПринтМенеджер №2 |
| Сервер 4 | ПринтМенеджер №3 |
| Сервер 5 | База данных ПринтМенеджеров и NFS-хранилище |
Необходимые файлы:
- Корневой сертификат (
.cer/.crt/.pem) — один общий для всех серверов. - Сертификат сервера и ключ — для каждого из 6 серверов отдельно.
Примечание: Для филиальных ПринтМенеджеров
— обязательнотребуются собственныесертификаты.сертификаты с общим корневым сертификатом.
Альтернатива: автоматические сертификаты
ЕслиМониторинг собственныеи сертификатыПМ недоступны или не нужны —позволяют использовать автоматические.самоподписанные Системасертификаты, генерируетавтоматически ихгенерируемые при установке без дополнительных параметров. ПодходятСамоподписанные сертификаты подходят для большинстваработы сценариев,системы в конфигурации сингл, где Мониторинг и ПМ устанавливаются на один сервер.
При использовании самоподписанных сертификатов веб-браузеры будут показывать предупреждение,предупреждение ноо функциональностьнедоверии нена страдает.входе в ЛК и панели администратора.