给PXC集群加密

Posted wshenJin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了给PXC集群加密相关的知识,希望对你有一定的参考价值。

mysql的复制时明文的,不管是集群的复制还是IST/SST,直接通过抓包就可以抓取数据。

生成证书

直接使用 mysql_ssl_rsa_setup

mysql_ssl_rsa_setup --datadir=/data/ssl/pxc/

chown mysql:mysql -R /data/ssl/pxc

[[email protected]_node0_172.16.11.127 ~]# ll /data/ssl/pxc/
total 32
-rw------- 1 mysql mysql 1675 May  4 15:18 ca-key.pem
-rw-r--r-- 1 mysql mysql 1082 May  4 15:18 ca.pem
-rw-r--r-- 1 mysql mysql 1086 May  4 15:18 client-cert.pem
-rw------- 1 mysql mysql 1679 May  4 15:18 client-key.pem
-rw------- 1 mysql mysql 1675 May  4 15:18 private_key.pem
-rw-r--r-- 1 mysql mysql  451 May  4 15:18 public_key.pem
-rw-r--r-- 1 mysql mysql 1086 May  4 15:18 server-cert.pem
-rw------- 1 mysql mysql 1675 May  4 15:18 server-key.pem

修改配置文件

[mysqld]
# ssl
ssl-ca=/data/ssl/pxc/ca.pem
ssl-cert=/data/ssl/pxc/server-cert.pem
ssl-key=/data/ssl/pxc/server-key.pem
pxc_encrypt_cluster_traffic=ON

wsrep_provider_options="socket.ssl=yes;socket.ssl_ca=/data/ssl/pxc/ca.pem;socket.ssl_cert=/data/ssl/pxc/server-cert.pem;socket.ssl_key=/data/ssl/pxc/server-key.pem"

抓包分析

可以通过tcpdump抓取4567、4568、4444端口来查看各个传输状态的数据包加密情况

tcpdump -s 0 -l -w - port  4567  | strings     
tcpdump -s 0 -l -w - port  4568  | strings       
tcpdump -s 0 -l -w - port  4444  | strings        

?

以上是关于给PXC集群加密的主要内容,如果未能解决你的问题,请参考以下文章

搭建PXC集群

Docker搭建PXC集群

PXC集群搭建

企业主流MySQL高可用集群架构三部曲之PXC

周一福利MySQL数据库集群-PXC方案

MySQL数据库集群-PXC方案