说明:
1. 服务器是wildfly 10.1
2. 使用lets encrypt 免费申请SSL,但是只能免费3个月,三个月之后必须重新申请SSL
配置步骤
一. 免费申请let’s encrypt提供的SSL凭证
1.请安照下面提供网址的详细步骤去申请SSL凭证 请点击申请
注:申请成功之后会产生三个文件(certificate.crt、private.key、ca_bundle.crt(该文件可以删除))
二. 将申请的SSL凭证合成为wildfly可识别的.jks文件
wildfly能识别.jks文件,所以必须要将private.key 和 certificate.crt合并在一起生成一个后缀为.jks的文件
使用SSL在线SSL合成工具生成.jks文件
点击打开上面的链接安照下面步骤来操作:
1. 将private.key复制粘贴到该链接网页的第一个框中
2.将certificate.crt复制粘贴到该链接网页的第二个框中
3.填写JKS的密码并记录下来(jskPassword)(该密码是wildfly访问jks的时候需要提供的密码,所以配置wildfly时需要用到该密码)
4. 下载合成好的xxx.jks文件至wildfly-10.1.0\standalone\configuration文件夹下面
三. 配置wildfly10.1
找到wildfly-10.1.0\standalone\configuration\standalone.xml文件,在该文件中做俩处修改。
第一处修改:
增加一个security-realm标签 其name为SslRealm
<security-realms>
...
<security-realm name="SslRealm">
<server-identities>
<ssl>
<keystore path="上面合成好的jks名称(xxx.jks)" relative-to="jboss.server.config.dir"
keystore-password="上面记录的密码(jskPassword)"/>
</ssl>
</server-identities>
</security-realm>
第二处修改:
增加或者修改https-listener标签里面的值和下面一样
<subsystem xmlns="urn:jboss:domain:undertow:1.0">
...
<server name="default-server">
<http-listener name="default" socket-binding="http"/>
<https-listener name="https" socket-binding="https" security-realm="SslRealm"/>
<host name="default-host" alias="localhost">
<location name="/" handler="welcome-content"/>
<filter-ref name="server-header"/>
<filter-ref name="x-powered-by-header"/>
</host>
</server>
...