XMPP Server openfire auf Debian jessie installieren

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