4.4 Настройка TLS
Этот раздел является черновиком и может быть изменён.
По умолчанию:
client_ssl_mode = PREFERRED
server_ssl_mode = AS_CLIENT
Это устанавливает TLS-соединения между клиентом и маршрутизатором, если клиент хочет переключиться на TLS, а сервер поддерживает TLS. Это также соответствует существующему поведению для клиента и сервера без маршрутизатора между ними.
Настройка конечной точки TLS
MySQL Router принимает TLS-сессию и открывает новую TLS-сессию для сервера. Например:
client <-> router // TCP
router <-> server // TCP
client <-> router // TLS
router <-> server // TLS
Чтобы принять TLS-сессию от клиента, маршрутизатор должен представить клиенту TLS с сертификатом, используя client_ssl_cert и client_ssl_key.
Чтобы подключить TLS-сессию к серверу, маршрутизатор проверяет сертификаты сервера, используя server_ssl_verify server_ssl_verify server_ssl_ca server_ssl_capath server_ssl_crl и server_ssl_crlpath.
Протоколы подключения TLSv1 и TLSv1.1 устарели, начиная с MySQL Router 8.0.26, и их поддержка может быть удалена в будущей версии.
Режимы SSL
Поскольку существует две TLS-сессии (между клиентом и маршрутизатором; маршрутизатором и сервером), может быть также два независимых состояния соединения.
Оба client_ssl_mode и server_ssl_mode принимают значения DISABLED, PREFERRED или REQUIRED. Кроме того, server_ssl_mode принимает значение AS_CLIENT, а client_ssl_mode принимает значение PASSTHROUGH.
DISABLED: Маршрутизатор не предлагает шифрование клиенту, и клиент не может переключить соединение клиент-маршрутизатор на TLS. Клиент может прервать соединение, если ему необходимо переключиться на TLS.PREFERRED(по умолчанию): Маршрутизатор принимает TLS-соединение от клиента, но также согласен, если клиент не переключается на шифрование.REQUIRED: Маршрутизатор принимает TLS-соединение от клиента и завершит соединение, если оно не переключится на TLS до завершения аутентификации.PASSTHROUGH: Означает «передать все серверу» и позволяет клиенту и серверу самим решить, хотят ли они переключаться на TLS или нет. Это было поведением по умолчанию до Router 8.0.23 и принимается толькоclient_ssl_mode.AS_CLIENT(по умолчанию): если соединение клиент-маршрутизатор зашифровано, то зашифруйте также соединение маршрутизатор-сервер, в противном случае — нет. Этот параметр принимается толькоserver_ssl_mode.
Дополнительные связанные параметры
Параметр server_ssl_verify разделяет 'VERIFY_CA' и 'VERIFY_IDENTITY' от 'ssl_mode', который известен клиенту MySQL и серверу MySQL. В случае MySQL-клиента VERIFY_CA означает ssl_mode=REQUIRED и проверку CA|IDENTITY. В случае Router, Router проверяет сертификаты независимо от server_ssl_mode; вместо этого он основывается исключительно на том, зашифровано ли соединение, и если server_ssl_verify не установлено в значение DISABLED, в этом случае он проверяется.
Дополнительные параметры включают server_ssl_dh_params, client_ssl_dh_params, server_ssl_dh_params, client_ssl_dh_params, server_ssl_curves и client_ssl_curves.
Все параметры маршрутизации и дополнительная информация доступны по адресу Параметры маршрутизации.
© 2025 Oracle
Licensed under the GPLv2 License.