1. 程式人生 > >給PXC集群加密

給PXC集群加密

狀態 client data port 取數據 AS server root string

MySQL的復制時明文的,不管是集群的復制還是IST/SST,直接通過抓包就可以抓取數據。

生成證書

直接使用 mysql_ssl_rsa_setup

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

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

[root@pxc_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集群加密