簡體   English   中英

JBoss的SSL證書導入和配置

[英]SSL Certificate Import and configuration for JBoss

我對JBoss配置還很陌生,因此我被要求將證書導入JBoss App服務器。 根據我在論壇上閱讀的內容,我認為我做了必要的事情,但是我們仍然看到“沒有任何TrustManager允許信任該客戶端嘗試連接到的遠程服務器提供的SSL證書。 “ 錯誤信息。 我們已經在JBoss服務器上托管了一個Pega應用程序,並且Pega應用程序進行了1向出站調用,以使用來自IBM Datapower的服務。 我們在Red Hat Enterprise Linux 7.1上使用Red Hat JBoss中間件(EWS + EAP),並已在Domain模式下設置了JBoss。

JBoss企業應用程序平台6.4版安裝在/ opt / jboss文件夾下,該文件夾由配置為僅在域模式下運行的jboss系統用戶擁有。 該環境已預先配置了一個域控制器和一個或多個主機控制器。 所有主機控制器都可以由域控制器管理。 該環境還專門針對完全HA配置文件進行了操作。

在此處輸入圖片說明 我們有一個用於Datapower的SGWSGateway-sscert.pem證書,要求我將其導入JBoss。 我采取的步驟是。 如果我對我的設置不正確或需要更改的內容有任何幫助,我將非常有義務。

1)使用別名-sgwsgateway將其導入/ host-controller / configuration / keystores中的jbossTrust.jks。
在此處輸入圖片說明

2)domain.xml配置為:

               <subsystem xmlns="urn:jboss:domain:web:2.2" default-virtual-server="default-host" native="false">
                    <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
                    <connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" secure="true">
                          <ssl/>
                    </connector>
                    <connector name="ajp" protocol="AJP/1.3" scheme="http" socket-binding="ajp"/>
                    <virtual-server name="default-host" enable-welcome-root="true">
                        <alias name="localhost"/>
                    </virtual-server>
                </subsystem>

      <interfaces>
            <interface name="management"/>
            <interface name="public"/>
            <interface name="unsecure"/>
        </interfaces>


        <socket-binding-groups>
            <socket-binding-group name="full-ha-sockets" default-interface="public">
                <socket-binding name="ajp" port="8009"/>
                <socket-binding name="http" port="8080"/>
                <socket-binding name="https" port="8443"/>
                <socket-binding name="jacorb" interface="unsecure" port="3528"/>
                <socket-binding name="jacorb-ssl" interface="unsecure" port="3529"/>
                <socket-binding name="jgroups-mping" port="0" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45700"/>
                <socket-binding name="jgroups-tcp" port="7600"/>
                <socket-binding name="jgroups-tcp-fd" port="57600"/>
                <socket-binding name="jgroups-udp" port="55200" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45688"/>
                <socket-binding name="jgroups-udp-fd" port="54200"/>
                <socket-binding name="messaging" port="5445"/>
                <socket-binding name="messaging-group" port="0" multicast-address="${jboss.messaging.group.address:231.7.7.7}" multicast-port="${jboss.messaging.group.port:9876}"/>
                <socket-binding name="messaging-throughput" port="5455"/>
                <socket-binding name="modcluster" port="0" multicast-address="224.0.1.105" multicast-port="23364"/>
                <socket-binding name="remoting" port="4447"/>
                <socket-binding name="txn-recovery-environment" port="4712"/>
                <socket-binding name="txn-status-manager" port="4713"/>
                <outbound-socket-binding name="mail-smtp">
                    <remote-destination host="localhost" port="25"/>
                </outbound-socket-binding>
            </socket-binding-group>
        </socket-binding-groups>

        <server-groups>
            <server-group name="jboss-server-group" profile="full-ha">
                <jvm name="pega_default">
                    <heap size="4096m" max-size="8192m"/>
                    <permgen size="768m" max-size="1536m"/>
                    <jvm-options>
                        <option value="-Xms8192m"/>
                        <option value="-Xmx8192m"/>
                        <option value="-XX:NewSize=1536m"/>
                        <option value="-XX:MaxNewSize=1536m"/>
                        <option value="-XX:PermSize=768m"/>
                        <option value="-XX:MaxPermSize=1536m"/>
                        <option value="-Djboss.as.management.blocking.timeout=60000"/>
                        <option value="-Djava.net.preferIPv4Stack=true"/>
                        <option value="-XX:TargetSurvivorRatio=90"/>
                        <option value="-XX:+UseParNewGC"/>
                        <option value="-XX:+UseConcMarkSweepGC"/>
                        <option value="-XX:+UseCMSInitiatingOccupancyOnly"/>
                        <option value="-XX:CMSInitiatingOccupancyFraction=80"/>
                        <option value="-XX:+CMSClassUnloadingEnabled"/>
                        <option value="-XX:ReservedCodeCacheSize=768m"/>
                        <option value="-XX:+UseCodeCacheFlushing"/>
                        <option value="-XX:+DisableExplicitGC"/>
                        <option value="-XX:+PrintGCDetails"/>
                        <option value="-verbose:gc"/>
                        <option value="-Xloggc:/opt/jboss/host-controller/log/gc.%t.%p.log"/>
                        <option value="-XX:+UseGCLogFileRotation"/>
                        <option value="-XX:NumberOfGCLogFiles=10"/>
                        <option value="-XX:GCLogFileSize=1M"/>
                        <option value="-Djava.awt.headless=true"/>
                        <option value="-Djboss.modules.policy-permissions=true"/>
                    </jvm-options>
                </jvm>
                <socket-binding-group ref="full-ha-sockets"/>
                <deployments>
                    <deployment name="example.war" runtime-name="example.war"/>
                    <deployment name="prhelp.war" runtime-name="prhelp.war"/>
                    <deployment name="prsysmgmt_jboss.war" runtime-name="prsysmgmt_jboss.war"/>
                    <deployment name="prpc_j2ee14_jboss61JBM.ear" runtime-name="prpc_j2ee14_jboss61JBM.ear"/>
                </deployments>
            </server-group>
        </server-groups>

3)host-master.xml配置為:

    <security-realms>
        <security-realm name="ManagementRealm">
            <server-identities>
                <ssl protocol="TLSv1">
                    <keystore path="keystores/jbossIdentity.jks" relative-to="jboss.domain.config.dir" keystore-password="${VAULT::serverInfo::dc_ident_keystore_password::1}" alias="jboss_domain"/>
                </ssl>
            </server-identities>
            <authentication>
                <properties path="mgmt-users.properties" relative-to="jboss.domain.config.dir"/>
            </authentication>
            <authorization map-groups-to-roles="false">
                <properties path="mgmt-groups.properties" relative-to="jboss.domain.config.dir"/>
            </authorization>
        </security-realm>

4)host-slave.xml配置為:

            <security-realms>
                <security-realm name="ManagementRealm">
                    <server-identities>
                        <ssl protocol="TLSv1">
                            <keystore path="keystores/jbossIdentity.jks" relative-to="jboss.domain.config.dir" keystore-password="${VAULT::serverInfo::hc_identity_keystore_password::1}" alias="jboss_host"/>
                        </ssl>
                        <secret value="U2NvdGlhYmFua0Ax"/>
                    </server-identities>
                    <authentication>
                        <truststore path="keystores/jbossTrust.jks" relative-to="jboss.domain.config.dir" keystore-password="${VAULT::serverInfo::hc_trust_keystore_password::1}"/>
                        <properties path="mgmt-users.properties" relative-to="jboss.domain.config.dir"/>
                    </authentication>
                    <authorization map-groups-to-roles="false">
                        <properties path="mgmt-groups.properties" relative-to="jboss.domain.config.dir"/>
                    </authorization>
                </security-realm>

        <interfaces>
            <interface name="management">
                <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
            </interface>
            <interface name="public">
                <inet-address value="${jboss.bind.address:127.0.0.1}"/>
            </interface>
            <interface name="unsecure">
                <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
            </interface>
        </interfaces>


        <servers>
            <server name="jboss-server-one" group="jboss-server-group" auto-start="true">
                <jvm name="pega_default"/>
                <socket-bindings port-offset="100"/>
            </server>
      </servers>

問候阿里。

我們通過在Java級別添加證書解決了這一問題。 在上述問題場景中,我們將證書導入到JBoss密鑰庫中。 由於我們設置了不同的JVM,因此該應用程序找不到證書。 因此,我們將證書導入到jre文件夾中的Java cacerts密鑰庫中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM