gpt4 book ai didi

tomcat - Tomcat 8 SSL 配置后 HTTPS 连接超时

转载 作者:行者123 更新时间:2023-11-28 22:18:15 24 4
gpt4 key购买 nike

我以前从未设置过 SSL/TLS,它不起作用,而且我不知道如何调试它。初始谷歌搜索没有出现选项。这是我所做的:

  1. 使用 openSSL 生成私钥和 CSR

    openssl req -out CSR.csr -new -newkey rsa:2048 -nodes -keyout privateKey.key

  2. 让我的 csr 签名并从 startssl.com 下载证书(第一年免费)

  3. 将根证书、中间证书和我的域证书安装到 .keystore 中,如下所示:

    keytool -import -trustcacerts -alias root -file root.crt -keystore .keystore

    keytool -import -trustcacerts -alias intermediate -file intermediate.crt -keystore .keystore

    keytool -import -trustcacerts -alias tomcat -file mydomain.crt -keystore .keystore

  4. 添加了 tomcat 连接器(如下所示,但我必须删除 xml 尖括号,否则堆栈溢出不会显示它)

    连接器 SSLEnabled="true"acceptCount="100"clientAuth="false"disableUploadTimeout="true"enableLookups="false"maxThreads="25" port="8443"keystoreFile="/home/ec2-user/.keystore"keystorePass="password"protocol="org.apache.coyote.http11.Http11NioProtocol"scheme="https"secure="true"sslProtocol="TLS "

  5. 跳出 tomcat,服务器成功启动并处理 http 请求

  6. 打开 catalina.out 看到以下错误

    java.io.IOException: Alias name tomcat does not identify a key entry

  7. 有人建议我通过连接根证书和中间证书然后使用下面的命令来创建 .pkcs12 文件

    openssl pkcs12 -in mydomain.crt -certfile CA.crt -chain -inkey privateKey.key -out tomcat.p12

  8. 不幸的是,这导致了以下错误:

4294956672:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1201: 4294956672:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:374:Type =PKCS12

  1. 然后我尝试将私钥、域、中间和根证书拼接成一个.pem文件,然后将其转换为x509

  2. 然后我尝试在 jks 和 tomcat 中使用 x509 证书,但我遇到了同样的错误

java.io.IOException: Alias name tomcat does not identify a key entry

通过谷歌阅读此内容让我更加困惑 - 我阅读了这些关于如何执行此操作的非常自信的教程,但它们似乎大错特错。我在哪里可以找到关于如何设置它的准确指南。

最佳答案

  1. 连接 PEM 格式的证书链。

    cat 2_host.domain.net.crt 1_Intermediate.crt CA.crt > fullchain.crt

  2. 将 PEM 格式全链转换为 PKCS12

    openssl pkcs12 -export -out tomcat.p12 -inkey ../ssh.key -in fullchain.crt

  3. 检查 tomcat.pk12

    keytool -list -keystore tomcat.p12 -storetype PKCS12
    keytool -list -keystore tomcat.p12 -storetype PKCS12 -v

  4. 将 PKCS12 转换为 PKS

    keytool -importkeystore -srckeystore tomcat.p12 -srcstoretype PKCS12 -srcalias 1 -destkeystore tomcat.jks -deststoretype JKS -destalias tomcat

  5. tomcat server.xml文件
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
SSLVerifyClient="optional"
keystoreFile="tomcat.jks"
keystoreType="JKS"
keystorePass="mypass"
clientAuth="false" sslProtocol="TLS" />
  1. 测试tomcat配置

    configtest.sh

关于tomcat - Tomcat 8 SSL 配置后 HTTPS 连接超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35028422/

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