Escenario: autenticación del servidor MySQL

Le recomendamos que utilice un certificado TLS para autenticar el servidor MySQL. Puede usar un certificado de una autoridad de certificación (AC) de confianza o un certificado autofirmado.

El Servidor de administración es compatible con la autenticación SSL unidireccional y bidireccional de MySQL.

Activación de la autenticación SSL unidireccional

Siga estos pasos para configurar la autenticación SSL unidireccional de MySQL:

  1. Genere un certificado TLS autofirmado para el servidor MySQL

    En PowerShell, cambie el directorio a la carpeta donde desea almacenar los certificados. Ejecute los siguientes comandos:

    $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

    Estos comandos crean certificados para el usuario actual y exportan los certificados al formato PEM. Solo necesita los archivos PEM exportados para autenticar el servidor. Para eliminar los certificados creados de Windows, ejecute el siguiente comando en PowerShell:

    certmgr.msc

    Busque los certificados creados en la carpeta Personal → Certificados y elimínelos.

  2. Cree un archivo de indicador del servidor

    Ejecute el símbolo del sistema de Windows utilizando derechos de administrador y, a continuación, cambie su directorio actual al directorio con la utilidad klscflag. La utilidad klscflag se encuentra en la carpeta donde está instalado el Servidor de administración. La ruta de instalación predeterminada es <Disk>:\Archivos de programa(x86)\Kaspersky Lab\Kaspersky Security Center.

    Con la utilidad klscflag, cree el indicador del servidor KLSRV_MYSQL_OPT_SSL_CA y especifique la ruta al certificado como su valor.

    klscflag -fset -pv klserver -n KLSRV_MYSQL_OPT_SSL_CA -v <ruta a ca-cert.pem> -t s

  3. Configure la base de datos

    Especifique los certificados en el archivo my.cnf. Abra el archivo my.cnf en un editor de texto y añada las siguientes líneas en la sección [mysqld]:

    [mysqld]

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

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

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

Activación de la autenticación SSL bidireccional

Siga estos pasos para configurar la autenticación SSL bidireccional de MySQL:

  1. Cree archivos de indicador del servidor

    Ejecute el símbolo del sistema de Windows utilizando derechos de administrador y, a continuación, cambie su directorio actual al directorio con la utilidad klscflag. La utilidad klscflag se encuentra en la carpeta donde está instalado el Servidor de administración. La ruta de instalación predeterminada es <Disk>:\Archivos de programa(x86)\Kaspersky Lab\Kaspersky Security Center.

    Con la utilidad klscflag, cree los indicadores del servidor y especifique la ruta a los archivos de certificado como sus valores:

    klscflag -fset -pv klserver -n KLSRV_MYSQL_OPT_SSL_CA -v <ruta a ca-cert.pem> -t s

    klscflag -fset -pv klserver -n KLSRV_MYSQL_OPT_SSL_CERT -v <ruta a server-cert.pem> -t s

    klscflag -fset -pv klserver -n KLSRV_MYSQL_OPT_SSL_KEY -v <ruta a server-key.pem> -t s

  2. Especificar la frase de contraseña (opcional)

    Si server-key.pem requiere una frase de contraseña, cree un indicador KLSRV_MARIADB_OPT_TLS_PASPHRASE y especifique la contraseña como su valor:

    klscflag -fset -pv klserver -n KLSRV_MARIADB_OPT_TLS_PASPHRASE -v <frase de contraseña> -t s

  3. Configure la base de datos

    Especifique los certificados en el archivo my.cnf. Abra el archivo my.cnf en un editor de texto y añada las siguientes líneas en la sección [mysqld]:

    [mysqld]

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

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

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

Principio de página