使用OpenSSL为MediaWiki/Apache/PHP/MySQL数据库连接要求SSL

3
为了完成学校项目,我在本地机器上安装了MediaWiki,并需要使用SSL连接到本地MySQL数据库。但我不确定如何把所有的点连接起来。以下是我迄今为止所做的事情:
1. 我安装了OpenSSL,并创建了自签名证书和相关密钥。 2. phpinfo() 显示OpenSSL已启用。 3. 我在 my.ini 的 [mysqld] 部分中添加了以下内容:
ssl-key="C:/newcerts/server-key.pem" ssl-cert="C:/newcerts/server-cert.pem" ssl-ca="C:/newcerts/ca-cert.pem"
4. 运行 MySQL 命令行提示我输入 root 密码,但当我输入后,出现“Error 1045:Access denied”等错误。 5. 在 bin 目录下运行 mysql -u root -p ssl-ca="C:/newcerts/ca-cert.pem" 并输入密码成功,给出了mysql提示。运行 status 显示 SSL:Cipher in use is DHE-RSA-AES256-SHA。
这就是我困惑的地方。还需要做什么(例如通过Apache或PHP配置文件、或MediaWiki文件)才能要求数据库连接使用SSL呢?
1个回答

5

你需要使用mysqli扩展,因为原生的php/mysql扩展不支持SSL。请参考mysqli SSL相关功能:

http://us.php.net/manual/en/mysqli.ssl-set.php

虽然说MediaWiki中的DB类已经抽象出来了,但据我所知现有的实现是使用常规的php/mysql,而不是mysqli,因此我认为您需要编写自己的mysqli适配器,或者也许已经有人编写了。无论哪种方式,您都需要让MediaWiki使用mysqli适配器。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接