Spec-Zone.ru › MySQL 5.7

17.6.2 Поддержка Secure Socket Layer (SSL) в Group Replication

Связи групповой коммуникации, а также связи восстановления, защищены с помощью SSL. В следующих разделах объясняется, как настроить соединения.

Настройка SSL для восстановления Group Replication

Восстановление выполняется через обычное асинхронное соединение репликации. После выбора донора сервер, присоединяющийся к группе, устанавливает асинхронное соединение репликации. Всё это происходит автоматически.

Однако, пользователю, которому требуется соединение SSL, необходимо было создать пользователя до того, как сервер присоединился к группе. Обычно это настраивается во время подготовки сервера к присоединению к группе.

donor> SET SQL_LOG_BIN=0;
donor> CREATE USER 'rec_ssl_user'@'%' REQUIRE SSL;
donor> GRANT replication slave ON *.* TO 'rec_ssl_user'@'%';
donor> SET SQL_LOG_BIN=1;

Предполагая, что у всех серверов, уже входящих в группу, настроен пользователь репликации для использования SSL, вы настраиваете сервер, присоединяющийся к группе, на использование этих учетных данных при подключении к донору. Это делается в соответствии со значениями параметров SSL, предоставляемых плагином Group Replication.

new_member> SET GLOBAL group_replication_recovery_use_ssl=1;
new_member> SET GLOBAL group_replication_recovery_ssl_ca= '.../cacert.pem';
new_member> SET GLOBAL group_replication_recovery_ssl_cert= '.../client-cert.pem';
new_member> SET GLOBAL group_replication_recovery_ssl_key= '.../client-key.pem';

И настройка канала восстановления для использования учетных данных пользователя, которому требуется соединение SSL.

new_member> CHANGE MASTER TO MASTER_USER="rec_ssl_user" FOR CHANNEL "group_replication_recovery";
new_member> START GROUP_REPLICATION;

Настройка SSL для групповой коммуникации

Для установления связи между членами группы могут использоваться защищенные сокеты. Настройка зависит от конфигурации SSL сервера. Таким образом, если на сервере настроена SSL, плагин Group Replication также настроен на SSL. Для получения дополнительной информации о настройке SSL сервера см. Параметры команд для зашифрованных соединений. Параметры, настраивающие Group Replication, показаны в следующей таблице.

Таблица 17.2 Параметры SSL

Таблица 17.2 Параметры SSL

Конфигурация сервера

Описание конфигурации плагина

ssl_key

Путь к файлу ключа. Используется в качестве сертификата клиента и сервера.

ssl_cert

Путь к файлу сертификата. Используется в качестве сертификата клиента и сервера.

ssl_ca

Путь к файлу с авторитетами сертификации SSL, которым доверяют.

ssl_capath

Путь к каталогу, содержащему сертификаты авторитетов сертификации SSL, которым доверяют.

ssl_crl

Путь к файлу, содержащему списки отзыва сертификатов.

ssl_crlpath

Путь к каталогу, содержащему списки отозванных сертификатов.

ssl_cipher

Разрешенные шифры для шифрования данных по соединению.

tls_version

Защищенное соединение использует эту версию и её протоколы.


Эти параметры являются параметрами конфигурации MySQL Server, на которых Group Replication основывается для своей конфигурации. Кроме того, есть следующий параметр Group Replication для настройки SSL в самом плагине.

  • group_replication_ssl_mode - определяет состояние безопасности соединения между членами Group Replication.

Таблица 17.3 Значения конфигурации group_replication_ssl_mode

Таблица 17.3 Значения конфигурации group_replication_ssl_mode

Значение

Описание

DISABLED

Установить незащищенное соединение (по умолчанию).

REQUIRED

Установить защищенное соединение, если сервер поддерживает защищенные соединения.

VERIFY_CA

Как REQUIRED, но дополнительно проверяет сертификат TLS сервера на соответствие с настроенными сертификатами Центра сертификации (CA).

VERIFY_IDENTITY

Как VERIFY_CA, но дополнительно проверяет, соответствует ли сертификат сервера хосту, к которому осуществляется подключение.


Следующий пример показывает пример раздела my.cnf, используемого для настройки SSL на сервере и активации его для Group Replication.

[mysqld]
ssl_ca = "cacert.pem"
ssl_capath = "/.../ca_directory"
ssl_cert = "server-cert.pem"
ssl_cipher = "DHE-RSA-AEs256-SHA"
ssl_crl = "crl-server-revoked.crl"
ssl_crlpath = "/.../crl_directory"
ssl_key = "server-key.pem"
group_replication_ssl_mode= REQUIRED

Единственный параметр конфигурации плагина, который указан, это group_replication_ssl_mode. Этот параметр активирует SSL-связь между членами группы, настроив фреймворк SSL с параметрами ssl_*, которые предоставляются серверу.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/group-replication-secure-socket-layer-support-ssl.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API