Openfire Setup¶
In OMF we are making heavy use of Openfire. This page documents the Openfire configuration options that affect OMF.
Installation¶
- Ubuntu: follow the instructions in Installation_Guide_52
- Fedora: run "wget http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire-3.6.4-1.i386.rpm" and install the JRE RPM from java.sun.com
Server 2 Server connectivity¶
For both machines, check these items:
- make sure port 5269 TCP is open in your firewall, double check from both machines using nmap
- make sure the machine that runs openfire has a FQDN
- set the XMPP domain during Openfire setup to the FQDN or change it later (xmpp.domain in System Properties)
- if you changed the XMPP domain, delete the certificates in Server - Server settings - Server Certificates. Then generate new ones. Restart the HTTP server of openfire.
- make sure the host name in your certificates matches the XMPP domain name and your FQDN
- in Server - Server settings - Security Settings tick "Accept self-signed certificates" and set Server Connection Security to optional
- Server - Server settings - Server to Server: enable the service
- click "System Properties" on the left and add a new property named xmpp.server.permission and set its value to blacklist
Testing S2S¶
- create a user on each side
- install switchboard: http://mojodna.net/2009/07/16/switchboard-curl-for-xmpp.html
- run "switchboard --jid christoph@serverA.net --password 123 pubsub --server serverB.net create --node testNode"
- check Sessions - Server Sessions for S2S connections
- if the latter page doesn't load, check if you can access port 5269 TCP on the other machine
- if there is still no S2S session, restart both openfires
Testing via IRB¶
- cd to omf-common-5.3 directory
- start irb
- run
require "omf-common/omfXMPPServices.rb"
x = OmfXMPPServices.new("1","1", "norbit.npc.nicta.com.au")
x.create_node("test","srv.mytestbed.net")
x = OmfXMPPServices.new("1","1", "srv.mytestbed.net")
x.create_node("test","norbit.npc.nicta.com.au")
Compatibility¶
- This has been confirmed working between two Openfire 3.7 beta servers