Centos7.4下mysql5.6开启ssl
发布日期:2021-05-10 15:49:59 浏览次数:10 分类:精选文章

本文共 4561 字,大约阅读时间需要 15 分钟。

MySQL SSL ���������������CentOS 7.4 ���������

1. ������ SSL ������������

SHOW VARIABLES LIKE 'have_ssl';

���������������

+---------------+----------+| Variable_name | Value    |+---------------+----------+| have_ssl      | DISABLED |+---------------+----------+

���������have_ssl ��� DISABLED ������ SSL ���������������������������������������

2. ������ MySQL ���������������������������

cat /etc/redhat-release

���������������

CentOS Linux release 7.4.1708 (Core)
SELECT version();

���������������

+-----------+| version() |+-----------+| 5.6.45    |+-----------+

���������MySQL 5.6.45 ��������������� SSL������������������������������������������ SSL���

3. ������ OpenSSL ������ SSL ������

������ CA ������

openssl genrsa 2048 > ca-key.pem

������ privately RSA ���������2048 ���������

������������ CA ������

openssl req -new -x509 -nodes -days 3600 > ca.pem
  • ���������������
    • ������������ (2 ���) [XX]���XX
    • ���/������������(
    • ������������ [Default City]���Default City
    • ������������ [Default Company Ltd]���Default Company Ltd
    • ������������������3600 ���

4. ������ MySQL ��������� ���������������������

������

openssl req -newkey rsa:2048 -days 3600 > server-key.pem

������������

openssl req -newkey rsa:2048 -nodes -keyout server-key.pem -out server-req.pem

������������ ��������� DN ������������������������������

5. ������������������ RSA ������

openssl rsa -in server-key.pem -out server-key.pem

6. ��� CA ������������������������������������

openssl x509 -req -in server-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

7. ������������������������������������

������

openssl req -newkey rsa:2048 -days 3600 > client-key.pem

������������

openssl req -newkey rsa:2048 -nodes -keyout client-key.pem -out client-req.pem

8. ������������������ RSA ������

openssl rsa -in client-key.pem -out client-key.pem

9. ��� CA ���������������������������������

openssl x509 -req -in client-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

10. ��������������������� SSL ������

ls -l *.pem

������������������������ SSL ���������������������

11. MySQL ������������ SSL

��������������� MySQL ������������

cp ca.pem server-*.pem /var/lib/mysql/

������������������

chown -v mysql:mysql /var/lib/mysql/{ca,server*}.pem

������ MySQL ������������

vi /usr/my.cnf

���������������������

[mysqld]ssl-ca=/var/lib/mysql/ca.pemssl-cert=/var/lib/mysql/server-cert.pemssl-key=/var/lib/mysql/server-key.pem

12. ������ MySQL ������

systemctl stop mysqlsystemctl start mysqlsystemctl status mysql

���������������

��� mysql.service - LSB: start and stop MySQL  Loaded: loaded (/etc/rc.d/init.d/mysql; bad; vendor preset: disabled)  Active: active (running) since Fri 2019-11-15 17:35:02 CST; 4s ago  Docs: man:systemd-sysv-generator(8)  Process: 17497 ExecStop=/etc/rc.d/init.d/mysql stop (code=exited, status=0/SUCCESS)  Process: 17523 ExecStart=/etc/rc.d/init.d/mysql start (code=exited, status=0/SUCCESS)  CGroup: /system.slice/mysql.service    ������17528 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql    ������17661 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql

13. ������ SSL ������������

SHOW VARIABLES LIKE '%ssl%';

���������������

+---------------+--------------------------------+| Variable_name | Value                          |+---------------+--------------------------------+| have_openssl    | YES                           || have_ssl       | YES                           || ssl_ca        | /var/lib/mysql/ca.pem          || ssl_capath    |                            || ssl_cert      | /var/lib/mysql/server-cert.pem || ssl_cipher     |                            || ssl_crl       |                            || ssl_crlpath   |                            || ssl_key       | /var/lib/mysql/server-key.pem  |+---------------+--------------------------------+

14. SSL ������������

������������������

GRANT all on *.* to 'ssl_test'@'%' identified by 'ssl_test';

������������������

mysql -u ssl_test -pssl_test

���������������

Warning: Using a password on the command line interface can be insecure.Welcome to the MySQL monitor...Your MySQL connection id is 2Server version: 5.6.45 MySQL Community Server (GPL)...

������������ SSL ������������

mysql -u ssl_test -pssl_test --ssl-cert=client-cert.pem --ssl-key=client-key.pem

���������������

Warning: Using a password on the command line interface can be insecure.Welcome to the MySQL monitor...Your MySQL connection id is 4Server version: 5.6.45 MySQL Community Server (GPL)...

������������������������������������������������������������������

上一篇:Centos7.4使用recuse模式恢复虚机mbr分区表
下一篇:Oracle12c udev管理的asm磁盘组扩容

发表评论

最新留言

感谢大佬
[***.8.128.20]2025年04月02日 12时31分17秒