Ssl – Configure jboss web application to support SSL

javajbossssl

I have a Spring JSF web application which is deployed in JBoss6 Application Server which I want to add SSL(i.e. https). How would I do this in Proper manner with JBoss6?

I've enabled the jboss6\server\default\deploy\jbossweb.sar\server.xml file as follows,

 <Connector protocol="HTTP/1.1" SSLEnabled="true" 
       port="${jboss.web.https.port}" address="${jboss.bind.address}"
       scheme="https" secure="true" clientAuth="false" 
       keystoreFile="${jboss.server.home.dir}/conf/chap8.keystore" 
       keystorePass="rmi+ssl" sslProtocol = "TLS" /> 

and I get the following error when the application is deployed.

Caused by: java.security.UnrecoverableKeyException: Password verification failed
    at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:769) [:1.6.0_22]
    ... 149 more

14:12:21,476 ERROR [AbstractKernelController] Error installing to Start: name=WebServer state=Create: LifecycleException:  Protocol handler initialization failed: java.io.IOException: Keystore was tampered with, or password was incorrect
    at org.apache.catalina.connector.Connector.initialize(Connector.java:1020) [:6.0.0.Final]
    at org.apache.catalina.core.StandardService.initialize(StandardService.java:701) [:6.0.0.Final]
    at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:443) [:6.0.0.Final]
    at org.jboss.web.tomcat.service.deployers.TomcatService.startService(TomcatService.java:359) [:6.0.0.Final]
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:355) [:6.0.0.Final (Build SVNTag:JBoss_6.0.0.Final date: 20101228)]
    at org.jboss.system.ServiceMBeanSupport.pojoStart(ServiceMBeanSupport.java:195) [:6.0.0.Final (Build SVNTag:JBoss_6.0.0.Final date: 20101228)]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_22]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_22]

Best Answer

Make sure you have this in server.xml ,

     <Connector port="443" maxHttpHeaderSize="8192"
     maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
     enableLookups="false" disableUploadTimeout="true"
     acceptCount="100" scheme="https" secure="true"
     **keystoreFile="/path/to/file/mycert.jks"**
     clientAuth="false" sslProtocol="TLS">

Use this link for the reference.

Related Topic