use*_*632 6 apache ssl certificate
这是我的问题.我在一个apache webserver上托管了多个域.(虚拟主机)其中两个(a.com和b.com)使用ssl证书.我用这些命令配置了两个:
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/ABC.crt
SSLCertificateKeyFile /etc/apache2/ssl/ABC.key
SSLCertificateChainFile /etc/apache2/ssl/ABC.chain.crt
SSLProtocol all -SSLv2
Run Code Online (Sandbox Code Playgroud)
当我尝试通过浏览器(chrome,Firefox,IE)连接时,它工作正常,我得到了正确的证书.但在android上我有一个例外:没有同行证书
然后我尝试用这个命令测试它:
openssl s_client -connect b.com:443
Run Code Online (Sandbox Code Playgroud)
它返回给我a.com的证书.有什么建议我做错了,我用openssl和android得到了错误的证书?
Ste*_*ich 12
在同一IP地址上可能有多个主机,您需要使用服务器名称指示(SNI)来访问此站点.给你SNI openssl s_client
使用-servername
选项,例如 openssl s_client -connect b.com:443 -servername a.com
.至于android:根据https://developer.android.com/training/articles/security-ssl.html从2.3开始支持HttpsURLConnection但不支持Apache HTTP Client.
归档时间: |
|
查看次数: |
2232 次 |
最近记录: |