2015-11-23 28 views
1

我目前有一个WildFly 9集群可以通过端口8080访问我的应用程序,我想设置SSL并只能访问端口8443,但我似乎无法找到任何文档,以了解安全领域和https监听器被置于域模式。如何在WildFly 9域模式上设置SSL?

我有密钥库和证书都设置好,并且能够使用独立模式在演示中获得https,但我需要能够在域模式下执行此操作。

任何人都可以帮助我,并分享他们已经完成了这个?

+0

哈瓦你找到解决办法?我也有兴趣。到目前为止,我认为集群中的服务器必须具有相同的jks。在域控制器domain.xml应该是配置。但是放什么? PS;群集节点应该位于专用网络中,防火墙可以防止外部攻击。理想情况下,从工作站和笔记本电脑中分离出来 - 但我必须保证LB的连接。 – Orbita

+1

我发布了下面的解决方案。如果您有任何其他问题,请告知我 –

+0

谢谢,它也适用于我!一个小问题jboss.server.config.dir应该是jboss.domain.config.dir,而我认为域。节点上不需要xml,但我必须检查它。我认为http侦听器可以添加如下:/ subsystem = undertow/server = default-server/https-listener = default-https:add(socket-binding =“https”,security-realm =“SSLRealm”) – Orbita

回答

4

解决了!事实证明,由于某种原因,JBoss没有注册我的安全领域和HTTPS侦听器。要做到这一点,你需要使用斌/ jbosscli和命令:

RUN “连接” 命令首先

/host=master/core-service=management/security-realm=SSLRealm/:add() 

---其中SSLRealm是境界

/host=master/core-service=management/security-realm=SSLRealm/server-identity=ssl/:add(keystore-path=Keystore.jks, keystore-relative-to=jboss.domain.config.dir, keystore-password=password) 

的名字---假定密钥库存在于域/配置目录中

重新启动服务器。

然后我跑进搞清楚命令注册HTTPS监听器的问题,但我发现WildFly Web控制台在的serverURL:9990有办法做到这一点:

一旦登录到Web控制台 配置 - > Profiles->对于其每一个是used-> Undertow-> HTTP->查看

从那里

HTTP服务器 - >默认 - 服务器 - >视图

最后

0123轮廓

HTTPS Listener-> ADD输入一个名称,如:默认HTTPS,安全领域:选择在安全领域(在这个例子中SSLRealm)的名称,插座绑定:HTTPS和点击保存

重新启动再次

您现在应该可以在您的服务器上访问URL:8443

要在从属服务器上进行设置,您只需将密钥库复制到每个从属服务器域/配置,然后将安全域replace/host = master /与/ host = slave /在命令中。然后重新启动服务器。

仔细检查上从domain.xml文件有你在Web控制台最初创建的HTTPS侦听器(它会自动投入所有群集的domain.xml文件)