我对sysadmin工作的深度相当新,特别是在这个级别,并且已经负责建立一个“行业标准”方式来验证PHP应用程序和MySQL数据库服务器之间的进程间通信。
我似乎无法在mysql或PHP文档中找到任何引用。我已经在PHP和Mysql之间找到了大量关于加密目的的标准TLS的信息,但是对于相互身份验证(在Mysql中验证PHP应用程序)绝对没有。是否可以使用或不使用自定义插件?
答案 0 :(得分:2)
TLS仅确保人们无法剥夺您的凭据并且#34;脱线#34;使用数据包嗅探工具。它无法确保连接到MySQL的设备或应用程序的身份。
对于那种事情,您需要一个额外的层,如SSH,或某种自定义应用程序,在允许通过某种代理通道连接到MySQL之前进行验证。这可能是一项复杂的工作,而且它肯定不是行业标准。
目前的标准非常简单:
如果您对信誉良好的安全公司有其他疑虑完成审核,以确保您的策略合理。
答案 1 :(得分:0)
有两种常用方法。首先,如果PHP应用程序正确检查了mysql服务器的证书,那么你知道mysql服务器是它声称的那个。这证实了php的mysql。然后,当您发送数据库密码时,您已经将php应用程序验证到了mysql服务器。您在每个方向使用了不同的方法,但实现了相互身份验证。到目前为止,这是最常用的方法,它确实符合相互认证的定义。
不太常见的方法是使用client certificates;请参阅“要求同时使用客户端证书”的文本。 通过使用mysql命令行的--ssl-cert和--ssl-key参数(以及来自php的类似连接参数),您可以向服务器提供客户端证书。服务器的证书用于向php验证服务器,以及用于向服务器验证php的客户端证书。