Difference between revisions of "Wildfly"

Line 19: Line 19:
  
 
Unzip it and launch the server in ''standalone'' mode:
 
Unzip it and launch the server in ''standalone'' mode:
 +
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
$wildfly/bin/standalone.sh
 
$wildfly/bin/standalone.sh
Line 140: Line 141:
  
  
 +
 +
<syntaxhighlight lang="bash">
 
What type of user do you wish to add?  
 
What type of user do you wish to add?  
 
 
  a) Management User (mgmt-users.properties)  
 
  a) Management User (mgmt-users.properties)  
 
 
  b) Application User (application-users.properties)
 
  b) Application User (application-users.properties)
 
 
(a): '''a'''
 
(a): '''a'''
  
  
 
Enter the details of the new user to add.
 
Enter the details of the new user to add.
 
 
Using realm 'ManagementRealm' as discovered from the existing property files.
 
Using realm 'ManagementRealm' as discovered from the existing property files.
 +
Username : '''admin'''
  
Username : '''admin'''
 
  
 
The username 'admin' is easy to guess
 
The username 'admin' is easy to guess
 
 
Are you sure you want to add user 'admin' yes/no? '''yes'''
 
Are you sure you want to add user 'admin' yes/no? '''yes'''
  
  
 
Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file.
 
Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file.
 
 
  - The password should not be one of the following restricted values {root, admin, administrator}
 
  - The password should not be one of the following restricted values {root, admin, administrator}
 
 
  - The password should contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), 1 non-alphanumeric symbol(s)
 
  - The password should contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), 1 non-alphanumeric symbol(s)
 
 
  - The password should be different from the username
 
  - The password should be different from the username
 
 
Password : '''secret'''
 
Password : '''secret'''
  
Line 175: Line 169:
  
 
About to add user 'admin' for realm 'ManagementRealm'
 
About to add user 'admin' for realm 'ManagementRealm'
 
 
Is this correct yes/no? '''yes'''
 
Is this correct yes/no? '''yes'''
  
  
 
Is this new user going to be used for one AS process to connect to another AS process?  
 
Is this new user going to be used for one AS process to connect to another AS process?  
 
 
e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
 
e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
 
yes/no? '''no'''
 
yes/no? '''no'''
 +
 +
</syntaxhighlight>
  
  

Revision as of 20:00, 25 October 2014


JBOSS Wildfly is an application server fully compatible with the JEE standard, like Glassfish.


Official JEE 7 examples: https://github.com/javaee-samples/javaee7-samples


Get Wildfly

Download latest Wildfly server: http://wildfly.org/downloads/


Unzip it and launch the server in standalone mode:

$wildfly/bin/standalone.sh


You can test the server on http://localhost:8080


Enable remote access

By default you can only access your server locally. You need to adjust the binding interface and hostname.


Quick settings

Since there are a lot of files to edit you can use sed. See below for detail explanations.

## Adjust binding
# replace '172.16.100.61' by your own IP @
# 
sed 's/127.0.0.1/172.16.100.61/g' -i $wildfly/domain/configuration/host.xml
sed 's/127.0.0.1/172.16.100.61/g' -i $wildfly/standalone/configuration/standalone.xml
sed 's/127.0.0.1/172.16.100.61/g' -i $wildfly/standalone/configuration/standalone-ha.xml
sed 's/127.0.0.1/172.16.100.61/g' -i $wildfly/standalone/configuration/standalone-full.xml
sed 's/127.0.0.1/172.16.100.61/g' -i $wildfly/standalone/configuration/standalone-full-ha.xml

## Adjust hostname
# replace 'myServer' by your real server name (FQDN)
#
sed 's/localhost/myServer/g' -i $wildfly/domain/configuration/host.xml
sed 's/localhost/myServer/g' -i $wildfly/standalone/configuration/standalone.xml
sed 's/localhost/myServer/g' -i $wildfly/standalone/configuration/standalone-ha.xml
sed 's/localhost/myServer/g' -i $wildfly/standalone/configuration/standalone-full.xml
sed 's/localhost/myServer/g' -i $wildfly/standalone/configuration/standalone-full-ha.xml


Relaunch the server:

$wildfly/bin/standalone.sh


You should see the following logs:

...
Undertow HTTP listener default listening on /172.16.100.61:8080
...
Http management interface listening on http://172.16.100.61:9990/management
Admin console listening on http://172.16.100.61:9990
...


Manual settings

Bind interface

Edit your configuration file

vim $wildfly/domain/configuration/host.xml


Adjust the bindings:

<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">
        <!-- Used for IIOP sockets in the standard configuration. To secure JacORB you need to setup SSL -->
        <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
   </interface>
</interfaces>

Replace 127.0.0.1 by the IP you'd like to use, ex: 192.168.1.100.


Set hostname

Edit your configuration file

vim $wildfly/standalone/configuration/standalone.xml


Adjust the hostname:

<host name="default-host" alias="localhost">
     ....
</host>

replace localhost by your server name (FQDN), ex: nuc-media-center.daxiongmao.eu


Create administrative users

There is no users by default. You must create one.


Launch the creation script:

$wildfly/bin/add-user.sh


What type of user do you wish to add? 
 a) Management User (mgmt-users.properties) 
 b) Application User (application-users.properties)
(a): '''a'''


Enter the details of the new user to add.
Using realm 'ManagementRealm' as discovered from the existing property files.
Username : '''admin'''


The username 'admin' is easy to guess
Are you sure you want to add user 'admin' yes/no? '''yes'''


Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file.
 - The password should not be one of the following restricted values {root, admin, administrator}
 - The password should contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), 1 non-alphanumeric symbol(s)
 - The password should be different from the username
Password : '''secret'''


What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[  ]:


About to add user 'admin' for realm 'ManagementRealm'
Is this correct yes/no? '''yes'''


Is this new user going to be used for one AS process to connect to another AS process? 
e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
yes/no? '''no'''



Firewall

Edit your firewall configuration and add:

##### Input
$IPTABLES -A INPUT -p tcp --dport 8080 -j ACCEPT   # HTTP alt.
$IPTABLES -A INPUT -p tcp --dport 8443 -j ACCEPT   # HTTPS alt.
$IPTABLES -A INPUT -p tcp --dport 9990 -j ACCEPT   # Wildfly administration


##### Output
$IPTABLES -A OUTPUT -p tcp --dport 8080 -j ACCEPT   # HTTP alt.
$IPTABLES -A OUTPUT -p tcp --dport 8443 -j ACCEPT   # HTTPS alt.
$IPTABLES -A OUTPUT -p tcp --dport 9990 -j ACCEPT   # Wildfly administration