Java 配置Tomcat 8.0';使用XCA访问SSL
我最近发现了一个XCA工具,可以管理与加密或安全相关的证书、密钥等(请查看) 到目前为止,我已经创建了一个自签名CA证书,并用它签署了我的服务器和客户端证书: 现在,我要做的是使用XCA的导出文件配置Tomcat,以便使用SSL:Java 配置Tomcat 8.0';使用XCA访问SSL,java,tomcat,ssl,cryptography,Java,Tomcat,Ssl,Cryptography,我最近发现了一个XCA工具,可以管理与加密或安全相关的证书、密钥等(请查看) 到目前为止,我已经创建了一个自签名CA证书,并用它签署了我的服务器和客户端证书: 现在,我要做的是使用XCA的导出文件配置Tomcat,以便使用SSL: <Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
<Connector
port="8443"
protocol="org.apache.coyote.http11.Http11AprProtocol"
maxThreads="150"
SSLEnabled="true"
scheme="https"
secure="true"
clientAuth="true"
sslProtocol="TLSv1.2"
SSLVerifyClient="require"
SSLCipherSuite="ALL"
SSLCertificateFile="??"
SSLCertificateKeyFile="??"
SSLCertificateChainFile="??"
SSLCACertificateFile="??" />
所以我的问题来了:我必须导出哪些文件,以及将它们放在Tomcat连接器的何处?(PEM,具有证书链文件的PEM,具有所有受信任证书的PEM,具有所有证书的PEM…)
谢谢你的帮助
编辑:
我已经按照教程进行了设置(本指南是西班牙语的)。我已经在Firefox、Chrome、Internet Explorer和Safari上进行了测试。它工作的唯一浏览器是Firefox。。。我收到以下错误:ERR\u CERT\u无效
我已经意识到是什么导致了这个问题。。。我有时使用SHA-1 alg来制作这些证书。我将使用另一个算法重复这个过程
编辑2
将哈希算法从SHA-1更改为SHA-512后,没有任何更改
编辑3
Chrome、Internet Explorer或Safari在安全方面似乎比Firefox更严格。我用Java尝试了一个客户端,它使用HTTPS连接到我的web服务,工作正常:)。因为您使用的是APR连接器,所以您应该使用PEM文件是正确的(其他连接器使用Java密钥库)。请注意,“PEM文件”只是描述文件类型,而不是其内容 您需要两个工件来配置TLS:
[servername].key的文件,证书使用名为[servername].crt
的文件
在不使用客户端证书的情况下,首先验证TLS是否正确配置会更容易,因此请先尝试,然后在上面添加客户端证书配置
现在您已经有了这些文件,与SSL相关的属性值有些明显:
SSLCertificateFile="[servername].crt"
SSLCertificateKeyFile="[servername].key"
您不需要将以下任一属性设置为任何值:
SSLCertificateChainFile
SSLCACertificateFile
不要将密码套件设置为“全部”。。。这将使密码基本上零安全。尝试类似于SSLCipherSuite=“HIGH”
的方法。您将需要在线阅读一些关于如何为现代部署配置一组合适的密码套件的内容