Federation‎ > ‎

Openfire installation


As of 22 April 2010, the current released version of Openfire (3.6.4) has a bug in it's DNS code, as described in this email message.


Installing the open source Google Wave Federation Prototype Server

The open source Wave Federation Prototype Server is delivered as a Java application that conforms to XEP-0114, the Jabber Component Protocol. In the examples below we show how to install the Wave Federation Prototype Server as an extension to the [http://www.igniterealtime.org/projects/openfire/index.jsp Openfire] XMPP server, but it should run against any XEP-0114 compliant server. We also have instructions for using Prosody?.

To run the Prototype Server you will first need to install the Openfire server. The instructions for installing Openfireare included below are for a Debian based Linux distribution and are there for your convenience, but any issues with installing Openfire should be directed to the standard Openfire community support.


Openfire is written in Java so you will need to make sure Java is installed on your machine. The steps below are shown for installing under Ubuntu, and may be different for your platform. While the WFPS should run on any platform with Java 6 the instructions below are only for a Debian based Linux distribution.

Installation instructions have also been written for


For Mac OSX you will need to download Java 6 from http://developer.apple.com/java/download/.

After installing Java you will need to set the following environment variables:

$ export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
$ export PATH=$JAVA_HOME/bin:$PATH

Now visit the [http://www.igniterealtime.org/downloads/index.jsp Openfire web site] and download and install the Mac OSX version of Openfire.


Install Java 6:

$ apt-get install sun-java6-jdk sun-java6-fonts

Now download and install the Openfire server:

$ wget http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire_3.6.4_all.deb
$ sudo dpkg -i openfire_3.6.4_all.deb
$ sudo /etc/init.d/openfire restart

Other Linux distributions

Other Linux distributions are not directly supported, but installation should work mostly in the same way as for Debian/Ubuntu. However, there have been many reported configuration issues that we are tracking.

Configure Openfire (all platforms)

After installing Openfire visit http://localhost:9090 with your browser. Substitute the domain name of the server you installed Openfire on for 'localhost' if you didn't install it on your local machine. You will be guided through the setup process by a wizard. For the simplest installation select the defaults.

Configure Openfire for the Wave extension

Restart the server after you have finished the configuration. On Debian/Ubuntu you would restart it by:

$ sudo /etc/init.d/openfire restart

After the server has restarted login as 'admin' and go to Server -> Server Settings -> External Components. Login using the name 'admin' and not the email address you gave during setup.

Enable external components on port 5275 and a default shared secret of your own choosing. Press save. Then add 'wave' as a whitelisted component, by choosing a subdomain of 'wave' and choose a shared secret for the wave extension. The shared secret and port number are arguments that will be passed to the wave extension.

Now go to Server -> Server Settings -> Security Settings. For "Server Connection Security" select "Custom" and enable "Server Dialback". Also check the "Accept self-signed certificates" check box.


The following changes are not required for the wave extension to work, but are good practices if you are running a public facing XMPP server.

  • Go to Server -> Server Settings -> Registration and Login. Disable
  • "Inband Account Registration". Disable "Change Password". Disable "Anonymous Login"
  • Enable server-server compression in "Compression Settings"
  • Disable file proxy transfer in "File Transfer Settings"

Now continue following the instructions for installing the server.

Java is a registered trademark of Sun Microsystems, Inc.