Žilinská univerzita > Fakulta riadenia a informatiky > Katedra informačných sietí

Installing Openfire server on Debian Lenny

Openfire is an open source instant messaging server running XMPP protocol (also known as Jabber). It is written completly in Java, which means it can run on any platform.

This guide describes the basic installation and configuration of Openfire 3.7 undex Debian Lenny OS.


1. We need to edit file "/etc/apt/sources.list" by adding/modifying following lines:

Applies for main ftp server (eg. ftp.sk.debian.org/debian):

deb http://ftp.sk.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.sk.debian.org/debian/ lenny main contrib non-free

2. Install Java needed for Openfire functioning:

#apt-get update

#apt-get install sun-java6-jre sun-java6-fonts

3. In this step we download a debian package of Openfire (it is not found in the repositories, so we have to download it using wget)

#wget http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire...

Note: Downloaded file can be named "downloadServlet?filename=openfire%2Fopenfire_3.7.0_all.deb" after downloading. In this case we rename it:

#mv downloadServlet\?filename\=openfire%2Fopenfire_3.7.0_all.deb openfire_3.7.0_all.deb

4. Install Openfire 3.7:

dpkg -i openfire_3.7.0_all.deb

Note: After the installation a warning will occure. Script for running Openfire deamon in "/etc/init.d/" is missing LSB info. We can fix this by adding lines at the top of the file "/etc/init.d/openfire" (right after the first line which is "#!/bin/bash"):


# Provides:          openfire
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable service provided by daemon.



Save the file.


5. Configuring Openfire.

Most of Openfire parameters can be configured through its web interface. After the installation the server starts to listen on port 9090 for http requests. So open your favourite browser and type adress:



During the first run of the web interface, you will be asked to configure basic parameters. As a hostname you need to set the domain which will be served by Openfire.

For example, if server FQDN is server.domain.com, the hostname you need to configure in the Openfire web interface is domain.com (can be a bit confusing). You will also need an _xmpp-server SRV record in your DNS.

You have two options for database configuration. You can externaml DB (eg. mysql, postresql,..) or embedded database. The embedded database is easy to set up and requires no configuration. It is sufficient for basic server operability. If you choose external DB, you will need to configure address and port of DB server and credentials for DB access. You will also need to configure DB engine itself, by creating user, granting him access privileges for the openfire database and creating the database itself (the scripts for many DBs can be found in "/usr/share/openfire/resources/database/").

In the end of basic configuration the the web interface gives you a chance for changing the admin password. If it wasn't configured yet, it is "admin" by default.

When the basic configuration is done, you have to restart the openfire deamon:

#/etc/init.d/openfire restart

After this step you can log in the web interface on the same address as before (login: admin). Interface is easy to navigate. Important things to mention is the "Users/Groups" tab, in which you can create user accounts. XMPP also permits the opportuninty to create the account automatically when the user first try to connect with non-existing account (this option is also configurable).

All that remains is testing the server with logging in from your favourite XMPP client (for examle Miranda, QIP, SIP communicator/Jitsi).