首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在脚本中加密MySQL流量

在脚本中加密MySQL流量
EN

Stack Overflow用户
提问于 2009-11-22 23:11:26
回答 4查看 2.5K关注 0票数 1

我需要能够加密从web服务器到数据库服务器的MySQL流量。我知道如何根据my.cnf中的服务器和客户端设置将MySQL设置为使用SSL,但是,这需要使用PHP中的mysql_connect()来完成。这可能是一个两部分的问题。

1) mysql_connect()是否使用在my.cnf中设置的MySQL客户端设置?

如果不是..。

我读到你可以使用MYSQL_CLIENT_SSL,但是,SSL数据是从哪里获得的?在mysql_connect函数中使用MYSQL_CLIENT_SSL是否会自动加密流量?

简单地说,做这件事的最好方法是什么?

谢谢!

EN

回答 4

Stack Overflow用户

发布于 2009-11-23 00:08:49

如果您使用SSL连接到MySQL,则您的SSL客户端和服务器之间的所有流量都将被加密。

MYSQL_CLIENT_SSL已过时。使用mysqli如果您需要使用SSL,

代码语言:javascript
复制
$db = mysqli_init(); 
$db->ssl_set(null, null,'cacert.pem',NULL,NULL); 
$db->real_connect('host','user','pass','db'); 
票数 4
EN

Stack Overflow用户

发布于 2009-11-22 23:19:28

作为替代解决方案,您还可以使用SSH tunnels来完成压缩和加密。

票数 2
EN

Stack Overflow用户

发布于 2009-11-22 23:25:53

MYSQL_CLIENT_SSL已从PHP中删除,应该无法工作。

你有几个选择:第一个是,如果你的web服务器也是你的数据库服务器,你不需要加密,因为连接永远不会离开你的盒子:它只使用localhost

第二种选择是使用上面Pablo建议的方法,并利用SSH隧道。SSH隧道本质上与SSL连接做同样的事情,只是它需要一个“额外的步骤”才能运行。

这似乎是一个相当不错的教程,可以帮助你入门:

http://www.revsys.com/writings/quicktips/ssh-tunnel.html

希望这能有所帮助!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1778977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档