Установка и использование платформы
Тонкая настройка платформы: настройка TLS¶
Для работы с TLS, помимо его включения в конфигурационном файле ноды, необходимо получить файл keystore при помощи стандартной утилиты keytool:
keytool \
-keystore we.jks -storepass 123456 -keypass 123456 \
-genkey -alias we -keyalg RSA -validity 9999 \
-dname "CN=Waves Enterprise,OU=security,O=WE,C=RU" \
-ext "SAN=DNS:welocal.dev,DNS:localhost,IP:51.210.211.61,IP:127.0.0.1"
keystore- имя файла keystore.storepass- пароль от keystore, указывается в конфиге в секции keystore-password.keypass- пароль от приватного ключа, указывается в конфиге в секции private-key-password.alias- произвольное имя.keyalg- алгоритм генерации ключевой пары.validity- срок действия в днях.dname- уникальное имя по стандарту X.500, связанное с alias в keystore.ext- расширения, применяемые при генерации ключа, указываются все возможные имена хостов и IP-адреса для работы сертификата в различных сетях.
В результате работы keytool будет получен keystore с именем we.jks. Чтобы подключиться к ноде с включенным TLS, также необходимо выпустить клиентский сертификат:
keytool -export -keystore we.jks -alias we -file we.cert
Полученный файл сертификата we.cert необходимо импортировать в хранилище доверенных сертификатов.
При работе ноды в одной сети с пользователем, достаточно указать относительный путь к файлу we.jks в файле конфигурации ноды, как это показано выше.
В случае, если нода находится в другой сети, импортируйте сертификат we.cert в keystore:
keytool -importcert -alias we -file we.cert -keystore we.jks
Затем также укажите относительный путь к we.jks в секции tls файла конфигурации ноды.
Секция tls содержит следующие параметры:
tls {
type = EMBEDDED
keystore-path = ${node.directory}"/we_tls.jks"
keystore-password = ${TLS_KEYSTORE_PASSWORD}
private-key-password = ${TLS_PRIVATE_KEY_PASSWORD}
}
type- состояние режима TLS. Возможные опции:DISABLED(отключен, в этом случае остальные опции не указываются или комментируются) иEMBEDDED(включен, сертификат подписывается провайдером ноды и упаковывается в JKS-файл (keystore) - при этом директория, в которой располагается сертификат, и параметры доступа к сертификату и keystore указывается пользователем вручную в последующих полях).keystore-path- относительный путь к keystore, размещаемому в директории ноды:${node.directory}"/we_tls.jks".keystore-password- пароль для keystore. Укажите пароль, который вы задали ранее флагомstorepassдля утилиты keytool.private-key-password- пароль для приватного ключа. Укажите пароль, который вы задали ранее флагомkeypassдля утилиты keytool.