CLI¶
Обзор¶
SSL-профили и SNI-профили используются в системе балансировки нагрузки для настройки обработки соединений TLS/SSL. Они определяют, какие сертификаты, протоколы и алгоритмы шифрования должны использоваться при установке frontend-соединений (между клиентом и ADC) и backend-соединений (между ADC и Worker).
SSL-профиль поддерживает такие функции, как:
TLS-терминация
Выбор сертификата на основе SNI
Проверка клиентского сертификата (mTLS)
Управление версией TLS и шифрами
Безопасное взаимодействие с backend-серверами
Использование на frontend¶
SSL-профили на frontend используются для:
TLS-терминация и выбор сертификата. ADC принимает зашифрованные соединения и расшифровывает их на уровне приложения. SSL-профили определяют, какой сертификат используется — либо по умолчанию, либо выбранный на основе имени хоста SNI, предоставленного клиентом.
mTLS-аутентификация. Если включена, профиль принудительно проверяет клиентский сертификат с использованием доверенной цепочки сертификатов удостоверяющего центра (CA). Это обычно требуется для безопасных API или интеграций с корпоративными партнёрами.
Управление версией TLS и шифрами. SSL-профили позволяют ограничивать или требовать использование конкретных версий TLS (например, отключение TLS 1.0) и контролировать разрешённые наборы шифров, что повышает совместимость и соответствие политикам безопасности.
Поддержка доменных политик TLS. SNI-профили можно привязать для сопоставления отдельных доменных имён с разными сертификатами, доверенными цепочками CA и настройками TLS — полезно для multi-tenant или многодоменных развёртываний.
Чтобы применить SSL-профили на frontend, назначьте их сервису.
Использование на backend¶
SSL-профили на backend используются, когда ADC подключается к backend-серверам по протоколу TLS. Они поддерживают:
Сквозное шифрование. Обеспечивает шифрование данных не только между клиентом и ADC, но и между ADC и backend-сервером.
Проверка сертификатов backend-серверов. SSL-профиль позволяет ADC проверять сертификат backend-сервера по доверенной цепочке CA, обеспечивая взаимодействие только с доверенными системами.
Представление клиентских сертификатов (mTLS). ADC может представить свой сертификат при подключении к backend-сервисам, требующим mTLS-аутентификации.
Управление версиями TLS и шифрами. Backend SSL-профили позволяют контролировать, какие версии TLS и какие наборы шифров разрешены, даже во внутренних коммуникациях.
Для применения SSL-профилей на backend назначьте их Target-группам или отдельным Workers для детального управления.
Настройка¶
SSL-профиль¶
- vlb ssl-profile NAME¶
Создать SSL-профиль.
После создания можно настроить следующие параметры в SSL-профиле:
- ca-chain NAME¶
Доверенная цепочка CA для сквозного шифрования.
- ca-verify NAME¶
Цепочка сертификатов для проверки Worker.
- certificate NAME¶
Клиентский сертификат для Worker (используется в настройках mTLS).
- cert-chain NAME¶
Дополнительная цепочка сертификатов, отправляемая вместе с SSL-сертификатом. Используется для корректного представления цепочки.
- cipher SUITE_LIST¶
Разрешённые шифры (TLS 1.0–1.2):
aes128-gcm-sha256 aes128-sha aes128-sha256 aes256-gcm-sha384 aes256-sha256 dhe-rsa-aes128-gcm-sha256 dhe-rsa-aes128-sha dhe-rsa-aes128-sha256 dhe-rsa-aes256-gcm-sha384 dhe-rsa-aes256-sha dhe-rsa-aes256-sha256 dhe-rsa-chacha20-poly1305 ecdhe-ecdsa-aes128-gcm-sha256 ecdhe-ecdsa-aes128-sha ecdhe-ecdsa-aes128-sha256 ecdhe-ecdsa-aes256-gcm-sha384 ecdhe-ecdsa-aes256-sha ecdhe-ecdsa-aes256-sha384 ecdhe-ecdsa-chacha20-poly1305 ecdhe-rsa-aes128-gcm-sha256 ecdhe-rsa-aes128-sha ecdhe-rsa-aes128-sha256 ecdhe-rsa-aes256-gcm-sha384 ecdhe-rsa-aes256-sha ecdhe-rsa-aes256-sha384 ecdhe-rsa-chacha20-poly1305
- cipher expression STRING¶
Разрешённые шифры через STRING. Например:
trafficsoft(vlb-ssl-profile)# cipher expression ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384
- ciphersuites {tls_aes_128_gcm_sha256|tls_aes_256_gcm_sha384|tls_chacha20_poly1305_sha256}¶
Разрешённые наборы шифров (TLS 1.3).
- ciphersuites expression STRING¶
Разрешённые наборы шифров через STRING.
- client-certificate NAME¶
Клиентский сертификат для Worker (используется в соединениях mTLS).
- max-protocol {ssl3|tls1|tls1_1|tls1_2|tls1_3}¶
Максимальная версия криптографического протокола.
- min-protocol {ssl3|tls1|tls1_1|tls1_2|tls1_3}¶
Минимальная версия криптографического протокола.
- no-verify-worker¶
Пропустить проверку сертификата Worker.
- servername NAME certificate NAME¶
Server Name Indication и связанный сертификат для TLS-соединений.
- sni-profile NAME¶
Один или несколько дополнительных SNI-профилей для расширения обработки сертификатов на основе SNI.
- verify-client {off|on|optional}¶
Режим проверки клиентского сертификата:
off— не проверять (по умолчанию)on— требовать и проверять клиентский сертификат с использованием цепочки CAoptional— проверять, если предоставлен
- verify-depth (1-16)¶
Глубина проверки Worker.
SNI-профиль¶
SNI-профили (Server Name Indication Profile) расширяют логику frontend, сопоставляя доменные имена с конкретными сертификатами и настройками TLS.
Примечание
SNI-профиль сам по себе неактивен. Он должен быть привязан к SSL-профилю, чтобы вступить в силу, либо на frontend-соединении (клиентская сторона), либо на backend-соединении (исходящее), в зависимости от того, где применяется SSL-профиль.
- vlb sni-profile NAME¶
Создать SNI-профиль.
После создания можно настроить следующие параметры в SNI-профиле:
- ca-chain NAME¶
Доверенная цепочка CA для сквозного шифрования.
- cert-chain NAME¶
Дополнительная цепочка сертификатов, отправляемая вместе с SSL-сертификатом из записи servername. Используется для корректного представления цепочки, а не для проверки доверия.
- ciphersuites {tls_aes_128_gcm_sha256|tls_aes_256_gcm_sha384|tls_chacha20_poly1305_sha256}¶
Разрешённые наборы шифров (TLS 1.3).
- ciphersuites expression STRING¶
Разрешённые наборы шифров через STRING.
- max-protocol {ssl3|tls1|tls1_1|tls1_2|tls1_3}¶
Максимальная версия криптографического протокола.
- min-protocol {ssl3|tls1|tls1_1|tls1_2|tls1_3}¶
Минимальная версия криптографического протокола.
- servername NAME certificate NAME¶
Server Name Indication и связанный сертификат для TLS-соединений.
Show-команды¶
- show vlb ssl-profile NAME¶
Показать информацию об указанном SSL-профиле.
Пример вывода:
trafficsoft# show vlb ssl-profile ssl_profile1 SSL profile ssl_profile1 docs.trafficsoft.ru: cert (build cert chain OK) trafficsoft.ru: cert + ca-chain (build cert chain OK) Profile statistics: handshakes: Default 0 Worker 0 docs.trafficsoft.ru 0 trafficsoft.ru 0
Привязки сертификатов:
docs.trafficsoft.ru: cert (build cert chain OK)— сертификат настроен для доменаdocs.trafficsoft.ru. Цепочка сертификатов успешно построена без дополнительной цепочки CA, что означает, что она либо самодостаточна, либо промежуточные сертификаты встроены.trafficsoft.ru: cert + ca-chain (build cert chain OK)— сертификат настроен для доменаtrafficsoft.ruвместе с отдельной цепочкой CA. Полная цепочка сертификатов успешно построена.
Это подтверждает, что оба имени серверов корректно связаны с действительными и полными цепочками сертификатов, которые будут представлены клиентам во время TLS-рукопожатия.
Статистика рукопожатий:
Default— количество TLS-рукопожатий, где не было предоставлено SNI или не было найдено совпадение.Worker— TLS-рукопожатия, инициированные ADC к backend-серверам с использованием этого профиля.docs.trafficsoft.ru/trafficsoft.ru— количество рукопожатий, где клиент запросил соответствующий SNI.