MySQL и SSL с-sha256

Я пытаюсь создать некоторый сертификат для использования с MySQL, и все хорошо работает, если я использую sha1 алгоритм. Если я добавляю переключатель-sha256 или-sha384, я НЕ могу соединиться с MySQL!. Я получаю эту ошибку: ОШИБКА 2026 (HY000): ошибка соединения SSL: ASN: плохо другое подтверждение подписи

Я нашел подобный вопрос здесь, но принятое решение состояло в том, чтобы использовать-sha1. Я хочу использовать sha2, так как Microsoft, Google & Firefox не рекомендует использовать sha1 больше.

Это - то, что я использую для создания ключей. Если я удаляю переключатель-sha256, он хорошо работает с помощью sha1. Я также попробовал ключом на 2 048 битов, той же проблемой

openssl genrsa 4096 > ca-key.pem
openssl req -sha256 -new -x509 -nodes -days 10000 -key ca-key.pem -out ca-cert.pem

openssl req -sha256 -newkey rsa:4096 -days 10000 -nodes -keyout server-key.pem -out server-req.pem
openssl rsa -in server-key.pem -out server-key.pem
openssl x509 -req -sha256 -in server-req.pem -days 10000 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

openssl req -sha256 -newkey rsa:4096 -days 10000 -nodes -keyout client-key.pem -out client-req.pem
openssl rsa -in client-key.pem -out client-key.pem
openssl x509 -req -sha256 -in client-req.pem -days 10000 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

Сертификат проверяет без проблем

openssl verify -CAfile ca-cert.pem server-cert.pem client-cert.pem

Результат:

server-cert.pem: OK
client-cert.pem: OK

my.cnf

[mysqld]
ssl                       = On
ssl-cipher                = DHE-RSA-AES256-SHA
ssl-ca                    = /etc/mysql/ssl/ca-cert.pem
ssl-cert                  = /etc/mysql/ssl/server-cert.pem
ssl-key                   = /etc/mysql/ssl/server-key.pem

Использование MySQL 5.5.40

mysql>SELECT version()

5.5.40-0+wheezy1

Переменные SSL смотрят хорошо

mysql> show variables like '%ssl%';
Variable_name            Value
ssl_key                  /etc/mysql/ssl/server-key.pem
ssl_cipher               DHE-RSA-AES256-SHA
ssl_cert                 /etc/mysql/ssl/server-cert.pem
ssl_capath 
ssl_ca                   /etc/mysql/ssl/ca-cert.pem
have_ssl                 YES
have_openssl             YES

Версия Openssl

~ $  openssl version
OpenSSL 1.0.1e 11 Feb 2013
2
задан 13 April 2017 в 15:14
1 ответ

Я решил эту проблему.

Я получал сообщение об ошибке: ОШИБКА 2026 (HY000): Ошибка подключения SSL: ASN: неверное подтверждение другой подписи , когда я подключался к HeidiSQL версии 8.3.0.4694. Я не упомянул об этом, так как думал, что это не имеет отношения к делу.

Я попытался подключиться с помощью функций mysqli и ssl_set в PHP 5.6.2, и это сработало.

Значит, проблема не в MySQL. Затем я установил HeidiSQL 9.0.0.4865, и он безупречно соединился с сертификатом с использованием sha256

2
ответ дан 3 December 2019 в 11:40

Теги

Похожие вопросы