Тип cервиса GostProxy#
В контексте service объявляется соответствующий тип сервиса service_gost_proxy:
service:
service_gost_proxy:
Общая логика заполнения выглядит следующим образом:
TLS → GOST TLS
Если требует клиентское подключение к ГОСТ сервису:
Для слушателя SOWA — настраивается service_http_proxy, согласно общим правилам из его документации. Для перенаправления потока в ГОСТ proxy - создается второй сервис типа service_gost_proxy. В директиве listen которого указывается тип encryption: gost, затем в следующей вложенной директиве proxy указывается сервер, на который будут перенаправляться запросы, а также ГОСТовые хранилища ключей.
GOST TLS → TLS
Если требует определить сову как сервер, к которому будет устанавливаться ГОСТ подключение:
Для ГОСТ слушателя SOWA — настраивается сервис service_gost_proxy, у которого в директиве listen выставляется порт, encryption: gost, а так же ГОСТовые хранилища ключей.
Для перенаправления потока в обычный proxy — создается второй сервис service_http_proxy, который настраивается согласно общим правилам из его документации.
GOST TLS→ GOST TLS
Если требуется ГОСТ с обеих сторон, для ГОСТ слушателя SOWA — настраивается сервис service_gost_proxy, у которого в директиве listen выставляется порт, encryption: gost, а так же ГОСТовые хранилища ключей.
Для перенаправления потока в ГОСТ proxy — создается второй сервис типа
service_gost_proxy. В директивеlistenкоторого указывается типencryption: gost, затем в следующей вложенной директивеproxyуказывается сервер, на который будут перенаправляться запросы, а так же ГОСТовые хранилища ключей.Затем создается сервис
service_http_proxy, через upstream которого соединяются два ГОСТовых сервиса.
Сервис представляет собой последовательность, включающую в себя следующие параметры:
Обязательные параметры:
idИдентификатор сервиса в контексте всего профиля. Используется, например, в названии директории и других системных файлах, хранящих информацию о сервисе.
Значение параметра
idдолжно быть уникальным.Идентификатор может быть строкой, числом, или их комбинацией. В качестве разделителя слов необходимо использовать знак нижнее подчеркивание « _ «.
Количество сервисов не ограничено конфигуратором явно.
- id: 1 ... - id: my_service_one ...Тип параметра: текстовое значение.
passwords_pathОтносительный путь до файла с паролями для SOWA.
Пример заполнения:
server.gost.truststore.password=testCon2 server.gost.keystore.password=testCon2 client.gost.truststore.password=testCon2 server.rsa.truststore.password=123456 server.rsa.keystore.password=123456 client.rsa.keystore.password=123456 client.rsa.truststore.password=123456Путь задается относительно /sowa/profile_storage/custom/ИМЯ_ПРОФИЛЯ/
При выполнении конфигурирования (sowa-config –config) вырезает файл с паролями из данного каталога и вставляет в закрытый раздел совы.
Тип параметра: текстовое значение.
listenПараметры последовательности
listen, типа сервиса GostProxy, позволяют «слушать» входящее соединение.Последовательность, включающая в себя параметры, описанные в разделе «GostProxy - listen».
Тип параметра: последовательность параметров и их значения.
Опциональные параметры:
nameТехнологическое название сервиса, используемое для идентификации сервиса в логах транзакций.
Значение параметра
nameдолжно быть уникальным.Обязательно в случае:
optional: event_hook: ...Тип параметра: строковое значение.
По умолчанию: Не имеет значения по умолчанию.
profile_versionВ значении параметра определяется версия профиля данного сервиса.
Тип параметра: текстовое значение.
По умолчанию: не имеет значения по умолчанию.
descriptionПараметр предназначен для хранения строки с описанием сервиса.
Значение параметра
descriptionне является уникальным.Тип параметра: текстовое значение.
По умолчанию: не имеет значения по умолчанию.
optionalГруппа optional используется в сервисе для:
вызова различных таймаутов;
ограничения по размеру Xms и Xmx jvm;
и др.
Группа, включающая в себя параметры, описанные в разделе «GostProxy - optional».
Тип параметра: группа параметров и их значения.
По умолчанию: не имеет значения по умолчанию.
GоstProxy - listen#
Параметры последовательности listen типа сервиса GostProxy позволяют «слушать» входящее соединение.
Обязательные параметры:
proxyТип параметра: группа параметров и их значения.
Опциональные параметры:
service_idВ значении параметра указывается идентификатор сервиса.
Обязательно в случае:
server is None; listen: - port is not None.Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
service_typeВ значении параметра указывается тип сервиса.
Обязательно в случае:
service_idis not None.
Тип параметра: текстовое значение.
service_main_proxy;
service_http_proxy;
service_http_kafka_proxy;
service_http_mq_proxy;
service_gost_proxy.
По умолчанию: значение задается пользователем.
serverВ значении параметра определяется сервер для отправки запросов (значение задается регулярным выражением (url).
Обязательно в случае:
serveris None;listen:
port is not None.
Или listen:
encryption: rsa.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
truststoreВ значении параметра задается путь к файлу с доверенными сертификатами ЦС в формате PEM.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
keystoreВ значении параметра указывается путь к файлу с секретным ключом в формате PEM.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
Опциональные параметры:
portВ значение параметра указывается порт, который будет «слушать» входящее соединение.
Значение параметра
portдолжно быть уникальным.Обязательно в случае:
encryption: rsa.
Тип параметра: целочисленное значение от 0 до 65535.
По умолчанию: значение задается пользователем.
encryptionВ значении параметра определяется тип шифрования.
Тип параметра: текстовое значение.
gost;
rsa.
По умолчанию:
encryption: gosttruststoreВ значении параметра задается путь к файлу с доверенными сертификатами ЦС в формате PEM.
Обязательно в случае:
portis not None.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
keystoreВ значении параметра указывается путь к файлу с секретным ключом в формате PEM.
Обязательно в случае:
portis not None.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
hostВ значении параметра определяется хедер Host для отправки запроса на backend.
Тип параметра: текстовое значение.
По умолчанию: в качестве значения по умолчанию используется hostname из URL параметра proxy/server.
aliasВ значении параметра определяется alias для контейнера ключей.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
optionalТип параметра: группа параметров и их значения.
По умолчанию: значение задается пользователем.
Опциональные параметры:
socket_max_concurrent_connectionsВ значении параметра устанавливается максимальное количество одновременных соединений для сокета сервера.
Используется в случае:
listen: - port is None.Тип параметра: целочисленное значение.
По умолчанию:
socket_max_concurrent_connections: 10socket_timeoutВ значении параметра устанавливается время ожидания сокета сервера.
Используется в случае:
listen: - port is None.Тип параметра: целочисленное значение.
По умолчанию:
socket_timeout: 1000socket_busy_timeoutВ значении параметра устанавливается время ожидания в случае, если сервер занят.
Используется в случае:
listen: - port is None.Тип параметра: целочисленное значение.
По умолчанию:
socket_busy_timeout: 1000provider(deprecated)ГОСТ провайдер определяется настройками инсталляции плагина ГОСТ прокси, данный параметр не используется и будет удален в последующих релизах
Используется в случае:
listen: - encryption== 'gost'.Тип параметра: текстовое значение.
JCP;
JCSP.
По умолчанию:
provider: JCP
GоstProxy - optional#
Опциональные параметры:
xmxВ значении параметра устанавливается Xmx для jvm.
Тип параметра: текстовое значение с суффиксом:
число без суффикса — байты;
k / K — килобайты;
m / M — мегабайты.
По умолчанию:
xmx: 64mxmsВ значении параметра устанавливается Xms для jvm.
Тип параметра: текстовое значение с суффиксом:
число без суффикса — байты;
k / K — килобайты;
m / M — мегабайты.
По умолчанию:
xms: 32mjvm_optionsСписок JVM-опций для запуска сервиса. Опции, начинающиеся с Xmx и Xms игнорируются, так как для этого есть два предыдущих параметра. Каждая опция должна записываться в одну строку и не содержать специальных символов (табуляция, перевод строки). Опции, содержащие пробелы, автоматически экранируются, дополнительно проставлять кавычки не нужно.
Тип параметра:
jvm_options: - -Doption.one=some - -Dcucumber.tags=@case_one and (@case_two or @deploy)По умолчанию: не задается ни каких дополнительных jvm-опций.
log_levelВ значении параметра переопределяется уровень логирования для сервиса.
Тип параметра:
debug;
info;
notice;
warn;
error;
crit;
alert;
off.
По умолчанию: значение параметра наследуется от значения в system.
headers_xff_policyПолитика обработки XFF (X-FORWARDED-FOR) заголовка:
rewrite — Перезаписываем заголовок, даже если он существует.
save — Оставляем заголовки как есть
Тип параметра: текстовое значение.
rewrite;
save.
По умолчанию: сохраняются все заголовки.
headers_xrp_policyПолитика обработки XRP (X-REAL-IP) заголовка:
rewrite — Перезаписываем заголовок, даже если он существует.
save — Оставляем заголовки как есть
Тип параметра: текстовое значение.
rewrite;
save.
По умолчанию: сохраняются все заголовки.
keepalive_timeoutВ значении параметра указывается таймаут, в течение которого keep-alive соединение с клиентом не будет закрыто со стороны сервера.
Тип параметра: текстовое значение с суффиксом:
ms — миллисекунда;
s — секунда;
m — минута;
h — час;
d — день;
w — неделя;
M — месяц (30 дней);
y — год (365 дней).
По умолчанию:
keepalive_timeout: 75sproxy_connect_timeoutВ значении параметра задается таймаут для установления соединения с proxy-service.
Тип параметра: текстовое значение с суффиксом:
ms — миллисекунда;
s — секунда;
m — минута;
h — час;
d — день;
w — неделя;
M — месяц (30 дней);
y — год (365 дней).
По умолчанию:
proxy_connect_timeout: 60sproxy_connect_timeoutВ значении параметра задается таймаут для установления соединения с proxy-service.
Тип параметра: текстовое значение с суффиксом:
ms — миллисекунда;
s — секунда;
m — минута;
h — час;
d — день;
w — неделя;
M — месяц (30 дней);
y — год (365 дней).
По умолчанию:
proxy_connect_timeout: 60sproxy_read_timeoutВ значении параметра задается таймаут при чтении ответа proxy-service.
Тип параметра: текстовое значение с суффиксом:
ms — миллисекунда;
s — секунда;
m — минута;
h — час;
d — день;
w — неделя;
M — месяц (30 дней);
y — год (365 дней).
По умолчанию:
proxy_read_timeout: 60sproxy_read_timeoutВ значении параметра задается таймаут при чтении ответа proxy-service.
Тип параметра: текстовое значение с суффиксом:
ms — миллисекунда;
s — секунда;
m — минута;
h — час;
d — день;
w — неделя;
M — месяц (30 дней);
y — год (365 дней).
По умолчанию:
proxy_read_timeout: 60sproxy_connections_limitВ значении параметра определяется максимальное количество соединений.
Тип параметра: целочисленное значение.
По умолчанию:
proxy_connections_limit: 50proxy_host_connections_limitВ значении параметра определяется максимальное количество соединений для хоста.
Тип параметра: целочисленное значение.
По умолчанию:
proxy_host_connections_limit: 50