Тип 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_id is not None.
Тип параметра: текстовое значение.
service_main_proxy;
service_http_proxy;
service_http_kafka_proxy;
service_http_mq_proxy;
service_gost_proxy.
По умолчанию: значение задается пользователем.
server
В значении параметра определяется сервер для отправки запросов (значение задается регулярным выражением (url).
Обязательно в случае:
server is 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.
Обязательно в случае:
port is not None.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
keystore
В значении параметра указывается путь к файлу с секретным ключом в формате PEM.
Обязательно в случае:
port is not None.
Тип параметра: текстовое значение.
По умолчанию: значение задается пользователем.
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: 1000
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