我有一台 Ubuntu Dapper 6.06 服务器。它运行的是 MySQL 5.0。我想启用客户端通过 SSL 进行连接。但是,当我取消注释ssl-*
中的行时/etc/mysql/my.cnf
,我收到以下错误:
[ERROR] /usr/sbin/mysqld: unknown variable 'ssl-ca=/etc/mysql/ca-cert.pem'
这意味着 SSL 不适用于此版本。我不太热衷于重新编译 mysql,因为我更喜欢使用包管理器来做事。
如何在 ubuntu 上安装 SSL MySQL?
答案1
听起来使用 SSL 进行编译是值得的。
或者,您可以打开从客户端计算机到 Linux 服务器的 SSL“代理隧道”(使用 Putty),然后您的客户端将有效加密。如果您无法将 SSL 放入 MySQL,这只是一个想法。
答案2
我相当肯定,要获得 SSL 支持,您需要自己进行编译,这很令人沮丧。
答案3
您在 /etc/mysql/ca-cert.pem 中是否有可用的证书?如果没有,我建议至少获取一个自签名证书。例如这
答案4
抱歉,我上次的回答不够仔细。
我认为 MySQL 正在寻找“证书颁发机构”文件。CA 是一个包含证书的文件,所有客户端在出示证书时都需要匹配该证书。它有点像 java cacerts KEYSTORE,只不过您将密钥库外部的证书导出为 PEM 格式。
然后,如果您的 MySQL 客户端提供匹配的密钥,则 SSL 连接将会绑定。
因此,您需要注意客户端用于连接的 key.pem,因为它需要与服务器上的 ca-cert.pem 密钥匹配。如果您可以使用 keytool 读取 PEM 文件,那么您可以比较客户端和服务器之间的证书序列号,以确保它们是正确的。
只需按照此处的说明操作即可: http://dev.mysql.com/doc/refman/5.0/en/secure-create-certs.html