Назад | Перейти на главную страницу

Как настроить SSL-сертификаты с помощью пакета сертификатов?

Я пытаюсь установить зашифрованное соединение от клиента командной строки базы данных MySQL к экземпляру базы данных MySQL на AWS.

AWS предоставил комплект сертификатов, который, похоже, содержит все их сертификаты для всех их серверов.

Документы MySQL Создание сертификатов и ключей SSL с использованием OpenSSL говорит, что мне нужно это сделать:

(1) Создать сертификат CA

openssl genrsa 2048 > ca-key.pem

openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca.pem

(2) Создайте сертификат сервера, удалите кодовую фразу и подпишите ее.

server-cert.pem = открытый ключ

server-key.pem = закрытый ключ

openssl req -newkey rsa:2048 -days 3600 \
     -nodes -keyout server-key.pem -out server-req.pem

openssl rsa -in server-key.pem -out server-key.pem

openssl x509 -req -in server-req.pem -days 3600 \
     -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

(3) Создайте сертификат клиента, удалите кодовую фразу и подпишите его.

client-cert.pem = открытый ключ

client-key.pem = закрытый ключ

openssl req -newkey rsa:2048 -days 3600 \
        -nodes -keyout client-key.pem -out client-req.pem

openssl rsa -in client-key.pem -out client-key.pem

openssl x509 -req -in client-req.pem -days 3600 -CA  ca.pem \
     -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

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

у меня уже есть ca.pem (rds -comdated-ca-bundle.pem) из AWS.

Поэтому мне нужно пропустить шаги (1) и (2).

Есть ли у меня открытый ключ сервера ca-key.pem в пакете AWS?

Если да, как использовать его для выполнения шага (3)?

В Документы AWS - «Поддержка SSL для инстансов БД MySQL» особенно редки и просто говорят:

mysql -h myinstance.c9akciq32.rds-us-east-1.amazonaws.com
    -u my-user -p
    --ssl-ca=rds-combined-ca-bundle.pem --ssl-verify-server-cert

который должен запросить пароль, но просто зависает.

ОБНОВИТЬ

У меня уже настроено и работает соединение для MySQL Workbench и для пула соединений Java JDBC, а проверка работоспособности telnet показывает, что сервер MySQL доступен.

Вам не нужно создавать SSL-сертификаты самостоятельно, просто используйте предоставленные rds-combined-ca-bundle.pem в mysql параметры, как говорится в документации.

в конце концов, это не имеет отношения к сертификатам. Некоторые отчаянные поиски через SO дали ответ: Подключение к MySQL из Cygwin

Cygwin и клиент MySQL для Windows несовместимы.