HTTPS在JBoss AS 7.1.2(HTTPS on JBoss AS 7.1.2)

2019-10-19 08:44发布

我按照以下链接设置HTTPS在JBoss AS 7.1.2

http://middlewaremagic.com/jboss/?p=992

但在此之后,当我启动JBoss,我得到以下错误:

10:31:05,481 ERROR [org.apache.coyote.http11.Http11AprProtocol]
        ↳ (MSC service thread 1-11) Error initializing endpoint: java.lang.Exception:
        ↳ Unable to load certificate key ../standalone/configuration/chap8.keystore
        ↳ (error:0906D06C:PEM routines:PEM_read_bio:no start line)
    at org.apache.tomcat.jni.SSLContext.setCertificate(Native Method) [jbossweb-7.0.16.Final.jar:]
    at org.apache.tomcat.util.net.AprEndpoint.init(AprEndpoint.java:644) [jbossweb-7.0.16.Final.jar:]
    at org.apache.coyote.http11.Http11AprProtocol.init(Http11AprProtocol.java:121) [jbossweb-7.0.16.Final.jar:]
    at org.apache.catalina.connector.Connector.init(Connector.java:983) [jbossweb-7.0.16.Final.jar:]
    at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:267) [jboss-as-web-7.1.2.Final.jar:7.1.2.Final]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_45]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_45]
    at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45]

10:31:05,489 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-11)
        ↳ MSC00001: Failed to start service jboss.web.connector.https:
        ↳ org.jboss.msc.service.StartException in service jboss.web.connector.https:
        ↳ JBAS018007: Error starting web connector
    at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:271)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_45]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_45]
    at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45]
Caused by: LifecycleException:  Protocol handler initialization failed: java.lang.Exception:
        ↳ Unable to load certificate key ../standalone/configuration/chap8.keystore
        ↳ (error:0906D06C:PEM routines:PEM_read_bio:no start line)
    at org.apache.catalina.connector.Connector.init(Connector.java:985)
    at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:267)
    ... 5 more

请帮我解决这个问题。

Answer 1:

因为JBoss的已使用本机APR库我得到上述错误。 这个问题是通过使JBoss的使用JSE库 ,而不是本地APR库解决。

使用原生=“假”的子系统标签解决问题。



Answer 2:

我知道,在去年加入年前的这个问题,但有人可能会发现这个答案有帮助。 您正在使用org.apache.coyote.http11.Http11AprProtocol协议,它使用本地的OpenSSL。 提供的证书(基础上的文件扩展名)是JKS密钥库。 OpenSSL的无法读取该格式,因此会引发error:0906D06C:PEM routines:PEM_read_bio:no start line 。 为了解决这一点,必须密钥库转换成OpenSSL的兼容格式(CRT,PEM,键)或使用OpenSSL生成新的密钥等。 也有一些配置差异。 请参阅本JBoss的文档 。 这个工程在JBoss AS 7.3.2,但据我所知,在这个问题7.1.2和7.3.2之间没有什么区别。



文章来源: HTTPS on JBoss AS 7.1.2
标签: jboss