Рекомендуется использовать TLS-сертификат для аутентификации сервера MySQL. Вы можете использовать сертификат доверенного центра сертификации (CA) или самоподписанный сертификат.
Сервер администрирования поддерживает как одностороннюю, так и двустороннюю SSL-аутентификацию для MySQL.
Включение односторонней SSL-аутентификации
Выполните следующие шаги, чтобы настроить одностороннюю SSL-аутентификацию для MySQL:
Замените расположение в PowerShell на папку, где вы хотите хранить сертификаты. Выполните следующие команды:
$CertCA = New-SelfSignedCertificate `
-Subject "CN=CertCA" `
-CertStoreLocation "Cert:\CurrentUser\My" `
-HashAlgorithm "SHA256" `
-NotAfter (Get-Date).AddDays(365)
$CertCABase64 = [System.Convert]::ToBase64String($CertCA.RawData, [System.Base64FormattingOptions]::InsertLineBreaks)
$CertLeaf = New-SelfSignedCertificate `
-Subject "CN=CertLeaf" `
–Signer $CertCA `
-CertStoreLocation "Cert:\CurrentUser\My" `
-HashAlgorithm "SHA256" `
-KeyExportPolicy Exportable `
-NotAfter (Get-Date).AddDays(365)
$CertLeafBase64 = [System.Convert]::ToBase64String($CertLeaf.RawData, [System.Base64FormattingOptions]::InsertLineBreaks)
$CertLeafRSACng = [System.Security.Cryptography.X509Certificates.RSACertificateExtensions]::GetRSAPrivateKey($CertLeaf)
$CertLeafKeyBytes = $CertLeafRSACng.Key.Export([System.Security.Cryptography.CngKeyBlobFormat]::Pkcs8PrivateBlob)
$CertLeafKeyBase64 = [System.Convert]::ToBase64String($CertLeafKeyBytes, [System.Base64FormattingOptions]::InsertLineBreaks)
$CertCAPemCert = @"
-----BEGIN CERTIFICATE-----
$CertCABase64
-----END CERTIFICATE-----
"@
$CertLeafPemKey = @"
-----BEGIN PRIVATE KEY-----
$CertLeafKeyBase64
-----END PRIVATE KEY-----
"@
$CertLeafPemCert = @"
-----BEGIN CERTIFICATE-----
$CertLeafBase64
-----END CERTIFICATE-----
"@
# Output to file
$CertCAPemCert | Out-File -FilePath ca-cert.pem -Encoding Ascii
$CertLeafPemKey | Out-File -FilePath server-key.pem -Encoding Ascii
$CertLeafPemCert | Out-File -FilePath server-cert.pem -Encoding Ascii
Эти команды создают сертификаты для текущего пользователя и экспортируют сертификаты в формат PEM. Вам нужны только экспортированные файлы PEM для аутентификации Сервера. Чтобы удалить созданные сертификаты из Windows, выполните следующую команду в PowerShell:
certmgr.msc
Найдите созданные сертификаты в папке Личное → Сертификаты и удалите их.
Запустите командную строку Windows с правами администратора, а затем измените текущую директорию на директорию с утилитой klscflag. Утилита klscflag расположена в папке установки Сервера администрирования. Путь установки по умолчанию: <Диск>:\Program Files (x86)\Kaspersky Lab\Kaspersky Security Center.
С помощью утилиты klscflag создайте флаг сервера KLSRV_MYSQL_OPT_SSL_CA и укажите путь к сертификату в качестве его значения.
klscflag -fset -pv klserver -n KLSRV_MYSQL_OPT_SSL_CA -v <
путь к
ca-cert.pem> -t s
Укажите сертификаты в файле my.cnf. Откройте файл my.cnf в текстовом редакторе и добавьте следующие строки в раздел [mysqld]:
[mysqld]
ssl-ca="...\mysqlcerts\ca-cert.pem"
ssl-cert="...\mysqlcerts\server-cert.pem"
ssl-key="...\mysqlcerts\server-key.pem"
Включение двусторонней SSL-аутентификации
Выполните следующие шаги, чтобы настроить двустороннюю SSL-аутентификацию для MySQL:
Запустите командную строку Windows с правами администратора, а затем измените текущую директорию на директорию с утилитой klscflag. Утилита klscflag расположена в папке установки Сервера администрирования. Путь установки по умолчанию: <Диск>:\Program Files (x86)\Kaspersky Lab\Kaspersky Security Center.
С помощью утилиты klscflag создайте флаги сервера и укажите путь к файлам сертификатов в качестве их значений:
klscflag -fset -pv klserver -n KLSRV_MYSQL_OPT_SSL_CA -v <
путь к
ca-cert.pem> -t s
klscflag -fset -pv klserver -n KLSRV_MYSQL_OPT_SSL_CERT -v <
путь к
server-cert.pem> -t s
klscflag -fset -pv klserver -n KLSRV_MYSQL_OPT_SSL_KEY -v <
путь к
server-key.pem> -t s
Если server-key.pem требует кодовую фразу, создайте флаг KLSRV_MARIADB_OPT_TLS_PASPHRASE и укажите кодовую фразу в качестве его значения:
klscflag -fset -pv klserver -n KLSRV_MARIADB_OPT_TLS_PASPHRASE -v <
кодовая фраза
> -t s
Укажите сертификаты в файле my.cnf. Откройте файл my.cnf в текстовом редакторе и добавьте следующие строки в раздел [mysqld]:
[mysqld]
ssl-ca="...\ca-cert.pem"
ssl-cert="...\server-cert.pem"
ssl-key="...\server-key.pem"