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


26

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

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

我正在使用无法使用高级SSH端口转发或VPN的工具和脚本...仍然可以吗?


1
仅适用于碰到这个话题的人该文档现在(2018)在另一个链接上;dev.mysql.com/doc/refman/5.7/en/encrypted-connections.html
CED

Answers:


14

不,默认情况下,mysql通信未加密。最好将MySQL设置基于每个连接与OpenSSL一起使用。如今,大多数二进制文件都具有SSL支持,但是很容易检查您的版本是否支持它。从文档中:

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

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

超链接已死。
JellicleCat 2015年

链接V5.6:dev.mysql.com/doc/refman/5.6/en/ssl-connections.html(上面还更新)
smhg

6

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

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


链接已断开
knocte
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.