我正在尝试设置一个支持 SSL 的嵌入式 ActiveMQ 代理。
我不断收到相同的错误消息:
ActiveMQ Transport Server: ssl://localhost:61613, called closeSocket()
2012-05-04 12:53:11,961 [ActiveMQ Transport Server: ssl://localhost:61613] ERROR broker.TransportConnector - Could not accept connection : No available certificate or key corresponds to the SSL cipher suites which are enabled.
对此进行搜索表明在生成密钥库和信任库时可能出现故障。
我尝试使用这些指南生成密钥库和信任库,但没有成功。 http://docs.oracle.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html#CreateKeystore
http://activemq.apache.org/how-do-i-use-ssl.html
我试图在 grails 中进行设置,并在 conf/spring/resources.groovy 中定义 EmbeddedActiveMq,如下所示:
SpringSslContext sslContext = new SpringSslContext()
FileSystemResource keyStoreResource = new FileSystemResource("/path/to/keyStore")
FileSystemResource trustStoreResource = new FileSystemResource("/path/to/trustStore")
sslContext.setKeyStore(keyStoreResource)
sslContext.setKeyStorePassword("password")
sslContext.setTrustStore(trustStoreResource)
sslContext.setTrustStorePassword("trustword")
SslBrokerService broker = new SslBrokerService()
broker.setBrokerName("broker")
broker.setPersistent(true)
broker.setUseJmx(true)
broker.setSslContext(sslContext)
TransportConnector connector = new TransportConnector
connector.setUri(new("ssl://localhost:61613"))
broker.addConnector(connector)
broker.start()
然后使用我真的无法获得任何其他有价值的调试信息
System.setProperty("javax.net.debug", "ssl,handshake,data,trustmanager,keymanager")
是否存在 java 仍在尝试使用 jre6/lib/security 中的证书文件的问题?
为了使密钥库等正常工作,您需要做一些具体的事情吗?