Kaspersky Security Center 15.1 Windows

Сценарий: аутентификация MySQL Server

Рекомендуется использовать TLS-сертификат для аутентификации сервера MySQL. Вы можете использовать сертификат доверенного центра сертификации (CA) или самоподписанный сертификат.

Сервер администрирования поддерживает как одностороннюю, так и двустороннюю SSL-аутентификацию для MySQL.

Включение односторонней SSL-аутентификации

Выполните следующие шаги, чтобы настроить одностороннюю SSL-аутентификацию для MySQL:

  1. Создание самоподписанного TLS-сертификата для сервера 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

    Найдите созданные сертификаты в папке Личное → Сертификаты и удалите их.

  2. Создайте файл флага сервера

    Запустите командную строку 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

  3. Настройте базу данных

    Укажите сертификаты в файле 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:

  1. Создайте файлы флага сервера

    Запустите командную строку 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

  2. Укажите парольную фразу (необязательно)

    Если server-key.pem требует кодовую фразу, создайте флаг KLSRV_MARIADB_OPT_TLS_PASPHRASE и укажите кодовую фразу в качестве его значения:

    klscflag -fset -pv klserver -n KLSRV_MARIADB_OPT_TLS_PASPHRASE -v <кодовая фраза> -t s

  3. Настройте базу данных

    Укажите сертификаты в файле my.cnf. Откройте файл my.cnf в текстовом редакторе и добавьте следующие строки в раздел [mysqld]:

    [mysqld]

    ssl-ca="...\ca-cert.pem"

    ssl-cert="...\server-cert.pem"

    ssl-key="...\server-key.pem"