<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Генерация сертификатов on xFP</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/</link><description>Recent content in Генерация сертификатов on xFP</description><generator>Hugo</generator><language>ru-RU</language><atom:link href="https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/index.xml" rel="self" type="application/rss+xml"/><item><title>Скрипт генерации</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/script_generation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/script_generation/</guid><description>&lt;div class="paragraph"&gt;
&lt;p&gt;Для генерации TLS-сертификатов, необходимых для работы компонентов Системы, предназначен скрипт [certs.sh](&lt;a class="bare" href="https://gitlab.ngrsoftlab.ru/multicheck-platform/mp-back/platform-services/-/blob/dev/distribution/tls/cert.sh?ref_type=heads"&gt;https://gitlab.ngrsoftlab.ru/multicheck-platform/mp-back/platform-services/-/blob/dev/distribution/tls/cert.sh?ref_type=heads&lt;/a&gt;)&lt;/p&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Указанный скрипт:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="ulist"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;создает центр сертификации (CA);&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;выпускает подписанные сертификаты для каждого, нуждающегося в этом, компонента;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;находится в директории: ${MPPATH}/bin/certs/tls/certs.sh&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;запускается в процессе установки Системы, но его можно использовать отдельно:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="listingblock"&gt;
&lt;div class="content"&gt;
&lt;pre class="highlight"&gt;&lt;code class="language-text" data-lang="text"&gt;certs.sh {gen|reset|reset-all|cluster} &amp;lt;FQDN&amp;gt; &amp;lt;OS&amp;gt;

FQDN - полное доменное имя, которое будет добавлено в CN. Необходимо для локального docker-registry.

OS - Поддерживаются значения Ubuntu|Astra|Alt|RedOS. Чувствительно к регистру.
certs.sh gen multicheck.ngrsoftlab.ru Astra # Выпустит сертификаты на основе имеющихся корневых. Если их нет - создаст и их. Поместит корневые и подписанные сертификаты в /usr/local/share/ca-certificates/

certs.sh gen multicheck.ngrsoftlab.ru Alt   # Выпустит сертификаты на основе имеющихся корневых. Если их нет - создаст и их. Поместит корневые и подписанные сертификаты в /etc/pki/ca-trust/source/anchors/

certs.sh reset multicheck.ngrsoftlab.ru Astra # Удалит все сертификаты и ключи, кроме CA.

certs.sh reset-all multicheck.ngrsoftlab.ru Astra # Удалит все сертификаты и ключи, без исключений.

certs.sh cluster multicheck.ngrsoftlab.ru Astra # Добавит все имеющиеся сертификаты в доверенные (в системное хранилище). Без генерации.&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;</description></item><item><title>Использование промежуточного CA сертификата</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/ca_client_certificate/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/ca_client_certificate/</guid><description>&lt;div class="paragraph"&gt;
&lt;p&gt;По умолчанию скрипт генерирует самоподписанный CA сертификат и использует его для подписи всех остальных сертификатов компонентов.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Для использования собственного промежуточного CA сертификата заказчика необходимо:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="olist arabic"&gt;
&lt;ol class="arabic"&gt;
&lt;li&gt;
&lt;p&gt;Поместить CA сертификат и приватный ключ в директорию &lt;code&gt;${MPPATH}/bin/certs/multicheck/&lt;/code&gt; со следующими именами:&lt;/p&gt;
&lt;div class="ulist"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;ca_certificate.pem&lt;/code&gt;- сертификат CA&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;ca_key.key&lt;/code&gt;- приватный ключ CA&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;div class="olist arabic"&gt;
&lt;ol class="arabic" start="2"&gt;
&lt;li&gt;
&lt;p&gt;Запустить скрипт генерации. При наличии указанных файлов скрипт пропустит генерацию CA и будет использовать предоставленные файлы для подписи сертификатов компонентов.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;table class="tableblock frame-all grid-all stretch"&gt;
&lt;colgroup&gt;
&lt;col style="width: 22%;"/&gt;
&lt;col style="width: 24%;"/&gt;
&lt;col style="width: 54%;"/&gt;
&lt;/colgroup&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th class="tableblock halign-left valign-top"&gt;Параметр&lt;/th&gt;
&lt;th class="tableblock halign-left valign-top"&gt;Требование&lt;/th&gt;
&lt;th class="tableblock halign-left valign-top"&gt;Комментарий&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td class="tableblock halign-left valign-top"&gt;&lt;p class="tableblock"&gt;&lt;strong&gt;Формат&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;
&lt;td class="tableblock halign-left valign-top"&gt;&lt;p class="tableblock"&gt;&lt;strong&gt;только PEM&lt;/strong&gt; формат &lt;strong&gt;(текстовый). &lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;
&lt;td class="tableblock halign-left valign-top"&gt;&lt;div class="content"&gt;&lt;div class="paragraph"&gt;
&lt;p&gt;Для преобразования из DER формата можно воспользоваться командой:&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>Создание сертификатов без скрипта</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/cert_without_script/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/cert_without_script/</guid><description>&lt;div class="paragraph"&gt;
&lt;p&gt;Для контролируемой генерации сертификатов для сервисов необходимо воспользоваться файлом &lt;strong&gt;openssl.config.sample&lt;/strong&gt;. В нем изложены все необходимые параметры. Перед использованием необходимо заполнить все переменные: &lt;strong&gt;$MP_IP&lt;/strong&gt;* и &lt;strong&gt;$NODE_N_IP&lt;/strong&gt;&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>Структура генерируемых файлов</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/structure_generated_files/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/structure_generated_files/</guid><description>&lt;div class="paragraph"&gt;
&lt;p&gt;Скрипт создает следующую структуру директорий и файлов относительно своего расположения:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="listingblock"&gt;
&lt;div class="content"&gt;
&lt;pre class="highlight"&gt;&lt;code class="language-text" data-lang="text"&gt;$\{MPPATH}/bin/certs/
├──server.crt               # Сертификат сервера (для Docker)
├──server.key               # Приватный ключ сервера
├──tls/
│   ├── broker/             # Сертификаты для broker кластера
│   ├── cdr/                # Сертификаты для CDR
│   ├── client/             # Сертификаты для клиентов
│   ├── server/             # Сертификаты для сервера
│   ├── storage/            # Сертификаты для storage кластера
│   └── yara/               # Сертификаты для YARA
└──multicheck_ca/           # Файлы центра сертификации
    ├── certs/              # Копии подписанных центром сертификатов
    ├── ca_certificate.pem  # Сертификат CA (PEM)
    ├── ca_certificate.cer  # Сертификат CA (DER)
    ├── ca_key.key          # Приватный ключ CA
    ├── index.txt           # База данных выданных сертификатов
    └── serial              # Серийный номер следующего сертификата&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;</description></item><item><title>Установка сертификатов в доверенные</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/instal_trusted_certificates/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/instal_trusted_certificates/</guid><description>&lt;div class="paragraph"&gt;
&lt;p&gt;После генерации скрипт автоматически добавляет все созданные сертификаты в доверенные на хосте в зависимости от указанной ОС:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Для Ubuntu/Astra:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="ulist"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Копирование в &lt;code&gt;/usr/local/share/ca-certificates/&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Обновление командой &lt;code&gt;update-ca-certificates&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Для Alt/RedOS:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="ulist"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Копирование в &lt;code&gt;/etc/pki/ca-trust/source/anchors/&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Обновление командой &lt;code&gt;update-ca-trust&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Для Docker:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="ulist"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Создание директории &lt;code&gt;/etc/docker/certs.d/&amp;lt;FQDN&amp;gt;:5443/&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Копирование сертификата сервера для использования Docker клиентом&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;&lt;strong&gt;Важно&lt;/strong&gt;:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="ulist"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Срок действия сертификатов = 10 лет (3650 дней);&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Все сертификаты подписываются с использованием конфигурационного файла &lt;code&gt;openssl.config&lt;/code&gt;;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;При генерации используется единый CA сертификат для подписи всех компонентов;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Сертификаты генерируются только для компонентов, которые не имеют собственных механизмов генерации.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description></item><item><title>Установка сертификатов в доверенные без скрипта</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/trust_cert_without_script/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/trust_cert_without_script/</guid><description>&lt;div class="paragraph"&gt;
&lt;p&gt;Для установки сертификата в доверенные необходимо выполнить действия из предыдущего пункта вручную.&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>Конфигурация openssl</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/openssl_config/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/openssl_config/</guid><description>&lt;div class="paragraph"&gt;
&lt;p&gt;Файл &lt;strong&gt;openssl.config&lt;/strong&gt; содержит настройки для центра сертификации (CA) и расширения для различных типов сертификатов, используемых компонентами платформы.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Находится в директории: &lt;code&gt;${MPPATH}/bin/certs/tls/openssl.config&lt;/code&gt;&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>Генерация сертификатов для YARA</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/yara_cert_generation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/yara_cert_generation/</guid><description>&lt;div class="paragraph"&gt;
&lt;p&gt;Скрипт в Системе заранее генерирует сертификаты для этого компонента. Если компонент устанавливается на отдельный хост, то сертификаты генерируются отдельно.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Если корневой сертификат &lt;code&gt;${MPPATH}/bin/certs/multicheck_ca/ca_certificate.pem&lt;/code&gt; и его приватный ключ &lt;code&gt;${MPPATH}/bin/certs/multicheck_ca/ca_key.key&lt;/code&gt; отсутствуют, то создаётся отдельный центр сертификации.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="olist arabic"&gt;
&lt;ol class="arabic"&gt;
&lt;li&gt;
&lt;p&gt;mp-analyzer&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Самостоятельно генерирует сертификаты на основе корневых при запуске. Важно, чтобы в &lt;strong&gt;файле .env&lt;/strong&gt; были заполнены переменные:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="listingblock"&gt;
&lt;div class="content"&gt;
&lt;pre class="highlight"&gt;&lt;code class="language-text" data-lang="text"&gt;DNS_NAMES=yara.multicheck.ru,mp-analyzer # Используется в качестве дополнительного SAN в сертификате TLS

IP_ADDRESSES=$\{MP_IP} # Заполняется автоматически адресом хоста, используется в качестве дополнительного SAN в сертификате TLS&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;</description></item><item><title>Генерация сертификатов для CDR</title><link>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/cdr_cert_generation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://help.ngrsoftlab.ru/xfp/2.1/install-guide/install_order/certificate_generation/cdr_cert_generation/</guid><description>&lt;div class="paragraph"&gt;
&lt;p&gt;Скрипт в Системе заранее генерирует сертификаты для этого компонента. В случае, если компонент устанавливается на отдельный хост, сертификаты генерируются отдельно.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Если корневой сертификат &lt;code&gt;${MPPATH}/bin/certs/multicheck_ca/ca_certificate.pem&lt;/code&gt; и его приватный ключ &lt;code&gt;${MPPATH}/bin/certs/multicheck_ca/ca_key.key&lt;/code&gt; отсутствуют, то создаётся отдельный центр сертификации.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="olist arabic"&gt;
&lt;ol class="arabic"&gt;
&lt;li&gt;
&lt;p&gt;mp-file-converter&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;div class="paragraph"&gt;
&lt;p&gt;Самостоятельно генерирует сертификаты на основе корневых при запуске. Важно, чтобы в &lt;strong&gt;файле .env&lt;/strong&gt; были заполнены переменные:&lt;/p&gt;
&lt;/div&gt;
&lt;div class="listingblock"&gt;
&lt;div class="content"&gt;
&lt;pre class="highlight"&gt;&lt;code class="language-text" data-lang="text"&gt;EXTERNALHOSTNAME=multicheck.ngrsoftlab.ru # Используется в качестве дополнительного SAN в сертификате TLS

EXTERNALIP= # Используется в качестве дополнительного SAN в сертификате TLS&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;</description></item></channel></rss>