我會在我不想嘗試通過SSL時連接到數據庫實例的前言。嘗試通過mysql CLI連接到mysql Aurora時出現SSL連接錯誤
我在這裏
http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Connect.html
按照本指南我已確保數據庫實例是面向公衆的。
的VPC的安全組具有以下規則:
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。這是我從我的本地機器上嘗試命令(的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
收到RDS-SSL-CA-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錯誤,並且has_ssl和have_open_ssl變量不存在。這可能是問題嗎?我通過Mac的自制軟件包管理器安裝了本地mysql。
新編輯:
我重新安裝MySQL的(以前從BREW),現在從Oracle直接,當我嘗試連接它給出了不同的錯誤 - SSL連接錯誤:ASN:壞其他簽字確認
這肯定不是安全組中,因爲MySQL的(不像HTTP)的一種機制不需要談判使用SSL和單獨的端口。出於好奇,連接時使用完整的DNS主機名,是的?如果你省略'--ssl-verify-server-cert',會發生什麼? –
@ Michael-sqlbot是的,我使用完整的主機名。如果我省略驗證服務器證書,我會得到相同的錯誤。如果我省略ssl完成並嘗試一個普通的mysql命令行連接,我可以進去。我想這意味着我的客戶端的一些問題mysql和ssl不工作。我注意到have_ssl和have_open_ssl變量也不存在 –
本地機器上的時間是否正確?漂流時鐘可能導致SSL出錯。 –