Пaраметр upstream_ssl#
Опциональные параметры:
ssl_useВкл./Откл. поддержка ssl/tls соединения для взаимодействия с upstream.
Тип параметра:
true;
false.
По умолчанию:
ssl_use: falsesspiВкл./Откл. режим GOST TLS.
Тип параметра:
true;
false.
По умолчанию:
sspi: falsessl_verify_local_crl_onlyВ случае режима GOST определяет, проверять ли статус сертификата локально (иначе проверка осуществляется онлайн).
Тип параметра: строковое значение.
on;
off.
Используется в случае:
sspi is not None;
sspi == True.
По умолчанию:
ssl_verify_local_crl_only: off ```ssl_verify_ignore_cnВ случае режима GOST определяет, необходимо ли пропускать проверку CN.
Тип параметра: строковое значение.
on;
off.
Используется в случае:
sspi is not None;
sspi == True.
По умолчанию:
ssl_verify_ignore_cn: offssl_session_reuseВ значении параметра определяется, можно ли повторно использовать сеансы ssl/tls при работе с проксируемым сервером.
Используется в случае:
ssl_use is not None.
Тип параметра:
on;
off.
По умолчанию:
ssl_session_reuse: onssl_protocolsВ значении параметра задается список разрешенных протоколов, согласованный с безопасностью.
Значение параметра
ssl_protocolsдолжно быть уникальным.Используется в случае:
ssl_use is not None.
Тип параметра:
SSLv2;
SSLv3;
TLSv1;
TLSv1.1;
TLSv1.2;
TLSv1.3.
По умолчанию:
ssl_protocols: - TLSv1 - TLSv1.1 - TLSv1.2ssl_ciphersВ значении параметра задаются разрешенные шифры для взаимодействия с проксируемым сервером https.
Более подробную информацию с описанием шифров и префиксов можно найти в документации OpenSSL.
Для настройки шифров в режиме SSPI = true необходимо обратиться к документации КриптоПро.
Используется в случае:
ssl_use is not None;
ssl_ciphers_str is None.
Тип параметра: последовательность параметров и их значения.
По умолчанию:
ssl_ciphers: - value: - "HIGH" - prefix: "!" value: - "aNULL" - prefix: "!" value: - "MD5"Обязательные параметры:
valueВ значении параметра определяется используемый шифр.
Значение параметра
valueдолжно быть уникальным.Тип параметра: список разрешенных значений, указанных в конфигураторе, приведен в разделе «Допустимые значения Ciphers_upstream_ssl».
По умолчанию: не имеет значения по умолчанию. Опциональные параметры:
prefixВ значении параметра определяется используемый префикс.
Тип параметра:
«!»;
«+»;
«-«.
По умолчанию: не имеет значения по умолчанию.
ssl_ciphers_strВ значении параметра задается строка включенных шифров для взаимодействия с проксируемым сервером https.
Используется в случае:
ssl_use is not None;
ssl_ciphers is None.
ssl_ciphers_str: HIGH:!aNULL:NULL-SHA256Тип параметра: строковое значение.
По умолчанию: не имеет значения по умолчанию.
ssl_nameВ значении параметра можно переопределить имя сервера, используемое для проверки сертификата проксируемого сервера https и его передачи через SNI при установлении соединения с проксируемым сервером https.
Здесь необходимо указать одно из следующих значений:
любое одно значение из SAN сертификата backend;
в случае, если SAN у сертификата backend не объявлено, указываем CN сертификата backend.
Существует возможность использовать внутренние переменные:
$upstream_server_name — имя сервера из конфигурационного файла «as is».
$upstream_server_host — имя хоста (без порта) из конфигурационного файла.
ssl_name: $upstream_server_hostИспользуется в случае:
ssl_use is not None;
ssl_verify: onТип параметра: строковое значение.
По умолчанию: не имеет значения по умолчанию.
ssl_name_verify_offВкл./Откл. проверки
ssl_name. Проверяется сертификат backend по критериям, указанным в параметре ssl_name (совпадение SAN или CN сертификата со значением, указанным в конфигурационном файле). Верификацию ssl_name следует отключать в случае, если backend работают с разными сертификатами и в них указаны разные SAN/CN (т.к. в таком случае непонятно какое значение указывать в ssl_name).В случае, если верификация отключена, для двустороннего ssl/tls обязательно использовать ssl_dn_verify_trusted_path. Если верификация не отключена, использование ssl_dn_verify_trusted_path необязательно.
Используется в случае:
ssl_use is not None;
ssl_verify: onТип параметра:
on;
off.
По умолчанию:
ssl_name_verify_off: offssl_name_verify_offВкл./Откл. проверки
ssl_name. Проверяется сертификат backend по критериям, указанным в параметре ssl_name (совпадение SAN или CN сертификата со значением, указанным в конфигурационном файле). Верификацию ssl_name следует отключать в случае, если backend работают с разными сертификатами и в них указаны разные SAN/CN (т.к. в таком случае непонятно какое значение указывать в ssl_name).В случае, если верификация отключена, для двустороннего ssl обязательно использовать ssl_dn_verify_trusted_path. Если верификация не отключена, использование ssl_dn_verify_trusted_path необязательно.
Используется в случае:
ssl_use is not None;
ssl_verify: onТип параметра:
on;
off.
По умолчанию:
ssl_name_verify_off: offssl_server_nameВкл./Откл. передачу имени сервера через расширение TLS Server Name Indication (SNI, RFC 6066) при установлении соединения с проксируемым сервером https.
Используется в случае:
ssl_use is not None.
Тип параметра:
on;
off.
По умолчанию:
ssl_server_name: offssl_verifyВкл./Откл. проверку сертификата проксируемого сервера https.
Используется в случае:
ssl_use is not None.
Тип параметра:
on;
off.
По умолчанию:
ssl_verify: offssl_verify_depthВ значении параметра устанавливается глубина проверки в цепочке сертификатов для проксируемого сервера https. Минимальное значение — «0».
Используется в случае:
ssl_use is not None.
Тип параметра: целочисленное значение.
По умолчанию:
ssl_verify_depth: 1ssl_verify_depthВ значении параметра устанавливается глубина проверки в цепочке сертификатов для проксируемого сервера https. Минимальное значение — «0».
Используется в случае:
ssl_use is not None.
Тип параметра: целочисленное значение.
По умолчанию:
ssl_verify_depth: 1ssl_trusted_certificateВ значении параметра задается файл с доверенными сертификатами ЦС в формате PEM, который используется для проверки сертификата проксируемого сервера https.
Используется в случае:
ssl_use is not None;
ssl_verify is not None.
Тип параметра: строковое значение.
По умолчанию: не имеет значения по умолчанию.
ssl_dn_verify_trusted_pathВ значении параметра задается файл с разрешенными регулярными выражениями для верификации DN сертификата backend/upstream. Все регулярные выражения DN из этого файла сопоставляются с DN сертификата backend/upstream.
Используется в случае:
ssl_use is not None;
ssl_verify: onТип параметра: строковое значение.
По умолчанию: Не имеет значения по умолчанию.
ssl_fingerprint_verify_trusted_pathВ значении параметра указывается файл с разрешенными fingerprint сертификата клиента.
Используется в случае:
ssl_use is not None;
ssl_verify: onТип параметра: строковое значение.
По умолчанию: не имеет значения по умолчанию.
ssl_verify_error_codeВ значении параметра задается код ответа, который будет возвращен пользователю, если проверки по DN и fingerprint выполнены неуспешно.
Используется в случае:
ssl_dn_verify_trusted_path is not None;
ssl_fingerprint_verify_trusted_path is not None.
Тип параметра: целочисленное значение.
ssl_crlВ значении параметра указывается файл с отозванными сертификатами (CRL) в формате PEM, который используется для проверки сертификата проксируемого сервера https.
Используется в случае:
ssl_use is not None.
Тип параметра: строковое значение.
По умолчанию: не имеет значения по умолчанию.
ssl_certificateВ значении параметра указывается файл с сертификатом в формате PEM, который используется для аутентификации на проксируемом сервере https.
Используется в случае:
ssl_use is not None.
Тип параметра: строковое значение.
По умолчанию: не имеет значения по умолчанию.
ssl_certificate_keyВ значении параметра указывается файл с секретным ключом в формате PEM (секретный ключ от клиентского сертификата SOWA), который используется для аутентификации на проксируемом сервере https.
Используется в случае:
ssl_use is not None.
Тип параметра: строковое значение.
По умолчанию: не имеет значения по умолчанию.
ssl_password_fileВ значении параметра задается файл с ключевыми фразами для секретных ключей, где каждая кодовая фраза указана в отдельной строке.
Используется в случае:
ssl_use is not None.
Тип параметра: строковое значение.
По умолчанию: не имеет значения по умолчанию.
Пример:
ssl_options:
ssl_use: true
ssl_protocols:
- TLSv1.2
ssl_ciphers:
- value:
- "HIGH"
- prefix: "!"
value:
- "aNULL"
- value:
- "NULL-SHA256"
ssl_certificate: server_dev.cer
ssl_certificate_key: server_dev.key
ssl_name: 'test-0005.example.ru'
ssl_trusted_certificate: ca_dev.cer
ssl_verify: 'on'
ssl_verify_depth: 2
ssl_dn_verify_trusted_path: verify_dn_trusted_path_one
ssl_fingerprint_verify_trusted_path: fingerprints.data