mysql复制用户开启ssl_MySQL基于SSL复制的配置过程

MySQL的主从复制默认是明文传送的,如果在生产环境中跨网络传送,数据的安全性就无法完全保证,为了解决这一问题,我们需要一种安全的方式进行传送,即基于SSL加密进行数据传输。在进行SSL加密传输时可能需要先了解CA、证书及SSL相关知识才能更好地明白为何基于SSL的传输就会更加安全。CA、证书及SSL相关知识在本章节不会多加一说明,详情可以看本博客提供的“信息安全之PKI及数字证书介绍”和“HTTPS协议和原理介绍”章节。

首先Master和Slave上分别检查SSL状态信息。

mysql> show global variables like '%ssl%';

+---------------+----------+

| Variable_name | Value |

+---------------+----------+

| have_openssl | DISABLED |

| have_ssl | DISABLED |

| ssl_ca | |

| ssl_capath | |

| ssl_cert | |

| ssl_cipher | |

| ssl_crl | |

| ssl_crlpath | |

| ssl_key | |

+---------------+----------+

9 rows in set (0.00 sec)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

mysql>showglobalvariableslike'%ssl%';

+---------------+----------+

|Variable_name|Value|

+---------------+----------+

|have_openssl|DISABLED|

|have_ssl|DISABLED|

|ssl_ca||

|ssl_capath||

|ssl_cert||

|ssl_cipher||

|ssl_crl||

|ssl_crlpath||

|ssl_key||

+---------------+----------+

9rowsinset(0.00sec)

确保你看到的是disabled,而不是NO的选项。这表示你的mysql服务器支持ssl,只是没有在启动的时候开启ssl功能,当服务器启动ssl功能的时候,你会看到图中的disabled会显示yes。

下面需要开启支持SSL并设置加密方法,私钥文件等信息。

首先说明一点,我的实验环境把CA服务器、主服务器和从服务器都放在了同一台服务器上面。

1)配置CA服务器

$ cd /etc/pki/CA

$ (umask 077;openssl genrsa -out private/cakey.pem 2048)

$ openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650

$ touch {index.txt,serial}

$ echo 01 > serial

1

2

3

4

5

$cd/etc/pki/CA

$(umask077;opensslgenrsa-outprivate/cakey.pem2048)

$opensslreq-new-x509-keyprivate/cakey.pem-outcacert.pem-days3650

$touch{index.txt,serial}

$echo01>serial

下面是我自签证书时填写的信息:

Country Name (2 letter code) [XX]:cn

State or Province Name (full name) []:sh

Locality Name (eg, city) [Default City]:sh

Organization Name (eg, company) [Default Company Ltd]:ej

Organizational Unit Name (eg, section) []:tech

Common Name (eg, your name or your server's hostname) []:mysql.ywnds.com

Email Address []:123@ywnds.com

1

2

3

4

5

6

7

CountryName(2lettercode)[XX]:cn

StateorProvinceName(fullname)[]:sh

LocalityName(eg,city)[DefaultCity]:sh

OrganizationName(eg,company)[DefaultCompanyLtd]:ej

OrganizationalUnitName(eg,section)[]:tech

CommonName(eg,yournameoryourserver'shostname)[]:mysql.ywnds.com

EmailAddress[]:123@ywnds.com

2)Master服务器生成证书

$ mkdir /ssl

$ cd /ssl

$ (umask 077;openssl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值