Estou recebendo o erro de conexão SSL: não é possível obter a chave privada

2
  • CA (este é um certificado intermediário) Chave privada ECDSA
  • SERVER-CERT derivado da CA - chave privada ECDSA
  • CLIENT-CERT derivado de CA - chave privada ECDSA

Estou usando a chave privada ECDSA (certificado de cliente) e um certificado para estabelecer uma conexão SSL com o banco de dados MYSQL. A chave é menos passphrase (não criptografada)

Para descriptografar a chave privada:

openssl ec -in db_key1.pem -out db_key.pem

O usuário recebe SSL REQUIRE:

GRANT ALL PRIVILEGES ON *.* TO 'ssluser'@'%' IDENTIFIED BY 'secret' REQUIRE SSL;
FLUSH PRIVILEGES;

Quando me conecto com o seguinte comando:

mysql --verbose  --ssl-ca=root.pem  --ssl-cert=db.pem --ssl-key=db_key.pem --host database --port 3306 -u ssluser -p

Estou recebendo o seguinte erro:

ERROR 2026 (HY000): SSL connection error: Unable to get private key

Meu palpite inicial era de que a permissão adequada não estava definida para esses arquivos e, em seguida, adicionei esses arquivos a mysql:mysql . Mas ainda estou recebendo o mesmo erro.

O MYSQL está apenas suportando o RSA ou suporta o ECDSA. E a maior parte da documentação é baseada no RSA.

Na documentação , posso ver as seguintes cifras são suportados.

ECDHE-ECDSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES128-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-ECDSA-AES256-SHA384
ECDHE-RSA-AES256-SHA384
DHE-RSA-AES128-GCM-SHA256
DHE-DSS-AES128-GCM-SHA256
DHE-RSA-AES128-SHA256
DHE-DSS-AES128-SHA256
DHE-DSS-AES256-GCM-SHA384
DHE-RSA-AES256-SHA256
DHE-DSS-AES256-SHA256
ECDHE-RSA-AES128-SHA
ECDHE-ECDSA-AES128-SHA
ECDHE-RSA-AES256-SHA
ECDHE-ECDSA-AES256-SHA
DHE-DSS-AES128-SHA
DHE-RSA-AES128-SHA
TLS_DHE_DSS_WITH_AES_256_CBC_SHA
DHE-RSA-AES256-SHA
AES128-GCM-SHA256
DH-DSS-AES128-GCM-SHA256
ECDH-ECDSA-AES128-GCM-SHA256
AES256-GCM-SHA384
DH-DSS-AES256-GCM-SHA384
ECDH-ECDSA-AES256-GCM-SHA384
AES128-SHA256
DH-DSS-AES128-SHA256
ECDH-ECDSA-AES128-SHA256
AES256-SHA256
DH-DSS-AES256-SHA256
ECDH-ECDSA-AES256-SHA384
AES128-SHA
DH-DSS-AES128-SHA
ECDH-ECDSA-AES128-SHA
AES256-SHA
DH-DSS-AES256-SHA
ECDH-ECDSA-AES256-SHA
DHE-RSA-AES256-GCM-SHA384
DH-RSA-AES128-GCM-SHA256
ECDH-RSA-AES128-GCM-SHA256
DH-RSA-AES256-GCM-SHA384
ECDH-RSA-AES256-GCM-SHA384
DH-RSA-AES128-SHA256
ECDH-RSA-AES128-SHA256
DH-RSA-AES256-SHA256
ECDH-RSA-AES256-SHA384
ECDHE-RSA-AES128-SHA
ECDHE-ECDSA-AES128-SHA
ECDHE-RSA-AES256-SHA
ECDHE-ECDSA-AES256-SHA
DHE-DSS-AES128-SHA
DHE-RSA-AES128-SHA
TLS_DHE_DSS_WITH_AES_256_CBC_SHA
DHE-RSA-AES256-SHA
AES128-SHA
DH-DSS-AES128-SHA
ECDH-ECDSA-AES128-SHA
AES256-SHA
DH-DSS-AES256-SHA
ECDH-ECDSA-AES256-SHA
DH-RSA-AES128-SHA
ECDH-RSA-AES128-SHA
DH-RSA-AES256-SHA
ECDH-RSA-AES256-SHA
DES-CBC3-SHA

E eu tentei definir o --ssl-cipher='ECDHE-ECDSA-AES128-GCM-SHA256' no meu comando mysql

    
por Diyoda_ 01.12.2017 / 06:26

1 resposta

0

Acontece que este é um bug / limitação no servidor MySQL.

    
por 09.12.2017 / 22:29