MySQL 3306 端口是否加密?如果没有,如何加密?

MySQL 3306 端口是否加密?如果没有,如何加密?

我正在对我工作中的系统进行安全审计,其中一项要求是加密通过公共/不受保护网络的所有流量。由于我们从办公室网络访问外部服务器之一上的 MySQL 数据库(通过端口 3306),因此需要加密与 MySQL 的连接。

它已经加密了吗?如果没有,我该如何加密它?

我正在使用的工具和脚本无法使用花哨的 SSH 端口转发或 VPN......这仍然可行吗?

答案1

不,默认情况下 mysql 流量未加密。设置 MySQL使用 OpenSSL按每个连接进行配置是最佳选择。如今,大多数二进制文件都支持 SSL,但很容易检查您的版本是否支持 SSL。摘自文档:

要检查服务器二进制文件是否使用 SSL 支持进行编译,请使用 --ssl 选项调用它。如果服务器不支持 SSL,则会发生错误:

shell> mysqld --ssl --help
060525 14:18:52 [ERROR] mysqld: unknown option '--ssl'

答案2

默认情况下,MySQL 不加密其客户端/服务器通信:

您可以设置 MySQL 以接受通过 SSL 的连接并要求用户使用 SSL。以下是 SSL 设置指南:

MySQL 8:

相关内容