无法加载证书密钥 C:apache-tomcat-8.5.38conf/abc.key(错误:0909006C:PEM 例程:get_name:无起始行)

无法加载证书密钥 C:apache-tomcat-8.5.38conf/abc.key(错误:0909006C:PEM 例程:get_name:无起始行)

需要帮助解决以下错误:刚刚添加了一个新证书并将密钥、链和 crt 复制到 /conf。启动 tomcat 后出现以下错误。

我在博客中看到需要在子系统中添加 native="false" ,我可以知道哪里需要添加吗?

<Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
               maxThreads="150" SSLEnabled="true" >
        <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
        <SSLHostConfig>
            <Certificate certificateKeyFile="conf/abc.key"
                         certificateFile="conf/abc.crt"
                         certificateChainFile="conf/abc.chn"
                         type="RSA" />
            <subsystem   native="false"  />
        </SSLHostConfig>
    </Connector>

02-May-2019 05:28:31.955 SEVERE [main] org.apache.catalina.core.StandardService.initInternal Failed to initialize connector [Connector[org.apache.coyote.http11.Http11AprProtocol-8443]]
 org.apache.catalina.LifecycleException: Failed to initialize component [Connector[org.apache.coyote.http11.Http11AprProtocol-8443]]
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:112)
    at org.apache.catalina.core.StandardService.initInternal(StandardService.java:552)
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107)
    at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:875)
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107)
    at org.apache.catalina.startup.Catalina.load(Catalina.java:639)
    at org.apache.catalina.startup.Catalina.load(Catalina.java:662)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:309)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492)
Caused by: org.apache.catalina.LifecycleException: Protocol handler initialization failed
    at org.apache.catalina.connector.Connector.initInternal(Connector.java:995)
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107)
    ... 12 more
Caused by: java.lang.Exception: Unable to load certificate key C:\apache-tomcat-8.5.38\conf/ltrkarkvm657.mgmt.windstream.net.key (error:0909006C:PEM routines:get_name:no start line)
    at org.apache.tomcat.jni.SSLContext.setCertificate(Native Method)
    at org.apache.tomcat.util.net.AprEndpoint.createSSLContext(AprEndpoint.java:503)
    at org.apache.tomcat.util.net.AprEndpoint.bind(AprEndpoint.java:376)
    at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1087)
    at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:581)
    at org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java:68)
    at org.apache.catalina.connector.Connector.initInternal(Connector.java:993)
    ... 13 more

答案1

将所有文件(crt、chain、key)转换为 PEM 格式。例如,它们在 CER 格式下不起作用。确保每个文件都包含包含字符串BEGIN和的行END

相关内容