MYSQL8安全之SSL认证_mysql ssl

	- [创建用户强制证书认证](#_173)
	- [设置用户强制证书登录](#_198)
+ [4、SSL登录](#4SSL_209)
+ - [SSL加密登录方法1;](#SSL1_213)
	- [SSL加密登录方法2:](#SSL2_235)

SSL概念

SSL(Secure Socket Layer: 安全套接字) 利用数据加密,身份验证和消息完整性验证机制,为基于TCP等可靠连接的应用层协议。
SSL协议提供的功能主要有:

  1. 数据传输的机密性;利用对称密钥算法对传输的数据进行加密
  2. 身份验证机制:基于证书利用数字签名方法对服务器和客户端进行身份验证,其中客户端的身份验证是可选的
  3. 消息完整性验证:消息传输过程中使用MAC算法来校验消息的完整性。

如果用户的传输不是通过SSL的方式,那么其在网络中数据都是以明文进行传输的。

在数据库方面,客户端连接服务器使用SSL连接,能加密通信数据。

  1. 启用 SSL:可以在 MySQL 配置文件中启用 SSL,需要指定 SSL 证书、私钥和 CA 证书的路径。
  2. SSL 握手验证:MySQL 8 支持 SSL 握手验证,可以确保客户端连接到正确的服务器。
  3. SSL 客户端认证:MySQL 8 支持客户端证书认证,可以进一步增强安全性。
  4. SSL 连接限制:可以通过修改 MySQL 配置文件中的参数来限制 SSL 连接的最大数量和连接的最大并发数。

总的来说,MySQL 8 的 SSL 功能可以帮助用户更安全地管理数据库,提高数据安全性。

MYSQL实现SSL的流程

  1. 先为MYSQL服务器创建SSL证书和私钥
  2. 在MYQL里面配置SSL,并启动服务
  3. 创建用户的时候带上SSL标签(require ssl)
  4. 连接数据库的时候带上SSL

MYSQL配置SSl

  1. 手工配置:mysql5.7.6以下版本只能手工配置
  2. 自动配置:mysql5.7.6以上版本支持自动配置

0、SSL策略

--ssl-mode 是 MySQL 命令行客户端的一个选项,用于指定 SSL/TLS 连接的模式。

它有四个可能的值:

  • DISABLED禁用 SSL
  • REQUIRED必须使用 SSL
  • VERIFY_CA验证CA
  • VERIFY_IDENTITY验证身份

你可能感兴趣的:(安全,ssl,mysql)