<< Click to Display Table of Contents >> Администрирование (Windows) > Расширенная установка > Установка сервисов на выделенном сервере Установка сервиса ключей |
Чтобы настроить шифрование документов, необходимо сначала установить сервис ключей (KeyDerivation). При развертывании системы с помощью инструмента Directum Launcher по умолчанию сервис не устанавливается вместе со всеми компонентами.
Важно. Для обеспечения высокой безопасности сервис ключей нужно разворачивать отдельно от остальных сервисов, в защищенном контуре, доступ к которому строго ограничен. Например, физический доступ к серверу должен быть только у администратора безопасности, который не является администратором Directum RX или разработчиком.
Допускается разворачивать сервис на основном сервере со всеми компонентами для тестирования системы, при установке среды разработки на компьютере разработчика или когда не требуется повышенная безопасность.
Важно. Обязательно сохраните резервную копию сертификатов шифрования и секретов сервиса, так как:
•одновременная утеря закрытых ключей основного и запасного сертификата ведет к невозможности расшифровки всех документов, секреты которых зашифрованы этими сертификатами;
•утеря секрета сервиса ведет к невозможности расшифровки всех документов, для шифрования которых использовался этот секрет сервиса.
Даже если у вас есть резервные копии документов, их нельзя будет восстановить, так как они зашифрованы. Резервные копии секретов рекомендуется хранить отдельно от копий сертификатов.
Примечание. После установки сервиса можно быстро проверить, что шифрование работает. Для этого на компьютере с веб-сервером в конфигураторе Directum Launcher в секции веб-сервера добавьте параметр UI_ENCRYPTABLE_DOCUMENT_TYPES. В нем перечислите идентификаторы типов документов, для которых нужно разрешить шифрование. Подробнее см. в разделе «Как узнать идентификатор типа документа». В результате для таких документов на панели «Управление доступом» появится кнопка , по которой можно зашифровать документ. Подробнее о других способах настройки см. в разделе «Шифрование документов».
Подготовка к установке
1.Подготовьте сертификаты для шифрования секретов сервиса и секретов данных. Сертификаты можно приобрести в удостоверяющем центре или сгенерировать самостоятельно.
Для шифрования нужно подготовить два сертификата: основной и запасной. Если что-то произойдет с основным, будет использоваться второй сертификат. Отпечатки сертификатов указываются далее в параметрах сервиса ключей.
2.Установите сертификаты на выделенном сервере, где будет развернут сервис ключей. Для этого используйте, например, утилиту certificate-tool. Установите открытый и закрытый ключ основного сертификата и открытый ключ запасного сертификата. Закрытый ключ запасного сертификата сохраните отдельно и разместите его, например, в сейфе.
3.Сохраните резервную копию сертификатов на случай, если их потребуется восстановить.
4.Если используются ГОСТ-сертификаты для шифрования данных, то на компьютере с сервисом ключей установите КриптоПро CSP версии 5.0 и выше.
Установка сервиса ключей на выделенном сервере
1.На выделенном сервере установите дополнительные компоненты. Для этого в дистрибутиве системы перейдите в архив Redist.zip\<Номер версии>\win7-x64 и запустите файл dotnet-sdk-6.0.412-win-x64.exe – файл установки Microsoft .NET SDK 6.0.
2.Чтобы обеспечить доверие сервиса ключей к остальным компонентам системы, с основного сервера экспортируйте сертификат с закрытым ключом, отпечаток которого указан в параметре DATA_PROTECTION_CERTIFICATE_FILE конфигурационного файла config.yml.
Затем импортируйте сертификат на выделенный сервер в хранилище личных сертификатов локального компьютера:
3.На сервере, где размещается сервис хранилищ в конфигураторе Directum Launcher в секции Общие настройки (common_config) добавьте параметр KEY_DERIVATION_SERVICE_ADDRESS – адрес сервиса ключей.
Пример настройки в config.yml:
KEY_DERIVATION_SERVICE_ADDRESS: '{{ protocol }}://{{ host_fqdn }}/KeyDerivation'
4.Архив с Directum Launcher распакуйте в локальную папку на сервере.
ВАЖНО. Для корректной установки общий путь к файлам не должен превышать 256 символов. Также он не должен содержать пробелы, символы кириллицы, запятые и спецсимволы. Поэтому используйте, например, папку D:\Directum Launcher.
5.С основного на выделенный сервер, где устанавливается сервис ключей, скопируйте конфигурационный файл config.yml.
6.Запустите Directum Launcher. В секции Переменные (variables) проверьте и при необходимости актуализируйте параметры:
•host_fqdn – полное доменное имя сервера (FQDN), на котором развертывается система Directum RX. Система будет доступна по указанному имени, например: https://domain.ru. Чтобы выделенный сервер был доступен только по IP-адресу, задайте значение {{ host_ip }};
•home_path – домашняя папка. Внутри нее при развертывании системы создаются подпапки для хранения содержимого документов, лог-файлов, файлов предпросмотра и других данных. Если часть данных нужно хранить отдельно, вне домашней папки, то измените путь в соответствующей настройке сервиса;
•protocol – протокол для работы с системой. Возможные значения: https, http. Значение по умолчанию https. Для работы с выделенным сервером рекомендуется использовать защищенный протокол HTTPS. Протокол HTTP можно использовать только для ознакомления с системой, т.к. в этом случае данные между клиентом и сервером передаются в открытом виде;
•https_port – порт для работы с системой по протоколу HTTPS. Значение по умолчанию 443. Применяется, если в параметре protocol указано значение https.
7.В секции Логирование (logs_path) в параметре LOGS_PATH укажите путь до папки с лог-файлами сервиса ключей. Папка должна размещаться на выделенном сервере вместе с сервисом KeyDerivation.
ВАЖНО. Для безопасности доступ на запись в папку с лог-файлами сервиса также должен быть строго ограничен. При расследовании инцидентов по лог-файлу можно будет отследить, кто и с какими зашифрованными документами работал.
Пример настройки в config.yml:
logs_path: &logs
LOGS_PATH: '{{ home_path }}/logs'
8.В секции Общие настройки (common_config) удалите все лишние параметры и оставьте только параметры PRIMARY_TENANT, DATA_PROTECTION_CERTIFICATE_FILE и DATA_PROTECTION_CERTIFICATE_FILE_PASSWORD. Если путь до сертификата шифрования Cookie и проверки токена доступа к сервисам Directum RX на выделенном сервере отличается от пути на основном, то измените значение в параметре DATA_PROTECTION_CERTIFICATE_FILE.
Пример настройки в config.yml:
common_config: &base
<<: *logs
PRIMARY_TENANT: ''
DATA_PROTECTION_CERTIFICATE_FILE: '{{ home_path }}/data_protection/cert.pfx'
DATA_PROTECTION_CERTIFICATE_FILE_PASSWORD: '11111'
9.В секции Настройки сервисов (services_config) оставьте только обязательные секции и секцию сервиса ключей:
•Internet Information Services (IIS) – обязательная секция, содержит настройки диспетчера служб IIS. Обеспечивает доступность выделенного сервера;
•Агент управления сервисами Directum RX (ServiceRunner) – обязательная секция, содержит настройки агента управления сервисами ServiceRunner. Агент запускает и обслуживает сервисы Directum RX;
•Сервис ключей (KeyDerivationService).
10.В секции Internet Information Services (IIS) актуализируйте параметры:
•site_name – имя сайта системы и пула приложений в IIS. Значение по умолчанию DirectumRX Web Site Name;
•https_port – порт для работы по протоколу HTTPS. По умолчанию используется значение, указанное в параметре https_port в секции variables;
•ssl_cert_thumbprint – отпечаток сертификата для работы по протоколу HTTPS. Сертификат должен подходить для указанного имени сайта. Применяется, если в параметре protocol указано значение https.
11.В секции Сервис ключей (KeyDerivationService) задайте настройки сервиса ключей. Недостающие параметры добавьте по кнопке .
Пример минимальной настройки в config.yml:
KeyDerivationService:
<<: *base
PORT: # auto
SECRET_CERTIFICATE_THUMBPRINT: 'F025B7B16EF7D5476952EB17F7E0E8D180976B42'
BACKUP_SECRET_CERTIFICATE_THUMBPRINT: '1A83CFBC49971F1E14D37FAA6761433E7C0FA999'
SECRET_AUTOMATIC_GENERATION: 'false'
SECRETS_PATH: '{{ home_path }}/secrets'
В параметре SECRET_AUTOMATIC_GENERATION снимите флажок (false), чтобы отключить автоматическое создание секрета сервиса.
12.Нажмите на кнопку Применить настройки.
13.Запустите командную строку и с помощью команды gen-new-secret сгенерируйте новый секрет сервиса:
do keyderivationservice gen-new-secret
Сокращенный вариант команды:
do kds gen-new-secret
14.Убедитесь, что в папке с секретами сервиса, которая указана в параметре SECRETS_PATH, появился файл с секретом. Названия файлов генерируются в формате:
<большое число>_<ИД секрета сервиса>_service_secret
15.Сохраните резервную копию папки с секретами сервиса.
ВАЖНО. Утеря секрета сервиса ведет к невозможности расшифровки всех документов, для шифрования которых использовался этот секрет сервиса.
16.Запустите Диспетчер задач и проверьте, что в списке процессов появился установленный сервис Sungero.KeyDerivationService.Host.exe.
Если процесс не появился, посмотрите записи в лог-файлах установленного сервиса ключей и агента ServiceRunner и исправьте ошибки.
Установка сервиса на основном сервере со всеми компонентами
1.Запустите Directum Launcher и перейдите в режим настройки. Добавьте секцию Сервис ключей (KeyDerivationService) с настройками сервиса ключей. Недостающие параметры добавьте по кнопке .
Пример минимальной настройки в config.yml:
KeyDerivationService:
<<: *base
PORT: # auto
SECRET_CERTIFICATE_THUMBPRINT: 'F025B7B16EF7D5476952EB17F7E0E8D180976B42'
BACKUP_SECRET_CERTIFICATE_THUMBPRINT: '1A83CFBC49971F1E14D37FAA6761433E7C0FA999'
SECRET_AUTOMATIC_GENERATION: 'false'
SECRETS_PATH: '{{ home_path }}/secrets'
В параметре SECRET_AUTOMATIC_GENERATION снимите флажок (false), чтобы отключить автоматическое создание секрета сервиса. Если сервис устанавливается для тестирования системы или на компьютер разработчика, то оставьте флажок установленным (true) и пропустите пункт с генерацией секрета сервиса.
2.Примените настройки IIS, разверните сервис и другие компоненты. Для этого нажмите на кнопку Применить настройки.
3.В секцию Общие настройки (common_config) добавьте параметр KEY_DERIVATION_SERVICE_ADDRESS – адрес сервиса ключей. После этого примените настройки.
Пример настройки в config.yml:
KEY_DERIVATION_SERVICE_ADDRESS: '{{ protocol }}://{{ host_fqdn }}/KeyDerivation'
4.Запустите Диспетчер задач и проверьте, что в списке процессов появился установленный сервис Sungero.KeyDerivationService.Host.exe.
Следующие пункты выполняйте, если автоматическое создание секрета сервиса отключено.
5.Запустите командную строку и с помощью команды gen-new-secret сгенерируйте новый секрет сервиса:
do keyderivationservice gen-new-secret
Сокращенный вариант команды:
do kds gen-new-secret
6.Убедитесь, что в папке с секретами сервиса, которая указана в параметре SECRETS_PATH, появился файл с секретом. Названия файлов генерируются в формате:
<большое число>_<ИД секрета сервиса>_service_secret
7.Сохраните резервную копию папки с секретами сервиса.
ВАЖНО. Утеря секрета сервиса ведет к невозможности расшифровки всех документов, для шифрования которых использовался этот секрет.
© Компания Directum, 2024 |