Перед установкой Центр сертификации Aladdin eCA необходимо выполнить подготовку сервера, где предполагается развертывание Центра сертификации Aladdin eCA, в соответствии с разделом 4 настоящего руководства.

В случае повторной установки ПО рекомендуется произвести очистку кэш используемого веб‑браузера.

Распаковка инсталляционного комплекта программы

  • Распакуйте инсталляционный rpm/deb‑пакет, находясь в папке, где расположен пакет, выполнив команду с правами суперпользователя:

РЕД ОС

sudo dnf install <наименование пакета>.rpm

Astra Linux SE

sudo dpkg ‑i <наименование пакета>.deb

Альт Сервер

sudo apt‑get install <наименование пакета>.rpm

  • Инсталляционный rpm/deb‑пакет будет автоматически распакован в директорию /opt/aecaCa.
  • Структура распакованного инсталляционного rpm/deb‑пакета приведена в таблице ниже (Таблица 5).

Таблица 5 – Структура установочного комплекта Центра сертификации Aladdin eCA

Структурный элемент

Назначение элемента

../opt/aecaCa

установочный комплект программы, а также используемые дополнительные инструменты

/opt/aecaCa/digsig/keys/aladdin_pub.key

публичный открытый ключ производителя для обеспечения ЗПС ОС Astra Linux SE

../opt/aecaCa/bin

каталог с дополнительными утилитами

../opt/aecaCa/bin/jcverify

каталог утилиты контроля целостности «jcverify»

../opt/aecaCa/bin/jcverify/jcverify

утилита контроля целостности «jcverify»

../opt/aecaCa/bin/jcverify/jcverify.txt

вспомогательный файл для работы утилиты целостности «jcverify»

../opt/aecaCa/dist

путь развертывания продукта, содержит создаваемые временные файлы

..dist/archive/

архивы, сформированные в результате очистки журнала событий

..dist/backup/

созданные резервные копии Центра сертификации

..dist/certificates/account

расположение pkcs#12 контейнера сертификата администратора инициализации

..dist/certificates/ssl

расположение сертификатов для управления ssl‑соединением

..dist/cryptotoken/

расположение pkcs#12 контейнеров, содержащих открытый и закрытый ключи Центров сертификации

..dist/environment/

расположение переменных окружения сервисов

..dist/logs/

расположения технических журналов сервисов

../opt/aecaCa/eula

файл лицензионного соглашения

../opt/aecaCa/samples

содержит шаблоны файлов конфигурации для внутреннего использования программой

../opt/aecaCa/scripts

содержит скрипты управления Центра сертификации Aladdin eCA

../scripts/external

содержит скрипт для экспорта шаблонов MSCS

../scripts/internal

скрипты для внутреннего использования программы, запускаемые автоматически при выполнении скриптов из каталога /opt/aecaCa/scripts

/opt/aecaCa/scripts/internal/aeca/selinux

политики, подключаемые к selinux, необходимые для функционирования Центра сертификации Aladdin eCA

../scripts/backup.sh

скрипт резервного копирования конфигурации Центра сертификации Aladdin eCA

../scripts/config.sh

bash‑скрипт конфигурации Центра сертификации Aladdin eCA (развертывание продукта, настройка подключения к БД, управление конфигурацией сервисов)

../scripts/database_create.sh

скрипт создания базы данных на разворачиваемом сервере Центра сертификации с предустановленными параметрами по умолчанию (именем пользователя, наименованием базы данных и т.д.)

../scripts/diagnostics.sh

скрипт сбора диагностических данных

../scripts/email_config.sh

bash‑скрипт управления шаблонами email‑рассылки

../scripts/install.sh

скрипт установки и обновления текущей версии Центра сертификации Aladdin eCA

../scripts/integrity_check.sh

скрипт контроля целостности исполняемых файлов

../scripts/restore.sh

скрипт восстановления из резервной копии конфигурации Центра сертификации Aladdin eCA

../scripts/restore_access.sh

скрипт резервного восстановления доступа к Центру сертификации Aladdin eCA

../scripts/export‑ca‑data.sh

скрипт экспорта файлов CRL, Delta CRL, AIA из Центра сертификации Aladdin eCA

../scripts/uninstall.sh

скрипт удаления Центра сертификации Aladdin eCA

../opt/aecaCa/services

сервисы Серверной части Центра сертификации

../opt/aecaCa/services/cryptoproviders

каталог файлов для взаимодействия со сторонним криптопровайдером

../services/checksum.md5

файл эталонных хэш‑сумм сервисов и список сервисов, подвергаемых контролю целостности

../services/internal.md5

файл эталонных хэш‑сумм сервисов и список сервисов, подвергаемых контролю целостности (для внутреннего использования)

../opt/aecaCa/static

артефакты Клиентской части Центра сертификации Aladdin eCA

  • Владельцем распакованных файлов будет являться пользователь «root», другие пользователи не будут иметь прав доступа к инсталляционному комплекту.

Настройка параметров конфигурации программы

  • Конфигурация Центра сертификации Aladdin eCA задается с помощью параметров конфигурационного файла /opt/aecaCa/scripts/config.sh.
  • Перед установкой программного компонента определите значения следующих параметров:
    • webserver– укажите используемый веб-сервер (nginx, apache или cpnginx). О выборе веб-сервера смотри в подразделе 5.3. Также значение параметра можно будет ввести при запуске инсталлятора в интерактивном режиме;
    • webserver_path– укажите папку с файлами для развёртывания веб-сервера. Также значение параметра можно будет ввести при запуске инсталлятора, в интерактивном режиме указав путь к файлам веб-сервера (конфигурация nginx располагается по пути etc/nginx; конфигурация apache располагается: для Astra Linux по пути /etc/apache2, для РЕД ОС по пути /etc/httpd; для Alt Linux конфигурация apache располагается по пути /etc/httpd2/conf; конфигурация cpnginx располагается по пути /etc/opt/cprocsp/cpnginx) ;
    • database_password– укажите пароль пользователя базы данных. После обновления с версии 2.1 до версии 2.2 (см. раздел 12), а также после создания и настройки базы данных (см. подраздел 5.3) пароль пользователя базы данных отображается в конфигурационном файле в шифрованном виде (алгоритм шифрования AES‑256 с использованием сгенерированного в файле /opt/aecaCa/scripts/key ключа шифрования);

Внимание! Пароль не должен содержать специальные символы «|» и «\».

    • root_cert_path– абсолютный путь к сертификату корневого ЦС из цепочки сертификатов сервера СУБД. Значение параметра необходимо заполнить только при включенном флаге обязательного использования TLS для подключения к СУБД (при значении параметра use_tls=true). Иначе (при use_tls=false) следует оставить параметр незаполненным;
    • hostname– укажите полное имя сервера Центра сертификации Aladdin eCA. Установленное значение заносится в атрибуты «Common name» и «DNS Name» автоматически создаваемых при развёртывании локального субъекта веб-сервера и сертификата для него.
  • Для соответствия Центра сертификатов доступа 4 уровню доверия, установленному документом «Требования по безопасности информации, устанавливающие уровни доверия к средствам технической защиты информации и средствам обеспечения безопасности информационных технологий» (утверждённым приказом ФСТЭК России от 2 июня 2020 г. № 76) при использовании СКЗИ «КриптоПро CSP» канал взаимодействия клиентского и серверного компонента программного средства должен быть организован по протоколу TLS ГОСТ, а также должна обеспечиваться TLS‑аутентификация пользователей в программном средстве с использованием отечественных криптографических алгоритмов. Для этого настройте конфигурационный файл в соответствии с таблицей ниже (Таблица 6).

Таблица 6 – Параметры для настройки TLS ГОСТ

Параметр

Значение

webserver

'cpnginx'

webserver_path

'/etc/opt/cprocsp/cpnginx'

initial_cryptography_provider

'CRYPTO_PRO'

initial_cryptography_key_algorithm

'GOST_R_34_10_2012'

initial_cryptography_key_bits

'256' или '512'

initial_cryptography_hash_algorithm

'GOST_R_34_11_2012'

initial_ca_common_name

пример значения: 'INITIAL_CA_GOST'

initial_admin_principal

пример значения: 'INITIAL_ADMIN_GOST'

sign_provider

'CRYPTO_PRO'

sign_key_algorithm

'GOST_R_34_10_2012'

sign_key_length

'256' или '512

sign_hash_algorithm

'GOST_R_34_11_2012'

  • Отредактируйте конфигурационный файл /opt/aecaCa/scripts/config.sh, выполнив команду:
sudo nano /opt/aecaCа/scripts/config.sh
  • Настраиваемые параметры конфигурационного файла позволяют задавать:
    • параметры конфигурации развёртывания сервисов центра сертификации;
    • параметры e‑mail уведомлений пользователям об истечении срока действия выданного сертификата;
    • параметры конфигурации центра валидации;
    • параметры конфигурации технического центра сертификации, создаваемого по умолчанию в процессе развёртывания сервера центра сертификации;
    • параметры сертификата технического центра сертификации;
    • параметры сертификата учётной записи администратора инициализации;
    • параметры сертификата веб-сервера технологического центра сертификации;
    • расписание синхронизации ресурсных систем;
    • расписание публикации списка отозванных сертификатов;
    • расписание проверки срока действия сертификатов центров сертификации и выпущенных сертификатов субъектов;
    • расписание архивации журнала событий;
    • конфигурацию базы данных.
  • Полный перечень и описание параметров конфигурации приведено в Таблица 7.

Таблица 7 – Описание параметров конфигурации

Параметр

Значение параметра по умолчанию

Описание

Конфигурация развертывания

webserver

'#CHANGEIT'

Используемый веб-сервер (nginx, apache или cpnginx)

webserver_path

'#CHANGEIT'

Папка с файлами для развёртывания сервиса (конфигурация nginx располагается по пути etc/nginx; конфигурация apache располагается: для Astra Linux по пути /etc/apache2, для РЕД ОС по пути /etc/httpd; для AltLinux конфигурация apache располагается по пути /etc/httpd2/conf; конфигурация cpnginx располагается по пути /etc/opt/cprocsp/cpnginx)

aeca_path

'/opt/aecaCa/dist'

Папка с файлами для развёртывания Центра сертификации Aladdin eCA

environment_path

'/opt/aecaCa/dist/environment'

Папка с переменными окружения для сервисов

cryptotoken_path

'/opt/aecaCa/dist/cryptotoken'

Папка, содержащая открытый и закрытый ключи для доступа (аутентификации) к центру сертификации

webserver_config_path

'/opt/aecaCa/dist/webserver'

Расположение конфигурации Центра сертификации Aladdin eCA для веб-сервера

ssl_protocols

'TLSv1.2 TLSv1.3'

Поддерживаемые версии протокола TLS.

Доступно использование только TLSv1.2 и/или TLSv1.3 (при использовании обоих версий необходимо указывать их через пробел).

ssl_ciphers

По умолчанию не задано.

Поддерживаемые наборы шифров для TLS‑соединения. Данный параметр позволяет ограничить наборы шифров (cipher suites), которые могут использоваться при TLS‑соединении. Разделитель между наборами – «:». Если клиент не поддерживает ни один из указанных в данном параметре наборов, TLS‑соединение не будет установлено.

По умолчанию значение в данном параметре не задано, что означает отсутствие управления со стороны Центра сертификации перечнем допустимых наборов шифров (ciphersuites) TLS‑соединения для веб-сервера.

В данном параметре могут быть указаны любые наборы шифров, поддерживаемые используемой на сервере Центра сертификации версией Openssl для TLS версии 1.2.

Получить список поддерживаемых используемым Openssl наборов шифров для TLS версии 1.2 можно с помощью команды:

openssl ciphers ‑tls1_2 ‑s

Данный параметр учитывается только при использовании веб-серверов Nginx или Apache. Конфигурирование наборов шифров TLS‑соединения для Cpnginx осуществляется с помощью утилиты «cpconfig» из состава СКЗИ «КриптоПро CSP»[1].

Параметры проксирования nginx

proxy_connect_timeout

'320'

Время ожидания подключения к прокси‑серверу перед тем, как будет выдано сообщение об ошибке.

Только для nginx.

Настраивается разработчиком Центра сертификации Aladdin eCA, редактировать не следует.

proxy_send_timeout

'320'

Время ожидания ответа от прокси‑сервера после отправки запроса. Если ответ не получен в течение этого времени, запрос считается неудачным.

Только для nginx.

Настраивается разработчиком Центра сертификации Aladdin eCA, редактировать не следует.

proxy_read_timeout

'720'

Время ожидания чтения ответа от прокси‑сервера после получения успешного запроса. Если ответ не получен в течение этого времени, запрос считается неудачным.

Только для nginx.

Настраивается разработчиком Центра сертификации Aladdin eCA, редактировать не следует.

Путь до резервных копий

backup_path

'/opt/aecaCa/dist/backup'

Папка, в которую сохраняются резервные копии Центра сертификации Aladdin eCA

Путь хранения архива журнала событий

logs_base

'/opt/aecaCa/dist/logs'

Папка, в которую сохраняется журнал событий (лог‑файлы)

archive_path

'/opt/aecaCa/dist/archive'

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

logs_file_max_size

'10MB'

Максимальный размер лог‑файла (файла с диагностической информацией) сервиса перед его архивацией.

При достижении данного значения текущий лог‑файл (access.log или service.log) будет заархивирован. Файл будет сохранен в текущем каталоге хранения лог‑файлов данного сервиса с именем {access или service}‑{дата в формате YYYY‑MM‑DD}.{индекс лога}.log.

logs_max_history

'10'

Максимальный срок хранения архивов с лог‑файлами в днях.

Архивы, срок хранения которых превышает указанное в данном параметре значение, будут автоматически удаляться.

logs_total_size_cap

'100MB'

Максимальный общий объем лог‑файлов, включая архивы, каждого типа (access или service) для каждого сервиса.

При достижении данного объема наиболее старые архивы данного типа будут удаляться.

Путь хранения контейнера сертификата и ключа веб-сервера, а также цепочек сертификатов разрешенных издателей

certificates_ssl_path

'/opt/aecaCa/dist/certificates/ssl'

Папка, содержащая сертификат веб-сервера и цепочки сертификатов разрешённых издателей

certificates_account_path

'/opt/aecaCa/dist/certificates/account'

Папка, содержащая сертификат администратора инициализации в контейнере .р12

Конфигурация пользователя

aeca_user

'aeca'

Имя пользователя Центра сертификации Aladdin eCA, используемое для работы программы.

aeca_group

'aeca'

Группа, в которой состоит пользователь Центра сертификации Aladdin eCA

Конфигурация памяти

memory

'8192'

Лимит оперативной памяти для программы. Значение в Мб.

ЦС при запуске резервирует указанное в данном параметре количество оперативной памяти для своих сервисов.

При значении параметра менее 8 Гб ЦС не запустится – будет выдано сообщение об ошибке.

При значении параметра, превышающем количество оперативной памяти хоста, будет использована вся доступная оперативной память хоста.

Необходимо изменять при крупном внедрении.

enable_gc_diagnostic

'false'

Флаг сбора диагностической информации о памяти

При включении данного флага и выполнении скрипта сбора диагностических данных в архиве диагностических данных[2] будет содержаться лог сборщика мусора и дампы памяти для упавших приложений ЦС.

enable_heap_dump

'false'

Флаг сбора дампов памяти для упавших приложений ЦС.

Конфигурация базы данных

max_db_pool_size

'200'

Максимальный размер пула подключений к СУБД.

Настраивается разработчиком Центра сертификации Aladdin eCA, редактировать не следует.

use_tls

false

Флаг обязательного использования TLS для подключения к СУБД.

Допустимые значения: true, false

database_username

'aeca'

Имя пользователя базы данных, используемое для работы Центра сертификации Aladdin eCA

database_password

'#CHANGEIT'

Пароль пользователя базы данных, используемый для работы Центра сертификации Aladdin eCA. Пароль не должен содержать специальные символы «|» и «\»

database_host

'localhost'

Сетевой адрес базы данных

database_port

'5432'

Порт, используемый для подключения к базе данных

database_name

'aecaca'

Имя базы данных, используемой Центром сертификации Aladdin eCA

root_cert_path

‘#CHANGEIT’

Абсолютный путь к сертификату корневого ЦС из цепочки сертификатов сервера СУБД

Конфигурация аеса‑са

http_port

'80'

Порт для подключения к программному компоненту «Центр Сертификации» по протоколу http

https_port

'443'

Порт для подключения к программному компоненту «Центр Сертификации» по протоколу https

number_of_services

'17'

Количество активных сервисов в системе.

Настраивается разработчиком Центра сертификации Aladdin eCA, редактировать не следует.

hostname

'localhost'

Имя сервера, на котором развёртывается Центр сертификации. Также заносится в атрибуты «Common name» и «DNS Name» автоматически создаваемых (при развёртывании ЦС) сертификата веб-сервера и локального субъекта. Должно совпадать с hostname сервера.

Переменные окружения, используемые всеми сервисами

logging_response

'false'

Флаг для сбора и регистрации ответов сервисов

logging_sql

'false'

Флаг для сбора и регистрации информации о подключениях и запросах к базе данных PostgreSQL

internal_http_read_timeout

'240'

Максимальный таймаут ожидания ответа методов сервисов при внутреннем взаимодействии.

Единица измерения – секунды.

internal_http_connection_timeout

'60'

Максимальный таймаут ожидания подключения к сервисам при внутреннем взаимодействии.

Единица измерения – секунды.

Ключ для внутренней аутентификации

api_key

'2d2ec9b4‑ad3d‑4ed0‑8961‑d2a4ab99d810'

Значение ключа для внутренней аутентификации. Для служебного пользования, доступ к учётной записи Системного администратора ограничен, установку программы выполняет ответственный специалист

Переменные окружения, используемые certificate‑authority‑service

pkcs12_key_protection_algorithm

'PBEWithHmacSHA256AndAES_256'

Алгоритм хеширования для ключа контейнера PKCS12

Допустимые значения: PBEWithHmacSHA256AndAES_256 ‑ рекомендуется;

PBEWithSHA1AndDESede ‑ устаревший

pkcs12_mac_protection_algorithm

'HmacPBESHA256'

Алгоритм хеширования MAC контейнера PKCS12

Допустимые значения:

HmacPBESHA256 ‑ рекомендуется;

HmacPBESHA1 ‑ устаревший

pkcs12_certificate_protection_algorithm

'PBEWithHmacSHA256AndAES_256'

Алгоритм хеширования для сертификата контейнера PKCS12

Допустимые значения: PBEWithHmacSHA256AndAES_256 ‑ рекомендуется;

PBEWithSHA1AndRC2_40 ‑ устаревший

Переменные окружения, используемые ldap‑service

ldap_sync_connection_point

'0 */30 * * * *'

CRON выражение, по которому запускается частичная синхронизация зарегистрированных точек подключения (значение по умолчанию: '0 */30 * * * *' ‑ запуск каждые полчаса)

ldap_sync_resource

'0 0 0 * * *'

CRON выражение, по которому запускается полная синхронизация ресурсных систем (значение по умолчанию: '0 0 0 * * *' ‑ запуск каждую полночь)

ldap_clean_queues

'0 */30 * * * *'

CRON выражение, по которому запускается очистка необработанных элементов очередей на синхронизацию

ldap_partition_size

'1000'

Максимальное количество объектов, получаемых из ресурсных систем при каждом запросе.

Переменные окружения, используемые publisher‑service

crl_scheduler

'0 */1 * * * *'

CRON выражение, по которому запускается служба выпуска CRL

crl_clean_queues

'0 */30 * * * *'

CRON выражение, по которому очищаются очереди службы выпуска CRL

Переменные окружения, используемые event‑delivery‑service

email_host

'127.0.0.1'

Хост почтового сервера

email_port

'25'

Порт почтового сервера

email_login

'aeca'

Логин пользователя

email_password

'aeca'

Пароль пользователя

email_from

'no_reply@aeca.ru'

Почтовый адрес, с которого отправлено сообщение. Может не работать. Google проставляет логин

email_schedule

'0 0 12 * * *'

CRON для запуска метода отправки почтовых уведомлений

email_enabled

'true'

Флаг отправки почтовых уведомлений, если выкл. то сообщения не отправляются, но помечаются, как отправленные

email_protocol

'smtp'

Протокол подключения к почтовому серверу

email_smtp_auth

'false'

Флаг: использование SMTP‑авторизации

email_start_tls

'false'

Флаг: использование директивы start tls при подключении к почтовому серверу

Переменные окружения, используемые settings‑service

initial_cryptography_provider

'EMBEDDED'

Криптопровайдер (используется для технологического ЦС и сертификатов веб-сервера и администратора инициализации)

Доступные для выбора значения: 'EMBEDDED' и 'CRYPTO_PRO'

initial_cryptography_key_
algorithm

'RSA'

Алгоритм ключа (используется для технологического ЦС и сертификатов веб-сервера и администратора инициализации)

Доступные для выбора значения алгоритмов ключа:

·    для стандартного провайдера (EMBEDDED) ‑ 'RSA' и 'ECDSA'

·    для провайдера СКЗИ «КриптоПро CSP» (CRYPTO_PRO) ‑ 'RSA' и 'GOST_R_34_10_2012'

initial_cryptography_key_bits

'4096'

Длина ключа (используется для технологического ЦС и сертификатов веб-сервера и администратора инициализации)

initial_cryptography_hash
_algorithm

'SHA512'

Хеш алгоритм (используется для технологического ЦС)

Доступные для выбора значения алгоритмов хэширования:

Для стандартного провайдера (EMBEDDED):

·    для алгоритма ключа 'RSA' доступны алгоритмы хэширования 'SHA1', 'SHA256', 'SHA384', 'SHA512'

·    для алгоритма ключа 'ECDSA' доступны алгоритмы хэширования 'SHA1', 'SHA256', 'SHA384', 'SHA512'

Для провайдера КриптоПро (CRYPTO_PRO):

·    для алгоритма ключа 'GOST_R_34_10_2012' доступен алгоритм хэширования 'GOST_R_34_11_2012'

·    для алгоритма ключа 'RSA' доступны алгоритмы хэширования 'SHA1', 'SHA256', 'SHA384', 'SHA512'

initial_ca_common_name

'INITIAL_CA'

Subject DN сертификата технологического ЦС

initial_admin_principal

'INITIAL_ADMIN'

Имя учетной записи администратора инициализации

initial_client_password

'INITIAL'

Пароль от pkcs12 контейнера сертификата администратора инициализации

initial_server_password

'INITIAL'

Пароль от pkcs12 контейнера сертификата веб-сервера

certificate_server_name

'server'

Шаблон имени файлов сертификата и закрытого ключа сертификата Веб-сервера

issuers_name

'issuers'

Шаблон имени файла активных издателей

Переменные окружения, используемые logs‑service

archive_cron

'0 0 0 1 * *'

CRON выражение, по которому запускается архивация журнала событий

archive_enabled

'true'

Флаг: включена архивация.

Возможные значения: true,false

archive_millis_ago

'15778800000'

Период архивации (мс) (архивировать записи старше…)

Переменные окружения, используемые security‑service

session_max_count

'100'

Максимальное число одновременных сессий аккаунта в виде натурального числа. При указании значения «‑1» ограничение на количество одновременных сессий пользователя будет отсутствовать.

token_expire

‘18000’

Срок действия JWT‑токена (маркера доступа), мс. Маркер доступа предназначен для подтверждения подлинности учетной записи после аутентификации по сертификату. Маркер доступа содержится в заголовке каждого запроса пользователя.

refresh_expire

‘86400000’

Срок действия JWT‑токена обновления (маркер обновления), мс. Маркер обновления предназначен для выработки нового маркера доступа после истечения срока его действия.

sign_provider

'EMBEDDED'

Провайдер подписи маркера доступа (выбирается между стандартным ‑ 'EMBEDDED' и КриптоПро ‑ 'CRYPTO_PRO')

sign_key_algorithm

'RSA'

Алгоритм ключа подписи маркера доступа.

Для стандартного провайдера доступны алгоритмы 'RSA' и 'ECDSA'.

Для провайдера КриптоПро доступны алгоритмы 'RSA' и 'GOST_R_34_10_2012'.

sign_key_length

'2048'

Длина ключа подписи маркера доступа

sign_hash_algorithm

'SHA512'

Алгоритм хэширования подписи

Доступные для выбора значения алгоритмов хэширования:

1) для стандартного провайдера (EMBEDDED):

·   для алгоритма ключа 'RSA' доступны алгоритмы хэширования 'SHA1', 'SHA256', 'SHA512', 'SHA384'

·   для алгоритма ключа 'ECDSA' доступны алгоритмы хэширования 'SHA1', 'SHA256', 'SHA512', 'SHA384'

2) для провайдера КриптоПро (CRYPTO_PRO):

·   для алгоритма ключа 'GOST_R_34_10_2012' доступен алгоритм хэширования 'GOST_R_34_11_2012'

·   для алгоритма ключа 'RSA' доступны алгоритмы хэширования 'SHA1', 'SHA256', 'SHA512', 'SHA384'

block_inactive_account_delay

'0'

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

Значение по умолчанию – 0, обозначающее отсутствие ограничения на неактивность учетных записей операторов.

Операциями, обновляющими дату и время последней активности пользователя, являются:

·    успешная аутентификация, включая аутентификацию в Центре сертификации и Центре регистрации;

·    успешное обновление маркера доступа, включая его обновление в Центре сертификации и Центре регистрации.

block_inactive_account_cron

'0 0 0 * * *'

CRON‑выражение, определяющее расписание запуска блокировки учетных записей операторов, период неактивности которых равен или превышает указанное в параметре «block_inactive_account_delay» значение.

Значение по умолчанию – запуск каждую полночь.

Переменные окружения, используемые apigateway‑service

max_requests_count

'30'

Максимальное число параллельных HTTP запросов.

При превышении числа запросов в систему данного значения, для последующих запросов будет возвращаться HTTP код ошибки 429 (Слишком много запросов).

Настраивается разработчиком Центра сертификации Aladdin eCA, редактировать не следует.

Переменные окружения, используемые subjects‑service

ldap_automatically_certificates_publication_enable

'true'

Флаг: включена автоматическая публикация сертификатов, требующих публикации

Возможные значения: true/false

ldap_automatically_certificates_publication_cron

'0 0 * * * *'

CRON выражение, по которому запускается автоматическая публикация сертификатов, требующих публикации.

Значение по умолчанию – '0 0 * * * *', обозначающее запуск публикации сертификатов, ожидающих её, каждый час.

[1] Инструкция по установке и настройке cpnginx - https://support.cryptopro.ru/index.php?/Knowledgebase/Article/View/440/0/nginx-gost-binary-packages. Описание порядка конфигурирования наборов шифров представлено в разделе 6.

[2] Размещение скрипта сбора диагностических данных – /opt/aecaCa/scripts/diagnostics.sh

Создание и настройка базы данных

Перед установкой Центра сертификации Aladdin eCA необходимо создать и настроить базу данных одним из следующих способов:

  • В автоматическом режиме посредством запуска скрипта (в результате будет создана база данных с параметрами, указанными в конфигурационном файле /opt/aecaCa/scripts/config.sh). Порядок создания и настройки базы данных в автоматическом режиме приведен в подразделе 5.3.1.
  • В ручном режиме (в результате будет создана база данных с параметрами, указанными в конфигурационном файле /opt/aecaCa/scripts/config.sh). Порядок создания и настройки базы данных в ручном режиме для PostgreSQL приведен в подразделе 5.3.2, а для Jatoba – в 5.3.3.

После создания и настройки базы данных пароль пользователя базы данных, заданный в конфигурационном файле /opt/aecaCa/scripts/config.sh в параметре database_password, отображается в зашифрованном виде. Шифрование пароля выполняется по алгоритму AES‑256 с использованием автоматически сгенерированного в файле /opt/aecaCa/scripts/key ключа шифрования.

База данных предназначена для хранения информации:

  • об учетных записях;
  • о сертификатах;
  • сведений о субъектах;
  • сведений о ресурсных системах;
  • о шаблонах;
  • журнала событий;
  • сведений о лицензии;
  • профили сертификатов;
  • профили конечных сущностей;
  • центры сертификатов;
  • настройки оповещения пользователей по e‑mail об истечении срока действия сертификата;
  • о ролях пользователей;
  • о группах субъектов;
  • о дискретных правах, определенных для ролей пользователей;
  • Security Groups.

Создание и настройка базы данных в автоматическом режиме

  • Предварительно необходимо:
    • распаковать инсталляционный пакет программного компонента в соответствии с подразделом 5.1 настоящего документа;
    • указать параметры создаваемой базы данных в конфигурационном файле /opt/aecaCa/scripts/config.sh (см. подраздел 5.2 настоящего руководства).
  • Запустите скрипт создания и настройки базы данных с параметрами по умолчанию, выполнив команду от имени суперпользователя (с правами sudo или root)[1]:
sudo bash /opt/aecaCa/scripts/database_create.sh

В результате выполнения скрипта будет создана База данных с параметрами, указанными в конфигурационном файле /opt/aecaCa/scripts/config.sh (имя пользователя, пароль, имя базы данных).

[1] Выполнение скрипта требует наличия утилиты psql из пакета СУБД (postgresql, postgresql-client, postgrespro-std, jatoba4-client). Установка и настройка СУБД описана в подразделах ,  или 4.5.2 в зависимости ОС.

Создание и настройка базы данных PostgreSQL в ручном режиме

Требования к настройке предварительно установленной СУБД PostgreSQL:

  • создание пользователя, от имени которого будет осуществляться взаимодействие с СУБД;
  • создание базы данных, используемой программным компонентом в процессе работы;
  • назначение созданному пользователю полных прав доступа к созданной базе данных.

Возможно использование локальной СУБД или удаленной, доступной для подключений.

  • Запустите PostgreSQL, выполнив команду:
sudo systemctl start postgresql
  • Добавьте запуск PostgreSQL в автозагрузку, выполнив команду:
sudo systemctl enable postgresql
  • Зайдите под пользователем «postgres» в СУБД, выполнив команду:
sudo ‑u postgres psql
  • Создайте пользователя базы данных, выполнив команду:
CREATE USER aeca;

где aeca – задаваемое имя пользователя по умолчанию, в случае указания отличного имени пользователя, требуется соответственно отредактировать конфигурационный файл (см. подраздел 5.2).

  • Задайте пароль пользователю, выполнив команды:
ALTER USER aeca WITH PASSWORD 'aeca';

где ‘aeca’ – задаваемый пароль пользователя по умолчанию. В случае указания отличного пароля, требуется соответственно отредактировать конфигурационный файл (см. подраздел 5.2).

Внимание! Пароль не должен содержать специальные символы «|» и «\».

  • Создайте базу данных, выполнив команду:
CREATE DATABASE aecaca;

где aecaca – задаваемое имя базы данных по умолчанию, в случае указания отличного имени базы данных, требуется соответственно отредактировать конфигурационный файл (см. подраздел 5.2).

  • Назначьте владельцем созданной базы данных созданного пользователя, выполнив команду:
ALTER DATABASE aecaca OWNER TO aeca;
  • Наделите созданного пользователя полными правами доступа к созданной базе данных и завершите действия, выполнив команды:
GRANT ALL PRIVILEGES ON DATABASE aecaca TO aeca;
 
\q
  • Завершите работу под пользователем «postgres» и выйдите из терминала, выполнив команду:
exit
  • Перезапустите СУБД PostgreSQL, выполнив команду:
sudo systemctl restart postgresql
  • Установите расширение pgcrypto в БД PostgreSQL, выполнив команду от имени пользователя «postgres» (с правами root):
sudo ‑u postgres psql ‑c "CREATE EXTENSION IF NOT EXISTS pgcrypto WITH SCHEMA pg_catalog;" ‑d aecaca

где aecaca – имя созданной базы данных.

Создание и настройка базы данных Jatoba в ручном режиме

Требования к настройке предварительно установленной СУБД Jatoba:

    • создание пользователя, от имени которого будет осуществляться всё взаимодействие с СУБД;
    • создание базы данных, используемой Программой в процессе работы;
    • назначение созданному пользователю полных прав доступа к созданной базе данных.

Возможно использование локальной СУБД или удаленной, доступной для подключений.

  • Запустите Jatoba, выполнив команду:
sudo systemctl start jatoba‑[версия]

Добавьте запуск Jatoba в автозагрузку, выполнив команду:

sudo systemctl enable jatoba‑[версия]
  • Зайдите под пользователем «postgres» в Jatoba, выполнив команду:

РЕД ОС

sudo ‑u postgres psql

Astra Linux SE

sudo ‑u postgres psql

Альт Сервер

sudo – postgres ‑s /bin/bash

‑bash‑4.4$ /usr/jatoba‑[версия]/bin/psql

psql

  • Создайте пользователя базы данных, выполнив команды:
CREATE USER aeca;

где aeca – задаваемое имя пользователя.

  • Задайте пароль пользователю, выполнив команды:
ALTER USER aeca WITH PASSWORD 'aeca';

где ‘aeca’ – задаваемый пароль пользователя.

Внимание! Пароль не должен содержать специальные символы «|» и «\».

  • Создайте базу данных, выполнив команду:
CREATE DATABASE aecaca;

где aecaca – задаваемое имя базы данных.

  • Назначьте владельцем созданной базы данных созданного пользователя, выполнив команду:
ALTER DATABASE aecaca OWNER TO aeca;
  • Наделите созданного пользователя полными правами доступа к созданной базе данных и завершите действия, выполнив команды:
GRANT ALL PRIVILEGES ON DATABASE aecaca TO aeca;
 
\q
  • Завершите работу под пользователем «postgres» и выйдите из терминала, выполнив команду:
exit
  • Перезапустите СУБД Jatoba, выполнив команду:
sudo systemctl restart jatoba‑[версия]
  • Установите расширение pgcrypto в БД Jatoba, выполнив команду от имени пользователя «postgres» (с правами root):
sudo ‑u postgres psql ‑c "CREATE EXTENSION IF NOT EXISTS pgcrypto WITH SCHEMA pg_catalog;" ‑d aecaca

где aecaca – имя созданной базы данных.

Установка программы

  • Для инициализации процесса установки Центра сертификации Aladdin eCA необходимо запустить скрипт с правами суперпользователя (от имени пользователя root, либо с использованием sudo) [1]:
sudo bash /opt/aecaCa/scripts/install.sh
    • В случае запуска от имени пользователя, не имеющего соответствующих привилегий, будет выведено сообщение, после которого работа инсталлятора завершится:
"This script must be run as root!"
    • При использовании Astra Linux Special Edition и наличии мандатных политик[2] может быть выведено сообщение:
ВАЖНО:  error obtaining MAC configuration for user "aeca"

В данном случае явно назначьте классификационную метку пользователю aeca, выполнив команду:

sudo pdpl‑user ‑l 0:0 aeca

Повторно запустите скрипт установки. После инициализации процесса установки интерактивный инсталлятор будет запущен и пользователю будет предложено (в случае, если ранее на сервере был установлен Центр сертификации Aladdin eCA ):

    • установить Центр сертификации Aladdin eCA ;
    • установить обновление Центра сертификации Aladdin eCA ;
    • завершить работу инсталлятора.

Подтвердите выбор действия, вводом цифры «1» и процесс установки продукта будет запущен.

  • В случае, если в конфигурационном файле /opt/aecaCа/scripts/config.sh не определён используемый веб-сервер или введено неверное значение параметра webserver, то в процессе установки пользователю будет предложено выбрать используемый веб-сервер:
    • apache;
    • nginx;
    • cpnginx.

Подтвердите выбор действия, вводом цифры «1», «2» или «3».

При выборе веб-сервера apache, nginx или cpnginx требуется предварительно выполнить установку пакета, описанную в подразделах 4.3.4 (для РЕД ОС), 4.4.4 (для Astra Linux), 4.5.4 (для Альт Сервер) настоящего руководства.

  • В случае, если в конфигурационном файле /opt/aecaCа/scripts/config.sh не определено расположение конфигурации выбранного веб-сервера (параметр webserver_path), то в процессе установки пользователю будет предложено ввести расположение (конфигурация nginx располагается по пути etc/nginx; конфигурация apache располагается: для Astra Linux по пути /etc/apache2, для РЕД ОС по пути /etc/httpd; для AltLinux конфигурация apache располагается по пути /etc/httpd2/conf; конфигурация cpnginx располагается по пути /etc/opt/cprocsp/cpnginx).
  • В процессе установки осуществляется:
    • создание системного пользователя и соответствующей группы, от имени которых функционирует продукт;
    • установка прав для создаваемого пользователя продукта;
    • подготовка, установка параметров и служебных сервисов;
    • запуск служебных сервисов;
    • запись номера сборки Центра сертификации Aladdin eCA в базу данных[3];
    • создание и выпуск сертификата технологического центра сертификации;
    • выпуск сертификата веб-сервера технологического центра сертификации;
    • создание учётной записи и выпуск сертификата администратора инициализации.
  • Ход установки программного компонента отображен в виде горизонтальной шкалы с указанием процентов выполнения установки.

В результате успешной установки программы:

  • В каталоге /opt/aecaCa/dist/certificates/account (значение по умолчанию параметра certificates_account_path конфигурационного файла sh) будет выпущен сертификат администратора инициализации (с использованием выбранного алгоритма – RSA, ECDSA или ГОСТ[4]) – контейнер закрытого ключа INITIAL_ADMIN.p12 (INITIAL_ADMIN_GOST.p12) (имя контейнера задано в параметре initial_admin_principal конфигурационного файла).
  • Выпущен технологический сертификат веб-сервера (с использованием выбранного алгоритма ‑ RSA, ECDSA или ГОСТ) и применён в качестве сертификата веб-сервера технологического Центра сертификации;
  • Создан технологический центр сертификации INITIAL_CA (INITIAL_CA_GOST) (значение задано в параметре initial_ca_common_name конфигурационного файла).

После первичной установки Центра сертификации Aladdin eCA системному пользователю aeca будет назначена командная оболочка /sbin/nologin, которая запрещает интерактивный вход в ОС. При обновлении ПО командная оболочка не меняется. Чтобы сменить командную оболочку, выполните команду:

sudo usermod ‑s /bin/bash aeca

В случае возникновения ошибки установка будет прекращена, сообщение об ошибке будет выведено в консоль пользователя.

[1] Выполнение скрипта требует наличия утилиты psql из пакета СУБД (postgresql, postgresql-client, postgrespro-std, jatoba4-client). Установка и настройка СУБД описана в подразделах ,  или 4.5.2 в зависимости ОС.

[2] Подробная информация по аутентификации в СУБД PostgreSQL для Astra Linux Special Edition приведена в https://wiki.astralinux.ru/pages/viewpage.action?pageId=238751148

[3] Значение номера сборки записывается в таблицу «build_info» схемы «aeca_info».

[4] Маркеры доступа будут подписаны по алгоритму ГОСТ Р 34.11-2012/34.10-2012 256 Бит.