7 Replies Latest reply on Jul 31, 2017 10:45 AM by nuno.godinhomatos

    Cannot access remotely an application

    jmbeleta

      I am using WildFly 10 Final Standalone. I am trying to deploy an application, it deploys with no problem and I can access it using localhost, but I cannot access it remotely or thru the ip address of the local machine. The message is always the same: Forbidden.

       

      Every time I try to access I get a line in the log like this:

       

      14:21:03,237 WARN  [org.jboss.weld.probe.Probe] (default task-27) PROBE-000017: Access to 172.26.0.10 denied for /MyAppName

       

      172.26.0.10 is the IP address of the machine from which I try to connect.

       

      I can remotely access with NO problem to the management console.

       

      My interfaces definition in standalone.xml is:

       

      <interfaces>

        <interface name="management">

          <any-address/>

         </interface>

         <interface name="public">

           <any-address/>

         </interface>

         <interface name="unsecure">

           <any-address/>

         </interface>

      </interfaces>

       

      I tried using:

       

          <inet-address value="${jboss.bind.address:0.0.0.0}"/>

       

      or

       

          <inet-address value="0.0.0.0"/>


      instead of

       

           <any-address/>

       

      with no success.

       

      Summarizing:

       

      1. CAN ACCESS WidlFly home screen remotely
      2. CAN ACCESS remotely the management console
      3. CAN ACCESS locally my application
      4. CANNOT ACCESS my application remotely.

       

      Any help would be greatly appreciated.

       

      Josep M Beleta

        • 1. Re: Cannot access remotely an application
          jmbeleta

          I have more findings on my problem.

           

          I have installed WildFly 10 on a Mac computer and another Windows machine with the same results: "Forbidden" when trying to access my application from another computer.

           

          WildFly 9.02 works with the same configuration with no problem.

           

          Only three changes in the WildFly files either 10 or 9:

           

          1. rem set "JAVA_HOME=C:\Program Files\Java\jdk1.8" on standalone.conf.bat.
          2. In standalone.xml:   
            <interfaces>

                <interface name="management">

                  <inet-address value="${jboss.bind.address.management:0.0.0.0}"/>

                </interface>

                <interface name="public">

                  <inet-address value="${jboss.bind.address:0.0.0.0}"/>

                </interface>

              </interfaces>

              3.  And also in standalone.xml: 
              <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:100}">

           

          This works perfectly for WildFly 9 but not for WildFly 10. To be sure I reinstalled WildFly 10 from scratch making only the changes stated above with no success at all.

           

          It is clearly a WIldFly 10 bug.

           

          Josep M Beleta

          • 2. Re: Cannot access remotely an application
            dmaestas

            org.jboss.probe.Probe is used to assist in development of CDI applications. From the weld reference manual:

             

                 This tool allows to inspect the application CDI components at runtime.

             

            I suspect this module blocks access from remote IP addresses for security reasons. If you disable development mode in the admin console under "Configurations | Subsystems | Weld" you should be able to access your resources remotely. If you need remote access while developing, then consider adding a front end proxy to Wildfly, such as Apache or Nginx.

             

            There may be a way to configure the Probe module to allow remote access, but I have not been able to find it.

            1 of 1 people found this helpful
            • 3. Re: Cannot access remotely an application
              nuno.godinhomatos

              I am having similar trouble.

               

              I am running a CentOs machine right now, and trying to telnet to 192.168.56.1 8080.

              This is the port where wildfly, on my windows Host OS is listening.

               

              The behavior I have is the following.

               

              First, I had the address elements with 127.0.0.1.

              So not even from windows could I do a telnet 192.168.56.1 8080 to connect.

               

              Then, I changed the configuration to be as follows:

              <interfaces>

                      <interface name="management">

                          <inet-address value="${jboss.bind.address.management:0.0.0.0}"/>

                      </interface>

                      <interface name="public">

              <any-address/>

                      </interface>

                      <interface name="unsecure">

                          <inet-address value="${jboss.bind.address.unsecure:0.0.0.0}"/>

                      </interface>

                  </interfaces>

               

               

                  <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">

                      <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>

                      <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/>

                      <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>

                      <socket-binding name="http" interface="public" port="${jboss.http.port:8080}"/>

                      <socket-binding name="https" port="${jboss.https.port:8443}"/>

                      <socket-binding name="iiop" interface="unsecure" port="3528"/>

                      <socket-binding name="iiop-ssl" interface="unsecure" port="3529"/>

                      <socket-binding name="txn-recovery-environment" port="4712"/>

                      <socket-binding name="txn-status-manager" port="4713"/>

                      <socket-binding name="remoting" port="4447"/>

                      <outbound-socket-binding name="mail-smtp">

                          <remote-destination host="localhost" port="25"/>

                      </outbound-socket-binding>

                      <outbound-socket-binding name="remote-ejb">

                          <remote-destination host="localhost" port="8080"/>

                      </outbound-socket-binding>

                  </socket-binding-group>

               

               

              With this configuration, when I do a netstat, I can clearly see the socket on the OS level is not associated to any sopecific network interface.

              So it should accept connections from everyone:

               

              TCP    192.168.56.1:8080      0.0.0.0:0              LISTENING

              TCP    192.168.56.1:8080      192.168.56.1:49668     ESTABLISHED

              TCP    192.168.56.1:49668     192.168.56.1:8080      ESTABLISHED

               

              But in fact, as shown above, it only allows me to connect from my own Host Pc.

              If try the same from the guest OS nothing happens.

               

              Intiaiyll, I thought the problem was natrually my windows firewall that is set to block inbound connections.

              And that was very true.

              But then a rule was added to enable connections from the Guest OS.

              With this rule the gets OS can both ping the Host os, and  connect to, for example Oracle 1521 or postgres 5432.

               

              Therefore, it is very clear the virtual box host only network is working as it should.

               

              So my next expriment was downloading Hercules socket client.

              It could be that some special rule was applying to port 8080 for remote connections.

               

              So with hercules, I have opened the socket 8080, and then my guest OS can perfectly connect to this port.

               

              So the issue must clearly lay on the Software layers on wildfly.

              Despite my configuration on the port configuration being as permissive as I can try to make it, still remote hosts are hitting against a wall.

               

               

              I tried to check the Weld subsytem if development mode was enabled, it was not.

               

              Any ideas what could be wrong?

              • 4. Re: Cannot access remotely an application
                nuno.godinhomatos

                I should add a small correction. On the netstat above, the configuration I was testing actually had as listen inet address the ip: 192.168.56.1, which is why on the listed LISTEN netstat entry, the inbound address shows explicitely that particular IP address. When I use the <any-address> element, to confiugre the listen socket, my LISTEN  looks as follows:

                 

                TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING

                 

                 

                Unfortunately, this socket I cannot wireshark.

                Wireshark would allow me to monitor my physical network cards, but not the virtual host only adapter from virtual box.

                But I suspect that I would be seing an Immediate OPEN request and FYN close tcp ip socket.

                 

                The reason why this is happening I do not know.

                 

                 

                In case it may help, here is a snippet of the dummy configuration under test.

                 

                <?xml version='1.0' encoding='UTF-8'?>

                 

                 

                <server xmlns="urn:jboss:domain:4.0">

                 

                 

                    <extensions>

                        <extension module="org.jboss.as.clustering.infinispan"/>

                        <extension module="org.jboss.as.connector"/>

                        <extension module="org.jboss.as.deployment-scanner"/>

                        <extension module="org.jboss.as.ee"/>

                        <extension module="org.jboss.as.ejb3"/>

                        <extension module="org.jboss.as.jaxrs"/>

                        <extension module="org.jboss.as.jdr"/>

                        <extension module="org.jboss.as.jmx"/>

                        <extension module="org.jboss.as.jpa"/>

                        <extension module="org.jboss.as.jsf"/>

                        <extension module="org.jboss.as.jsr77"/>

                        <extension module="org.jboss.as.logging"/>

                        <extension module="org.jboss.as.mail"/>

                        <extension module="org.jboss.as.naming"/>

                        <extension module="org.jboss.as.pojo"/>

                        <extension module="org.jboss.as.remoting"/>

                        <extension module="org.jboss.as.sar"/>

                        <extension module="org.jboss.as.security"/>

                        <extension module="org.jboss.as.transactions"/>

                        <extension module="org.jboss.as.webservices"/>

                        <extension module="org.jboss.as.weld"/>

                        <extension module="org.wildfly.extension.batch.jberet"/>

                        <extension module="org.wildfly.extension.bean-validation"/>

                        <extension module="org.wildfly.extension.io"/>

                        <extension module="org.wildfly.extension.messaging-activemq"/>

                        <extension module="org.wildfly.extension.request-controller"/>

                        <extension module="org.wildfly.extension.security.manager"/>

                        <extension module="org.wildfly.extension.undertow"/>

                        <extension module="org.wildfly.iiop-openjdk"/>

                    </extensions>

                 

                 

                    <system-properties>

                        <property name="eclipselink.archive.factory" value="org.jipijapa.eclipselink.JBossArchiveFactoryImpl"/>

                    </system-properties>

                 

                 

                 

                 

                    <management>

                        <security-realms>

                            <security-realm name="ManagementRealm">

                                <authentication>

                                    <local default-user="$local" skip-group-loading="true"/>

                                    <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/>

                                </authentication>

                                <authorization map-groups-to-roles="false">

                                    <properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/>

                                </authorization>

                            </security-realm>

                            <security-realm name="ApplicationRealm">

                                <authentication>

                                    <local default-user="$local" allowed-users="*" skip-group-loading="true"/>

                                    <properties path="application-users.properties" relative-to="jboss.server.config.dir"/>

                                </authentication>

                                <authorization>

                                    <properties path="application-roles.properties" relative-to="jboss.server.config.dir"/>

                                </authorization>

                            </security-realm>

                        </security-realms>

                        <audit-log>

                            <formatters>

                                <json-formatter name="json-formatter"/>

                            </formatters>

                            <handlers>

                                <file-handler name="file" formatter="json-formatter" path="audit-log.log" relative-to="jboss.server.data.dir"/>

                            </handlers>

                            <logger log-boot="true" log-read-only="false" enabled="false">

                                <handlers>

                                    <handler name="file"/>

                                </handlers>

                            </logger>

                        </audit-log>

                        <management-interfaces>

                            <http-interface security-realm="ManagementRealm" http-upgrade-enabled="true">

                                <socket-binding http="management-http"/>

                            </http-interface>

                        </management-interfaces>

                        <access-control provider="simple">

                            <role-mapping>

                                <role name="SuperUser">

                                    <include>

                                        <user name="$local"/>

                                    </include>

                                </role>

                            </role-mapping>

                        </access-control>

                    </management>

                 

                 

                    <profile>

                        <subsystem xmlns="urn:jboss:domain:logging:3.0">

                            <console-handler name="CONSOLE">

                                <level name="INFO"/>

                                <formatter>

                                    <named-formatter name="COLOR-PATTERN"/>

                                </formatter>

                            </console-handler>

                            <periodic-rotating-file-handler name="FILE" autoflush="true">

                                <formatter>

                                    <named-formatter name="PATTERN"/>

                                </formatter>

                                <file relative-to="jboss.server.log.dir" path="wildfly-jboss-logging-server.log"/>

                                <suffix value=".yyyy-MM-dd"/>

                                <append value="true"/>

                            </periodic-rotating-file-handler>

                            <logger category="com.arjuna">

                                <level name="DEBUG"/>

                            </logger>

                            <logger category="org.jboss.jca">

                                <level name="INFO"/>

                            </logger>

                            <logger category="org.jboss.as.connector">

                                <level name="INFO"/>

                            </logger>

                            <logger category="org.jboss.as.config">

                                <level name="INFO"/>

                            </logger>

                            <logger category="sun.rmi">

                                <level name="WARN"/>

                            </logger>

                            <root-logger>

                                <level name="INFO"/>

                                <handlers>

                                    <handler name="CONSOLE"/>

                                    <handler name="FILE"/>

                                </handlers>

                            </root-logger>

                            <formatter name="PATTERN">

                                <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (thread: %t) %s%e%n"/>

                            </formatter>

                            <formatter name="COLOR-PATTERN">

                                <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (thread: %t) %s%e%n"/>

                            </formatter>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:batch-jberet:1.0">

                            <default-job-repository name="in-memory"/>

                            <default-thread-pool name="batch"/>

                            <job-repository name="in-memory">

                                <in-memory/>

                            </job-repository>

                            <thread-pool name="batch">

                                <max-threads count="10"/>

                                <keepalive-time time="30" unit="seconds"/>

                            </thread-pool>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:bean-validation:1.0"/>

                        <subsystem xmlns="urn:jboss:domain:datasources:4.0">

                            <datasources>

                                <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">

                                    <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>

                                    <driver>h2</driver>

                                    <security>

                                        <user-name>sa</user-name>

                                        <password>sa</password>

                                    </security>

                                </datasource>

                                <datasource jta="true" jndi-name="java:/jdbc/POSTGRESORCL_DS" pool-name="POSTGRESORCL_DS" enabled="true" use-ccm="true" statistics-enabled="true">

                                    <connection-url>jdbc:postgresql://localhost:5432/POSTGRESORCLDB</connection-url>

                                    <connection-property name="databaseName">

                                        POSTGRESORCLDB

                                    </connection-property>

                                    <driver>postgres</driver>

                                    <pool>

                                        <min-pool-size>22</min-pool-size>

                                        <max-pool-size>32</max-pool-size>

                                        <prefill>true</prefill>

                                    </pool>

                                    <security>

                                        <user-name>POSTGRESORCL</user-name>

                                        <password>POSTGRESORCL</password>

                                    </security>

                                    <validation>

                                        <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker"/>

                                        <validate-on-match>false</validate-on-match>

                                        <background-validation>true</background-validation>

                                        <background-validation-millis>10000</background-validation-millis>

                                        <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLExceptionSorter"/>

                                    </validation>

                                </datasource>

                             

                                <drivers>

                                    <driver name="h2" module="com.h2database.h2">

                                        <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>

                                    </driver>             

                                    <driver name="postgres" module="org.postgres.jdbc">

                                        <xa-datasource-class>org.postgresql.Driver</xa-datasource-class>

                                    </driver>

                                </drivers>

                            </datasources>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:deployment-scanner:2.0">

                            <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" runtime-failure-causes-rollback="${jboss.deployment.scanner.rollback.on.failure:false}"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:ee:4.0">

                            <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement>

                            <concurrent>

                                <context-services>

                                    <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/>

                                </context-services>

                                <managed-thread-factories>

                                    <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/>

                                </managed-thread-factories>

                                <managed-executor-services>

                                    <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" keepalive-time="5000"/>

                                </managed-executor-services>

                                <managed-scheduled-executor-services>

                                    <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" keepalive-time="3000"/>

                                </managed-scheduled-executor-services>

                            </concurrent>

                            <default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:ejb3:4.0">

                            <session-bean>

                                <stateless>

                                    <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>

                                </stateless>

                                <stateful default-access-timeout="5000" cache-ref="simple" passivation-disabled-cache-ref="simple"/>

                                <singleton default-access-timeout="5000"/>

                            </session-bean>

                            <mdb>

                                <resource-adapter-ref resource-adapter-name="${ejb.resource-adapter-name:MessageDrivenBeanConnectionFactory.rar}"/>

                                <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>

                            </mdb>

                            <pools>

                                <bean-instance-pools>

                                    <strict-max-pool name="slsb-strict-max-pool" derive-size="from-worker-pools" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>

                                    <strict-max-pool name="mdb-strict-max-pool" max-pool-size="40" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>

                                </bean-instance-pools>

                            </pools>

                            <caches>

                                <cache name="simple"/>

                                <cache name="distributable" passivation-store-ref="infinispan" aliases="passivating clustered"/>

                            </caches>

                            <passivation-stores>

                                <passivation-store name="infinispan" cache-container="ejb" max-size="10000"/>

                            </passivation-stores>

                            <async thread-pool-name="aync-ejb-thread-pool"/>

                            <timer-service thread-pool-name="timer-service-thread-pool" default-data-store="default-file-store">

                                <data-stores>

                                    <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/>

                                </data-stores>

                            </timer-service>

                            <remote connector-ref="remoting-connector" thread-pool-name="remote-ejb-thread-pool"/>

                            <thread-pools>

                                <thread-pool name="default">

                                    <max-threads count="10"/>

                                    <keepalive-time time="100" unit="milliseconds"/>

                                </thread-pool>

                                <thread-pool name="remote-ejb-thread-pool">

                                    <max-threads count="10"/>

                                    <keepalive-time time="100" unit="milliseconds"/>

                                </thread-pool>

                                <thread-pool name="timer-service-thread-pool">

                                    <max-threads count="10"/>

                                    <keepalive-time time="100" unit="milliseconds"/>

                                </thread-pool>

                                <thread-pool name="aync-ejb-thread-pool">

                                    <max-threads count="10"/>

                                    <keepalive-time time="100" unit="milliseconds"/>

                                </thread-pool>

                            </thread-pools>

                            <iiop enable-by-default="false" use-qualified-name="false"/>

                            <default-security-domain value="other"/>

                            <default-missing-method-permissions-deny-access value="true"/>

                            <log-system-exceptions value="true"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:io:1.1">

                            <worker name="default"/>

                            <buffer-pool name="default"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:infinispan:4.0">

                            <cache-container name="server" default-cache="default" module="org.wildfly.clustering.server">

                                <local-cache name="default">

                                    <transaction mode="BATCH"/>

                                </local-cache>

                            </cache-container>

                            <cache-container name="web" default-cache="passivation" module="org.wildfly.clustering.web.infinispan">

                                <local-cache name="passivation">

                                    <locking isolation="REPEATABLE_READ"/>

                                    <transaction mode="BATCH"/>

                                    <file-store passivation="true" purge="false"/>

                                </local-cache>

                                <local-cache name="persistent">

                                    <locking isolation="REPEATABLE_READ"/>

                                    <transaction mode="BATCH"/>

                                    <file-store passivation="false" purge="false"/>

                                </local-cache>

                            </cache-container>

                            <cache-container name="ejb" aliases="sfsb" default-cache="passivation" module="org.wildfly.clustering.ejb.infinispan">

                                <local-cache name="passivation">

                                    <locking isolation="REPEATABLE_READ"/>

                                    <transaction mode="BATCH"/>

                                    <file-store passivation="true" purge="false"/>

                                </local-cache>

                                <local-cache name="persistent">

                                    <locking isolation="REPEATABLE_READ"/>

                                    <transaction mode="BATCH"/>

                                    <file-store passivation="false" purge="false"/>

                                </local-cache>

                            </cache-container>

                            <cache-container name="hibernate" default-cache="local-query" module="org.hibernate.infinispan">

                                <local-cache name="entity">

                                    <transaction mode="NON_XA"/>

                                    <eviction strategy="LRU" max-entries="10000"/>

                                    <expiration max-idle="100000"/>

                                </local-cache>

                                <local-cache name="local-query">

                                    <eviction strategy="LRU" max-entries="10000"/>

                                    <expiration max-idle="100000"/>

                                </local-cache>

                                <local-cache name="timestamps"/>

                            </cache-container>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:iiop-openjdk:1.0">

                            <initializers transactions="spec" security="identity"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>

                        <subsystem xmlns="urn:jboss:domain:jca:4.0">

                            <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/>

                            <bean-validation enabled="true"/>

                            <default-workmanager>

                                <short-running-threads>

                                    <core-threads count="50"/>

                                    <queue-length count="50"/>

                                    <max-threads count="50"/>

                                    <keepalive-time time="10" unit="seconds"/>

                                </short-running-threads>

                                <long-running-threads>

                                    <core-threads count="50"/>

                                    <queue-length count="50"/>

                                    <max-threads count="50"/>

                                    <keepalive-time time="10" unit="seconds"/>

                                </long-running-threads>

                            </default-workmanager>

                            <cached-connection-manager/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:jdr:1.0"/>

                        <subsystem xmlns="urn:jboss:domain:jmx:1.3">

                            <expose-resolved-model/>

                            <expose-expression-model/>

                            <remoting-connector use-management-endpoint="false"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:jpa:1.1">

                            <jpa default-datasource="" default-extended-persistence-inheritance="DEEP"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:jsf:1.0"/>

                        <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/>

                        <subsystem xmlns="urn:jboss:domain:mail:2.0">

                            <mail-session name="default" jndi-name="java:jboss/mail/Default">

                                <smtp-server outbound-socket-binding-ref="mail-smtp"/>

                            </mail-session>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:messaging-activemq:1.0">

                            <server name="default">

                                <security-setting name="#">

                                    <role name="guest" delete-non-durable-queue="true" create-non-durable-queue="true" consume="true" send="true"/>

                                </security-setting>

                                <address-setting name="#" slow-consumer-threshold="20" message-counter-history-day-limit="10" page-size-bytes="2097152" max-size-bytes="10485760" max-delivery-attempts="-1" expiry-address="jms.queue.ExpiryQueue" dead-letter-address="jms.queue.DLQ"/>

                 

                 

                                <connection-factory name="RemoteConnectionFactory" entries="java:/jms/RemoteConnectionFactory java:/jboss/exported/jms/RemoteConnectionFactory" connectors="http-connector"/>               

                            </server>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:naming:2.0">

                            <bindings>

                                <simple name="java:/SOME_CUSTOM_JNDI_NAME" value="C:/someLocalPath"/>

                            </bindings>

                            <remote-naming/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>

                        <subsystem xmlns="urn:jboss:domain:remoting:3.0">

                            <endpoint/>

                            <connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"/>

                            <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:resource-adapters:4.0"/>

                        <subsystem xmlns="urn:jboss:domain:request-controller:1.0"/>

                        <subsystem xmlns="urn:jboss:domain:sar:1.0"/>

                        <subsystem xmlns="urn:jboss:domain:security-manager:1.0">

                            <deployment-permissions>

                                <maximum-set>

                                    <permission class="java.security.AllPermission"/>

                                </maximum-set>

                            </deployment-permissions>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:security:1.2">

                            <security-domains>

                                <security-domain name="other" cache-type="default">

                                    <authentication>

                                        <login-module code="Remoting" flag="optional">

                                            <module-option name="password-stacking" value="useFirstPass"/>

                                        </login-module>

                                        <login-module code="RealmDirect" flag="required">

                                            <module-option name="password-stacking" value="useFirstPass"/>

                                            <module-option name="unauthenticatedIdentity" value="guest"/>

                                        </login-module>

                                    </authentication>

                                </security-domain>

                                <security-domain name="jboss-web-policy" cache-type="default">

                                    <authorization>

                                        <policy-module code="Delegating" flag="required"/>

                                    </authorization>

                                </security-domain>

                                <security-domain name="jboss-ejb-policy" cache-type="default">

                                    <authorization>

                                        <policy-module code="Delegating" flag="required"/>

                                    </authorization>

                                </security-domain>

                                <security-domain name="jaspitest" cache-type="default">

                                    <authentication-jaspi>

                                        <login-module-stack name="dummy">

                                            <login-module code="Dummy" flag="optional"/>

                                        </login-module-stack>

                                        <auth-module code="Dummy"/>

                                    </authentication-jaspi>

                                </security-domain>

                            </security-domains>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:transactions:3.0">

                            <core-environment>

                                <process-id>

                                    <uuid/>

                                </process-id>

                            </core-environment>

                            <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>

                            <coordinator-environment statistics-enabled="true" default-timeout="60"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:undertow:3.0">

                            <buffer-cache name="default"/>

                            <server name="default-server">

                                <http-listener name="default" socket-binding="http" redirect-socket="https"/>

                                <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>

                            <servlet-container name="default">

                                <jsp-config/>

                                <websockets/>

                            </servlet-container>

                            <handlers>

                                <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>

                            </handlers>

                            <filters>

                                <response-header name="server-header" header-name="Server" header-value="WildFly/10"/>

                                <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/>

                            </filters>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:webservices:2.0">

                            <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>

                            <endpoint-config name="Standard-Endpoint-Config"/>

                            <endpoint-config name="Recording-Endpoint-Config">

                                <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">

                                    <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>

                                </pre-handler-chain>

                            </endpoint-config>

                            <client-config name="Standard-Client-Config"/>

                        </subsystem>

                        <subsystem xmlns="urn:jboss:domain:weld:3.0"/>

                    </profile>

                 

                 

                    <interfaces>

                        <interface name="management">

                            <inet-address value="${jboss.bind.address.management:0.0.0.0}"/>

                        </interface>

                        <interface name="public">

                <any-address/>

                        </interface>

                        <interface name="unsecure">

                            <inet-address value="${jboss.bind.address.unsecure:0.0.0.0}"/>

                        </interface>

                    </interfaces>

                 

                 

                    <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">

                        <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>

                        <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/>

                        <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>

                        <socket-binding name="http"  port="${jboss.http.port:8080}"/>

                        <socket-binding name="https" port="${jboss.https.port:8443}"/>

                        <socket-binding name="iiop" interface="unsecure" port="3528"/>

                        <socket-binding name="iiop-ssl" interface="unsecure" port="3529"/>

                        <socket-binding name="txn-recovery-environment" port="4712"/>

                        <socket-binding name="txn-status-manager" port="4713"/>

                        <socket-binding name="remoting" port="4447"/>

                        <outbound-socket-binding name="mail-smtp">

                            <remote-destination host="localhost" port="25"/>

                        </outbound-socket-binding>

                        <outbound-socket-binding name="remote-ejb">

                            <remote-destination host="localhost" port="8080"/>

                        </outbound-socket-binding>

                    </socket-binding-group>

                </server>

                • 5. Re: Cannot access remotely an application
                  nuno.godinhomatos

                  One last information,

                   

                  To show that in fact the CentOs guest OS  can connect to the Host 8080 port, here is a netstat snippet taken from the HOST windows OS.

                   

                   

                  TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING

                  TCP    192.168.56.1:8080      192.168.56.101:60156   ESTABLISHED

                   

                  You essentailly see in the image above that Hercules is opening port 8080, pretty much like wildfly is doing.

                  So that is where the job of the OS ends.

                  And then in the case of the Hercules socket, we can get telnet to work.

                   

                  So the rejection of the connection must be taking place somewhere on the socket listener.

                  • 6. Re: Cannot access remotely an application
                    ecabrerar

                    Hi,

                    You probably need to enable wildfly to remote access.

                     

                    Take a look at the following resources:

                    Enable Wildfly remote access - bgasparotto

                    How to make your JBOSS or WildFly AS remotely accessible

                     

                    Good luck !.

                    • 7. Re: Cannot access remotely an application
                      nuno.godinhomatos

                      Hi, I had googled up the above resource. As  you can see in my standalone.xml, I have already allowed the any address element.

                      This is refeclted in the LISTEN sockets that I have copy pasted from windows netstat.

                       

                      In fact, before I had enebaled the any address, I could not event in the host operating system (windows), do something like:

                      telnet 192.168.56.1 8080, because the LISTEN socket was only set for 127.0.0.1.

                       

                      I think it is absurd that I setup an apache httpd to request forwarding to port 8080, just to work-around this.

                       

                      As it stands, with my current configuration, from a cmd line in windows or from the browser I can connect to port 8080 from any of the network cards on the machine.

                      But I cannot connect to the service via my CentOs virtual machine.

                      And this issue is really specific to the wildfly 10.0.0 stand alone configuration posted above, because I have no trouble connecting to postgres running on my host os nor to port 8080 when opened by Hercules.

                       

                      When I have the time, I will perhaps try the CLI command on one of the references you have provided, but that CLi command should theoretically reflect in the configuration in the way that I manually added by adding the any-address element.

                       

                      Very strange.