【发布时间】:2012-04-12 20:34:09
【问题描述】:
我在 server.xml 中配置了 HTTP 连接器,添加了一些 ssl 功能。我尝试将我的 keyAlias 设置为某个证书的别名(不是密钥库的私钥)。然后,当我启动 JBoss 时,我得到如下信息:
[2012-04-12 17:01:37,236 ERROR [org.apache.coyote.http11.Http11Protocol] Error
initializing endpoint
java.io.IOException: Alias name <somealias> do not indetify a key entry
我也是 ssl 配置和网络安全核心概念的新手。谢谢你的耐心。
编辑:完整的堆栈跟踪如下:
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getKeyManagers(JSSESocketFactory.java:412)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.init(JSSESocketFactory.java:378)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.createSocket(JSSESocketFactory.java:135)
at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:497)
at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:514)
at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:203)
at org.apache.catalina.connector.Connector.start(Connector.java:1146)
at org.jboss.web.tomcat.service.JBossWeb.startConnectors(JBossWeb.java:601)
at org.jboss.web.tomcat.service.JBossWeb.handleNotification(JBossWeb.java:638)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.mx.notification.NotificationListenerProxy.invoke(NotificationListenerProxy.java:153)
at $Proxy46.handleNotification(Unknown Source)
at org.jboss.mx.util.JBossNotificationBroadcasterSupport.handleNotification(JBossNotificationBroadcasterSupport.java:127)
at org.jboss.mx.util.JBossNotificationBroadcasterSupport.sendNotification(JBossNotificationBroadcasterSupport.java:108)
at org.jboss.system.server.ServerImpl.sendNotification(ServerImpl.java:916)
at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:497)
at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362)
at org.jboss.Main.boot(Main.java:200)
at org.jboss.Main$1.run(Main.java:508)
at java.lang.Thread.run(Thread.java:662)
【问题讨论】:
-
您将别名设置为什么?密钥库中是否存在其他私钥?
-
我认为是这样的,在浏览器中访问证书信息时,调用的信息与私钥有关,但应该与证书有关(我们已经获得了试用根和来自威瑞信的中间证书)。
-
我必须补充一点,我通过 Ubuntu 中的 keytool 生成了密钥库,它指出在密钥库中创建了一个密钥对(公共和私有)。
-
别名必须指向一个有效的键。
-
是的,我刚刚意识到你在keyAlias中调用的密钥必须至少有一个私钥。
标签: security ssl jboss ssl-certificate keystore