1. 程式人生 > >MySQL主從復制使用SSL加密

MySQL主從復制使用SSL加密

Mysql主從同步 SSL加密 Mysql主從利用SSL加密 Mysql SSL 主從SSL

環境:
 CentOS7.4
 CA主機一
 mysql主機兩臺
 數據庫:MariaDB-5.5

一、準備證書文件

1.生成CA自簽名證書

mkdir /etc/my.cnf.d/ssl
cd /etc/my.cnf.d/ssl
openssl genrsa 2048 > cakey.pem
chmod 600 cakey.pem
openssl req -new -x509 -key cakey.pem -days 3650 -out cacert.pem

技術分享圖片
2.生成master私鑰以及證書申請

openssl req -newkey rsa:2048 -days 365 -nodes -keyout master.key > master.csr

技術分享圖片

3.給master頒發證書

openssl x509  -req  -in master.csr -CA cacert.pem -CAkey cakey.pem  -set_serial 01 > master.crt

技術分享圖片

4.生成slave私鑰以及證書申請

openssl req -newkey rsa:2048 -days 365 -nodes -keyout slave.key > slave.csr

技術分享圖片
5.給slave頒發證書

openssl x509  -req  -in slave.csr -CA cacert.pem -CAkey cakey.pem -set_serial 02 > slave.crt

技術分享圖片
6.將證書文件分別分發給master和slave
Master:

技術分享圖片
Slave:
技術分享圖片

二、主庫配置

#修改/etc/my.cnf
#添加ssl等配置信息
技術分享圖片
創建從庫復制用戶,並僅允許通過ssl加密連接:

mysql> grant replication slave on *.* to ‘repluser‘@‘192.168.1.%‘ identified by ‘mysql‘ require ssl;

三、從庫配置

#修改/etc/my.cnf
#添加ssl等配置信息
技術分享圖片
配置連接主庫的信息:

change master to master_host=‘192.168.1.2‘,master_user=‘repluser‘,master_password=‘mysql‘,master_log_file=‘mariadb-bin.000001‘,master_log_pos=245,master_ssl=1;
start slave;
show slave status\G

技術分享圖片

四、測試主從是否同步

MySQL主從復制使用SSL加密