如何让 firefox 每页使用特定的 TLS 密码

How to get firefox to use specific TLS ciphers per page

我已经设置了一个网络服务器,主要为所有其他的 TLS 密码配置提供服务,除了仅在 index.php

的主页上覆盖到不同的密码配置字符串

为什么 firefox 54.0 没有做与 chrome/vivaldi 1.10.867.38 相同的预期事情? Chrome 允许我使用下面的 apache 代码加载与主页本身设置不同的非主页,但相同的代码在 firefox 中会产生密码重叠错误 "SSL_ERROR_NO_CYPHER_OVERLAP"

Chrome:

/index.php loads fine with correct specific settings

/* everything else also loads fine with correct DIFFERENT settings

火狐:

/index.php error

/* everything else has error

/index.php 或 /* 似乎都尝试使用不同的设置。这让我发疯,它在 Chrome 但在 firefox

中工作得很好

我是不是漏掉了什么?

也许这是重新谈判的问题?如果是这样的话,如果我想要针对重新协商攻击的安全性,我什至不应该尝试使用 2 个不同的密码字符串?对吗?

<VirtualHost 0.0.0.0:443>
    DocumentRoot /htdocs
    <IfModule mod_ssl.c>
        SSLEngine on
        SSLProtocol ALL -SSLv2 -SSLv3
        SSLHonorCipherOrder On
        SSLCipherSuite DH+AES256:DH+AESGCM:RSA+AESGCM:RSA+AES256:!aNULL:!eNULL:!EXP:!MD5:!DSS:!SHA:!SHA256:!AES128:!ECDH
        Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
        SSLCompression Off
        SSLCertificateKeyFile /.key
        SSLCertificateFile /.crt
        SSLCertificateChainFile /chainfile
        SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
        CustomLog logs/ssl_request_log \
            "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
    </IfModule>
    <Files "index.php">#this is where I specify a different cipher, and it fails on firefox, doesn't even load when it should
        <IfModule mod_ssl.c>
            SSLCipherSuite ECDH+AESGCM:ECDH+AES256:DH+AES256:DH+AESGCM:RSA+AESGCM:RSA+AES256:SHA384:SHA256:!aNULL:!eNULL:!EXP:!MD5:!DSS:!SHA:!AES128
        </IfModule>
    </Files>
</Virtualhost>

正如@vcsjones 所指出的那样,这似乎不是普通浏览器的默认功能,所以换句话说,如果没有奇怪的行为或(甚至可能在程序本身出现故障? )