2012-05-04 16 views
6

Estoy tratando de configurar un broker ActiveMQ incrustado compatible con SSL.ActiveMQ broker incrustado SSL

Im que consigue de forma continua el mismo error msg:

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. 

Buscando en esto da indicación de la posibilidad de un mal funcionamiento en la generación del almacén de claves y almacén de confianza.

He intentado generar keystore y truststore usando estas guías sin éxito. http://docs.oracle.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html#CreateKeystore

http://activemq.apache.org/how-do-i-use-ssl.html

Im tratando de instalar esto en griales y estoy definiendo el interior embeddedActiveMq conf/primavera/resources.groovy como sigue:

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() 

Realmente no puedo conseguir cualquier otra depuración valuble información luego usando

System.setProperty("javax.net.debug", "ssl,handshake,data,trustmanager,keymanager") 

¿Podría haber un problema de que java sigue siendo t ¿Desea utilizar los archivos de certificado en jre6/lib/security?

¿Hay algo específico que deba hacer para que el almacén de claves, etc. funcione correctamente?

Respuesta

0

El enlace que proporcionó anteriormente (http://activemq.apache.org/how-do-i-use-ssl.html) en realidad pone una referencia a una guía de solución de problemas para su problema en Thawte. Siga estos pasos y verifique si lo hace funcionar.

Otra pista, que podría ser una posibilidad remota, pero de todos modos - cuando he tenido problemas con los certificados en Java (en su mayoría certificados DSA aunque - asegurarse de que tiene certificados RSA por menos problemas), la JVM instalada tenía restricciones a la exportación a ciertos cifrados. Aquí hay un enlace para "parchear" eso. No creo que este sea el caso para usted, pero de todos modos, podría ser una idea para verificar.

http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html

1

Tome un vistazo a las pruebas unitarias ActiveMQ, especialmente SslBrokerServiceTest. Muestra cómo configurar SslBrokerService correctamente y cómo crear KeyStore y TrustStore.