Openfire ist einer von vielen verfügbaren XMPP-Server, der in der Programmiersprache Java geschrieben ist und unter der Apache-Lizenz 2.0 veröffentlicht wird.
XMPP ist der nachfolger von Jabber und ein offener, erweiterbarer  Standard eines Kommunikationsprotokolls. Ein XMPP-Server kann als  Gateway zwischen XMPP und einem andere Netzwerk wie Beispielsweise ICQ  fungieren. Dabei werden die üblichen Funktionen der  Nachrichtenübermittlung angeboten. Beispielsweise Konferezen / Gruppen,  Verschlüsselung, Server-to-Server Kommunikation, Offline-Nachrichten,  Online-Status, etc. Der große Vorteil ist die Möglichkeit, einen eigenen  Server mit eingeschränktem Nutzerkreis zu stellen. Clients gibt es wie  auch die Server für nahezu jedes Betriebssystem.
Basis-System
Installiert wurde hier Openfire 3.10.2 auf einem Debian 8.1 Jessie. Der MySQL Server für die Datenbank hat die Version 5.6.
Vorbereitung
Openfire ist eine Java-Anwendung. Deswegen wird entweder das 
„originale“ Oracle Java benötigt, oder das freie Pendant, openJDK / 
openJRE. Die Installation erfolgt mit wenigen Befehlszeilen. Als erste 
Alternative die originale Java Laufzeitumgebung von Oracle. Wir 
installieren diese über die Paketquellen von Ubuntu, damit bleiben wir 
immer up to date:
su
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee /etc/apt/sources.list.d/webupd8team-java.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886
apt-get update
apt-get install oracle-java7-installer
Alternativ kann OpenJDK bzw. OpenJRE verwendet werden:
su
apt-get install default-jre default-jdk
Installation von Openfire
Zum Download und der Installation des Pakets werden folgende Befehle abgesetzt:
cd /usr/local/src 
wget http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire_3.10.2_all.deb -O openfire_3.10.2_all.deb 
chmod +x openfire_3.10.2_all.deb
dpkg -i openfire_3.10.2_all.deb
Laufzeit-Datenbank vorbereiten
Die separate MySQL Laufzeitdatenbank für Openfire kann wie folgt angelegt werden:
cd /usr/share/openfire/resources/database
mysql -u root -p
CREATE DATABASE openfire CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL PRIVILEGES ON openfire.* TO 'openfire'@'localhost' IDENTIFIED BY 'openfirepass';
commit;
exit
<code>cat openfire_mysql.sql | mysql openfire -u openfire -p;</code>
Jetzt sollte der Server neu gestartet werden, da sonst beim Login als
 „admin“-Benutzer ein unbekanntes Passwort gesetzt ist und ein 
„komisches“ Verhalten beobachtet werden kann (Tipp von papapop).
Zum Schluss kann das Webinterface aufgerufen werden und damit alle 
Einstellungen über den Wizard gesetzt werden. Das Webinterface findet 
man im Standard hier:
http://<IP des Servers>:9090
Quellen
- http://www.igniterealtime.org/downloads/index.jsp#openfire
- http://www.igniterealtime.org/builds/openfire/docs/latest/documentation/install-guide.html