gpt4 book ai didi

java - Tomcat 6 SSL 配置 - 在 Chrome 中显示重新协商已禁用的错误!

转载 作者:行者123 更新时间:2023-11-28 22:23:06 25 4
gpt4 key购买 nike

我在显示 google chrome 时遇到问题:

该站点使用 SSL,但 Google Chrome 检测到页面上存在高风险的不安全内容或该站点的证书存在问题。不要在此页面上输入敏感信息。无效的证书或其他严重的 https 问题可能表明有人试图篡改您与该站点的连接。

显示为带红色 https 符号的消息。

我应该如何配置 tomcat 以消除下图中详细显示的消息?

我找到了这个链接,但无法从中弄清楚如何解决这个问题: http://code.google.com/p/chromium/issues/detail?id=72716

还提到了 APR 的 OpenSSL 问题(OpenSSL 的替代方案是什么?):
http://tomcat.apache.org/security-native.html

我有 GeoTrust 商业 ID 证书,这对网站来说绰绰有余,应该足够安全。所以我认为这是 Tomcat 或 Java 的一些问题。

server.xml 中的工作配置:

<Connector port="443"
protocol="org.apache.coyote.http11.Http11NioProtocol"
maxHttpHeaderSize="16384"
maxThreads="150"
minSpareThreads="25"
maxSpareThreads="75"
enableLookups="false"
acceptCount="100"
connectionTimeout="20000"
disableUploadTimeout="true"

compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/plain,text/javascript,text/css"

scheme="https"
secure="true"
SSLEnabled="true"
sslProtocol="TLS"
clientAuth="false"
keystoreFile="/usr/share/tomcat6/conf/tomcat.keystore" keystorePass="somepass"
/>

给我图片上的错误:

enter image description here


更新 - 本地化

`<Connector port="443"`  

protocol="org.apache.coyote.http11.Http11AprProtocol"
maxHttpHeaderSize="16384"
maxThreads="150"
enableLookups="false"
acceptCount="100"
disableUploadTimeout="true"

compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/plain,text/javascript,text/css"
scheme="https"
secure="true"
SSLEnabled="true"
SSLCertificateFile="/tomcat/conf/cert.crt"
SSLCertificateKeyFile="/tomcat/conf/key.pem"
SSLCACertificateFile="/tomcat/conf/rootandintermidiate.crt"
clientAuth="optional"
/>

这似乎可以解决问题!

最佳答案

根据:

http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html

"The APR connector uses different attributes for SSL keys and certificates."

他们给出的例子是(JSSE):

<Connector 
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="${user.home}/.keystore" keystorePass="changeit"
clientAuth="false" sslProtocol="TLS"/>

对于 JSSE 然后是 APR:

<Connector 
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
SSLCertificateFile="/usr/local/ssl/server.crt"
SSLCertificateKeyFile="/usr/local/ssl/server.pem"
clientAuth="optional" SSLProtocol="TLSv1"/>

我注意到的第一件事是 SSLProtocol 不同(属性及其值)并且它不使用 keystoreFile。这似乎是因为:

"If the installation uses APR - i.e. you have installed the Tomcat native library - then it will use the APR SSL implementation."

您示例中的属性与 JSSE 实现相关,因此我假设问题与 NIO 协议(protocol)和/或 APR 的使用有关。更改您的 Connector 以使用专为 APR 设计的属性并删除 JSSE 属性(反之亦然)。

关于java - Tomcat 6 SSL 配置 - 在 Chrome 中显示重新协商已禁用的错误!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6380478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com