3

Я расскажу, что могу подключиться к экземпляру DB, когда я не пытаюсь переходить через SSL.Ошибка соединения SSL при попытке подключения к mysql Aurora через mysql CLI

Я следую это руководство здесь

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Connect.html

Я обеспечил экземпляр БД является публичной облицовочный.

Группа безопасности СИЗ имеет следующие правила:

Type Protocol Port Range Source 
MySQL/Aurora (3306) TCP (6) 3306 my_ip_address/32 
MySQL/Aurora (3306) TCP (6) 3306 sg-security_group_name 

Где security_group_name является группа безопасности для моего EC2 кластера.

Я использую конечную точку cluser моего кластера полярных сияний. И я удалил порт. Я установил mysql на свою машину, используя homebrew. Это команда, которую я пытаюсь из моей локальной машине (MacBook):

mysql -h blah-database-cluster.cluster-dfgdgfd.us-east-1.rds.amazonaws.com --ssl-ca=rds-ssl-ca-cert.pem --ssl-verify-server-cert 

Где выстр-SSL-ча-cert.pem является файл я скачал отсюда:

http://s3.amazonaws.com/rds-downloads/rds-ssl-ca-cert.pem 

я получаю ошибка:

ERROR 2026 (HY000): SSL connection error: error:00000001:lib(0):func(0):reason(1) 

Я пробовал создавать новый экземпляр, перезагружать и т. д., и никакой радости. Требуется ли моей группе безопасности какое-то правило https?

Редактировать:

Дальнейшая подсказка. Когда я запускаю mysql -ssl локально, это не ошибка. Но когда я делаю mysql show_variables, он говорит, что SSL false, а переменные has_ssl и has_open_ssl не существуют. Это может быть проблема? Я установил локальный mysql через менеджер пакетов homebrew для mac.

правка:

Я вновь установлен MySQL (ранее от самогона), а теперь прямо из оракула, и когда я пытаюсь соединить его дает другую ошибку - ошибка соединения SSL: ASN: плохо другое подтверждение подписи

+0

Это, безусловно, не входящих в группу безопасности, так как MySQL (в отличие от HTTP) имеет механизм согласование использования SSL и отдельный порт не требуется. Из любопытства вы используете полное имя хоста DNS при подключении, да? Что произойдет, если вы опустите '--ssl-verify-server-cert'? –

+0

@ Michael-sqlbot Да, я использую полное имя хоста. Если я опустил проверку сервера, я получаю ту же ошибку. Если я опустил ssl complete и попробую обычное соединение с командной строкой mysql, я могу войти. Я думаю, что это означает, что что-то о моей стороне mysql и ssl не работает. Я заметил, что переменные has_ssl и has_open_ssl тоже не существуют –

+0

Правильно ли время на вашей локальной машине? Дрифт-часы могут вызывать ошибки с помощью SSL. –

ответ

6
  1. В настоящее время документация AWS Aurora связана с устаревшим сертификатом SSL, поэтому проблема. Это подтвердили сотрудники службы поддержки AWS. Используйте это вместо: https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem

  2. Даже при использовании этого сертификата подключение к конечной точке кластера через SSL по-прежнему не работает для командной строки с использованием соединения mysql -h. Если я перейду с конечной точки кластера на конечную точку экземпляра странно, это сработает.

  3. В Bizarrely, mysql workbench подключается через ssl, как к конечной точке экземпляра, так и к точке конца кластера.

+0

Такая же проблема здесь ... кластер не будет подключаться, экземпляр в порядке. –

0

Из docs он появляется ограничение на экземпляр конечную точку для SSL соединений является сдерживающим фактором безопасности, связанный с сертификатом.

Amazon RDS creates an SSL certificate and installs the certificate on the DB instance when Amazon RDS provisions the instance. These certificates are signed by a certificate authority. The SSL certificate includes the DB instance endpoint as the Common Name (CN) for the SSL certificate to guard against spoofing attacks. As a result, you cannot use the DB cluster endpoint to connect to the primary instance of the DB cluster using SSL.

+0

Просто FYI, которого не было в документах в то время, когда я создал этот вопрос. –

+0

Нет проблем. Я наткнулся на него и разместил рекламный ролик, чтобы найти его позже. –

0

Использование MySQL с опцией --skip-Ssl, если вы не используете SSL.If ничего помогает обновить MySQL клиент

+0

Также могут быть некоторые другие параметры ssl в my.cnf, которые вызовут такой же сбой. Вы можете игнорировать файл my.cnf с -no-defaults как: mysql --no-defaults -h yourserver.us-west-2.rds.amazonaws.com --ssl-ca =/etc/app-ssl -rds/rds-ca-2015-us-west-2-bundle.pem -uyouruser -p – Zaur