我已经使用以下指南在CentOS 6.0上的MySQL 5.1.52上启用SSL: http : //www.madirish.net/node/244
我正确地按照说明进行操作,但是当我尝试从客户端服务器进行连接时,出现以下错误:
[root@mta mysql]# mysql -u ssluser -h 10.178.234.142 -p ssldb Enter password: ERROR 2026 (HY000): SSL connection error
我一直在做一些研究,发现你需要使用不同的通用名称。 我意识到我第一次使用了同样的东西,所以我回去重新编写了指南中的所有步骤,但是我仍然遇到了同样的错误。
我也曾尝试使用以下方式login到服务器无济于事:
[root@mta mysql]# mysql --ssl --ssl-ca=/etc/ssl/mysql/client.cert -u ssluser -h 10.178.234.142 -p ssldb Enter password: ERROR 2026 (HY000): SSL connection error [root@mta mysql]# mysql --ssl --ssl-ca=/dev/null -u ssluser -h 10.178.234.142 -p ssldb Enter password: ERROR 2026 (HY000): SSL connection error
看起来您正在指定客户端证书而不是CA证书。 我假设你的证书存储在/ etc / ssl / mysql中,并且你已经创build了一个CA证书,以及一个客户端证书和密钥。 您需要指定–ssl-cert = / etc / ssl / mysql / client.cert –ssl-ca = / etc / ssl / mysql / CA.cert –ssl -key = / etc / ssl / mysql / client -键
我还假设你已经在[mysqld]部分的my.cnf文件中指定了服务器密钥和证书,并重新启动了服务器。 您还可以在[client]部分的my.cnf中指定客户端密钥和证书,而不必在命令行上指定它们。
这是一个很好的HOWTO来创build可用的密钥和证书: http : //www.chriscalender.com/? p=448