大家下午好,
我完全卡住了。 不知道如何跟随,我做了什么错了。 我希望你能帮助我,因为我已经读了很多东西来解决这个问题,但没有成功。
我有:
我已经在GoDaddy上购买了EXTENDED证书,所以我可以在url栏上填写“绿色徽章”。
现在,我已经从GoDaddy下载了证书,在de ZIP里面,出现了证书证书和一个G2 + G1 + ROOT绑定证书。 所以里面有2个文件。
把它们放在一个文件夹中,正确地指定在443 VHOST内,下一步将会看到,但是我在互联网上进行的每一个SSLtesting(SSLLabs,DigiCert …)都只是在链接过程中失败 。
网站: cliente.merchbanc.es
https://www.ssllabs.com/ssltest/analyze.html?d=cliente.merchbanc.es&hideResults=on
https://www.sslshopper.com/ssl-checker.html#hostname=cliente.merchbanc.es
不知道我在做什么错误…我已经准备好了HTTPD.CONF(当然有正确的和需要的模块),但没有任何与VHOSTS和SSL有关的东西。 然后,在额外的configuration文件VHOST,我已经添加了所有的VHOST的事情+ SSL(所以我没有使用SSLconfiguration文件,它被评论,所有在VHOSTS conf文件)。
它看起来像这样:
################################################################################################################## # VHOSTS HTTP # redirect all HTTP to HTTPS (optional) <VirtualHost *:80> ServerAlias * RewriteEngine On RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [redirect=301] </VirtualHost> ################################################################################################################## # VHOSTS HTTPS Listen 443 # modern configuration, tweak to your needs SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 SSLProxyProtocol all -SSLv3 -TLSv1 -TLSv1.1 SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 SSLProxyCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 SSLHonorCipherOrder on SSLCompression off SSLSessionTickets off SSLPassPhraseDialog builtin SSLSessionCache "shmcb:c:/lala/lele/ssl_scache(512000)" SSLSessionCacheTimeout 300 # OCSP Stapling, only in httpd 2.3.3 and later SSLUseStapling on SSLStaplingResponderTimeout 5 SSLStaplingReturnResponderErrors off SSLStaplingCache "shmcb:c:/lala/lele/ocsp(128000)" <VirtualHost *:443> SSLEngine on SSLCertificateFile "blah/blahblah/cliente.merchbanc.es/123412341234.crt" SSLCertificateKeyFile "blah/blahblah/cliente.merchbanc.es/123412341324.key" #SSLCertificateChainFile "blah/blahblah/cliente.merchbanc.es/gd_bundle-g2-g1.crt" SSLCACertificatePath "blah/blahblah/cliente.merchbanc.es/GoDaddy_G2" # Uncomment the following directive when using client certificate authentication #SSLCACertificateFile /path/to/ca_certs_for_client_authentication # HSTS (mod_headers is required) (15768000 seconds = 6 months) Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains; preload" ... ... follows with the ProxyPassing part, but not the case now. ... </VirtualHost>
遵循GoDaddy安装说明网页,我已经将SSLCertificateChainFile指令更改为SSLCACertificatePath指令,因为我在2.4.23版本上使用了Apache。 但是这并没有解决任何问题。
之后,我决定从这里下载所有的G2证书: https : //certs.godaddy.com/repository
并将所有文件放在SSLCACertificatePathpath中指定的文件夹中:“blah / blahblah / cliente.merchbanc.es / GoDaddy_G2”。 但不起作用。
最后,因为我在Windows中,所以我已经决定在证书颁发后双击em并在服务器上安装证书,现在将它们放在“Internet选项”>“内容”>“证书”中 ,全部传播各种现有的标签。 和平常一样,根本没有改变。
每当然,重新启动Apache,甚至在Windows上安装证书之后,也要重新启动服务器。
所以现在怎么办? 希望你能帮助我,请。
感谢和亲切的问候。
标记。
您需要取消注释证书链文件的行
#SSLCertificateChainFile "blah/blahblah/cliente.merchbanc.es/gd_bundle-g2-g1.crt"
应该:
SSLCertificateChainFile "blah/blahblah/cliente.merchbanc.es/gd_bundle-g2-g1.crt"
指示(你没有识别)是乱码,或者你误解了它们。
2.4.8的改变是你可以而且应该把你的链证书放在SSLCertificateFile而不是SSLCertificateChainFile 。 所有版本都将使用SSLCACertificate{File,Path}证书(如果SSLCertificate{Chain,}File没有提供,那么将完成您的链),但SSLCA* certs也将应用于客户端身份validation(如果已启用,可能需要也可能不需要)。
但是要使用SSLCACertificatePath (不是...File ),每个证书必须位于一个单独的文件中,并且每个文件必须 使用它的Subject的散列 来命名 (或链接,将其视为一个名称); 在Unix上,使用符号链接是传统的(但不是绝对必要的)。
在Unix系统上安装OpenSSL(不是所有的)都有一个脚本c_rehash (虽然可能是一个不在你的普通path中的位置)。 如果是的话,应该有一个手册页(有时在一个特殊的部分,如1ssl) ,这也是在网上 。 在某些系统上,OpenSSL 1.1.0(仅)在命令行可执行文件openssl具有等效的函数rehash 。 由于您可能没有这些文件,因此您可以在每个证书文件上手动运行openssl x509 -hash (或等效但更精确的-subject_hash ),并使用这些加.0来重命名或复制文件。 但SSLCACertificateFile (不是...Path )或SSLCertificate{Chain,}File比较容易。
(已添加)特别是,要使用SSLCACertificateFile ,只需将所有需要的CA证书和可选的不需要的CA证书连接到一个文件中。 由于PEM格式的数据在devise上都是可打印/可见的,所以可以通过剪切和粘贴到记事本等纯文本编辑器中,除了像Unix中的cat这样的特定工具,或者在Windows中copy a+b+c或者>>outfile追加。
PS:Apache不使用Windows证书存储,所以在Windows证书存储中安装东西完全没有影响。
PPS:如果您在Windows上没有OpenSSL命令行,则可以在http://www.slproweb.com/products/Win32OpenSSL.html上find一个很好的预编译包
感谢大家的帮助。 所有你给我的信息都是绝对有价值的,并允许我configuration我的CONF文件。 完美。
话虽如此,我发现我的特殊问题,这是解决scheme。
我的Apache正面,是一个WAF(Web应用程序防火墙)的后面。 链子被打破了。 所以没有提供主要证书的中间CA。 然后,解决这个问题:一切就绪!
什么头痛的男孩…
亲切的问候一切!