how to configure ssl in wildfly 8.2.0 server?

subhakar patnala picture subhakar patnala · Mar 19, 2015 · Viewed 11.4k times · Source

I want secure connection for my web application. So, i want to configure ssl for my wildfly 8.2.0 server. I have created and stored .keystore file in standalone/configuration folder.

 $ keytool -genkey -alias foo -keyalg RSA -keystore foo.keystore   -validity 10950
Enter keystore password: secret

Have to add :

<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false">
<connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"  redirect-port="443" />
 <connector name="https" scheme="https" protocol="HTTP/1.1" socket-binding="https" enable-lookups="false" secure="true">
<ssl name="foo-ssl" password="secret" protocol="TLSv1" key-alias="foo" certificate-key-file="../standalone/configuration/foo.keystore" />
</connector>

in standalone.xml file, but there is tag :

<subsystem xmlns="urn:jboss:domain:remoting:2.0">
        <endpoint worker="default"/>
        <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/>
    </subsystem>

When i am replacing this with above specified tags getting errors:

Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[288,106]
Message: Unexpected element '{urn:jboss:domain:web:1.1}subsystem'

Answer

subhakar patnala picture subhakar patnala · Mar 20, 2015

I have configured ssl for wildfly 8.2.0.

step1: Creating keystore

cd $WILDFLY_HOME/standalone/configuration
keytool -genkey -alias localhost -keyalg RSA -keystore keystore.jks -keysize 4096

step2: Editing configuration/standalone.xml

 <management>
 <security-realms>
**<security-realm name="SslRealm">
  <server-identities>
    <ssl>
      <keystore path="keystore.jks" relative-to="jboss.server.config.dir" keystore-password="changeme"/>
    </ssl>
  </server-identities>
</security-realm>**
</security-realms>

step3: Adding listener for https by editing standalone.xml

<subsystem xmlns="urn:jboss:domain:undertow:1.2">
<buffer-cache name="default"/>
<server name="default-server">
<http-listener name="default" socket-binding="http"/>
**<https-listener name="default-ssl" socket-binding="https" security-realm="SslRealm"/>**

Now ssl is configured and my website is secured.