Как получить Amazon MySQL RDS-сертификаты

Документация Amazon RDS (http://aws.amazon.com/rds/faqs/#53) указывает, что "Amazon RDS генерирует сертификат SSL для каждого [MySQL] DB Instance". Я не смог найти документацию о том, как найти сертификаты, а сертификаты нигде не найдены в консоли управления.

Где находятся сертификаты?

Ответ 1

Я нашел решение здесь: https://forums.aws.amazon.com/thread.jspa?threadID=62110.

curl -O https://s3.amazonaws.com/rds-downloads/mysql-ssl-ca-cert.pem

  • Подключиться к mysql:
mysql -uusername -p --host=host --ssl-ca=mysql-ssl-ca-cert.pem
  • Убедитесь, что ваше соединение действительно зашифровано:
mysql> SHOW STATUS LIKE 'Ssl_cipher';
+---------------+------------+
| Variable_name | Value      |
+---------------+------------+
| Ssl_cipher    | AES256-SHA |
+---------------+------------+
1 row in set (0.00 sec)
  • Необязательно принудительно использовать SSL для конкретного пользователя для подключения к MySQL

mysql> ALTER USER 'username'@'host|%' REQUIRE SSL

Ответ 2

Я использовал http://aws-blog.io/2016/rds-over-ssl/ Вы должны получить root pem и pem для региона и объединить 2 файла в один.   https://s3.amazonaws.com/rds-downloads/rds-ca-2015-us-west-2.pem  https://s3.amazonaws.com/rds-downloads/rds-ca-2015-root.pem

И объедините файлы, чтобы иметь один файл rds-ca-2015-us-west-2-bundle.pem. С помощью -ssl-ca укажите полный путь к файлу pem.

Ответ 3

Вы можете получить информацию о файле сертификата AWS RDS из самого руководства по документации AWS

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

Загрузить сертификат здесь

https://rds.amazonaws.com/doc/mysql-ssl-ca-cert.pem

Обновление - Amazon обновил SSL-сертификат, вы можете скачать его здесь: http://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem

Используйте следующую команду для входа в mysql

[email protected]:/usr/src# mysql -h awssathish.xxyyzz.eu-west-1.rds.amazonaws.com -u awssathish -p --ssl-ca=mysql-ssl-ca-cert.pem
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 22
Server version: 5.6.13-log MySQL Community Server (GPL)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
mysql> GRANT USAGE ON *.* TO ‘awssathish’@’%’ REQUIRE SSL
Query OK, 0 rows affected (0.02 sec)
mysql> 
mysql> show variables like "%ssl";
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| have_openssl  | YES   |
| have_ssl      | YES   |
+---------------+-------+
2 rows in set (0.00 sec)
mysql> 
mysql> SHOW STATUS LIKE 'Ssl_cipher';
+---------------+------------+
| Variable_name | Value      |
+---------------+------------+
| Ssl_cipher    | AES256-SHA |
+---------------+------------+
1 row in set (0.01 sec)

mysql> exit
Bye

Где

awssathish.xxyyzz.eu-west-1.rds.amazonaws.com

- конечная точка RDS,

awssathish

- имя пользователя сервера rds