Установка и использование платформы
Тонкая настройка платформы: настройка 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.