要通过ssl连接到远程mysql服务器,我们需要创建以下密钥
-rwxrwxrwx 1 root root 1.7K Oct 29 15:21 ca-key.pem
-rwxrwxrwx 1 root root 1.3K Oct 29 15:21 ca.pem
-rwxrwxrwx 1 root root 1.2K Oct 29 15:21 client-cert.pem
-rwxrwxrwx 1 root root 1.7K Oct 29 15:21 client-key.pem
-rwxrwxrwx 1 root root 993 Oct 29 15:21 client-req.pem
-rwxrwxrwx 1 root root 1.2K Oct 29 15:21 server-cert.pem
-rwxrwxrwx 1 root root 1.7K Oct 29 15:21 server-key.pem
-rwxrwxrwx 1 root root 993 Oct 29 15:21 server-req.pem
建立安全连接
mysql -u balaji_sri -pXXX --ssl-ca=ca.pem --ssl-key=client-key.pem --ssl-cert=client-cert.pem -h 18.221.222.23
I understand how web ssl works.
(
*servers pub key is encrypted with CA'S private key which is shared to client as ssl key
*browser has all CA'S public key. browser decrypts and gets servers pub key
*client generates a random number and encrypts with servers public key
*server is able to decrypt that with its own private key
*rest of connection is handled with symmetrical encryption with the random number
)
有人可以用类似的方式解释上面提到的每个键的作用。(ca-key.pem、ca.pem、client-cert.pem、client-key.pem、client-req.pem、server-cert.pem、server-req.pem(
这个问题可能会让人们对加密货币更感兴趣。SX或安全性。SX.总之,
*服务器的pub密钥使用CA的私钥加密,该私钥作为ssl密钥共享给客户端
哼。。。不使用公钥加密算法,可以使用公钥进行加密,也可以使用私钥进行解密任何人都不能使用私钥进行加密。如果公钥算法也支持数字签名(例如RSA(,则可以使用其私钥进行签名,每个人都可以使用签名者的公钥来验证签名(同样,您不能使用公钥进行签名(。
根据你的问题,我的猜测如下(物品重新订购(:
ca-key.pem
:证书颁发机构的私钥(应加密!(ca.pem
:您的权威机构的根证书(与ca-key.pem
自签名(client-key.pem
:客户端私钥client-req.pem
:请求证书颁发机构(又名csr(签名client-cert.pem
:证书颁发机构对先前请求的响应server-key.pem
:与client-key.pem
相同,但用于服务器server-req.pem
:与client-req.pem
相同,但用于服务器server-cert.pem
:与client-cert.pem
相同,但用于服务器
为了更好地理解X509证书,您可能会对以下教程感兴趣。