Prosody XMPP Server unter Debian installieren und konfigurieren

Prosody XMPP Server

Um in einem Team schnell und unkompliziert zu kommunizieren bieten sich Instant Messenger an. Damit lassen sich auch mal während einem Telefongespräch Informationen austauschen. Damit nicht alle Informationen über fremde Server geschickt werden, bietet sich die Einrichtung eines eigenen Kommunikationsservers an.

Mit dem XMPP Server Prosody geht das schnell und unkompliziert. Prosody ist einfach zu installieren und zu konfigurieren und wirtschaftet effizient mit den Ressourcen. Darüber hinaus ist Prosody einfach mit Modulen erweiterbar. Das folgende Tutorial beschreibt die Installation und grundlegende Konfiguration von Prosody auf einem Debian System.

Schritt 1: System auf den neuesten Stand bringen

apt-get update && apt-get upgrade --show-upgraded

Schritt 2: Prosody Repository zu sources.list hinzufügen

echo deb http://packages.prosody.im/debian $(lsb_release -sc) main | tee -a /etc/apt/sources.list

Anschließend muss das Prosody Repository zu den vertrauenswürdigen Paketquellen hinzugefügt werden:

wget https://prosody.im/files/prosody-debian-packages.key -O- | apt-key add -

Danach folgt ein Update des apt Caches.

apt-get update

Schritt 3: Installation von Prosody

Eine Liste der verfügbaren Prosody Versionen kann man sich mit folgendem Befehl anzeigen lassen.

apt-cache search prosody

Danach wird die gwünschte Version mit apt-get installiert.

apt-get install prosody-0.10

Prosody ist nun installiert und kann konfiguriert werden.

Schritt 4: Konfiguration von Prosody

 nano /etc/prosody/prosody.cfg.lua

Unter VirtualHost „example.com“ muss nun ein neuer VirtualHost angelegt werden. Hierbei handelt es sich nicht um den „physischen“ Host, sondern lediglich um eine Definition, wie die Benutzernamen zugewiesen werden.

VirtualHost "unternehmen.com"
ssl = {
key = "/var/lib/prosody/unternehmen.com.key";
certificate = "/var/lib/prosody/unternehmen.com.crt";
}

Danach werden SSL-Key und Zertifikat erzeugt.

prosodyctl cert generate unternehmen.com

Achtung: Im Beispiel der Konfigurationsdatei ist ein falsches Verzeichnis für Zertifikate angegeben. Neu erstellte Zertifikate und SSL-Keys werden NICHT unter /etc/prosody/certs/ abgelegt sondern unter /var/lib/prosody. Also entweder man verschiebt die Dateien im Nachhinein von Hand, oder man gibt in der Konfiguration gleich /var/lib/prosody als Speicherort an.

Schritt 5: Benutzer anlegen und verwalten

Neue Benutzer können mit folgendem Befehl angelegt werden.

prosodyctl adduser benutzername@unternehmen.com

Mit folgendem Befehl können Benutzer gelöscht werden.

prosodyctl deluser benutzername@unternehmen.com

Will man eine Benutzerliste ausgeben lassen, muss Prosody mit einem kleinen Modul erweitert werden.

wget -P /usr/lib/prosody/modules http://prosody.im/files/mod_listusers.lua

Danach können alle Benutzer mit folgendem Befehl angezeigt werden.

prosodyctl mod_listusers

Schritt 6: Administrator festlegen

Wer einen XMPP Client wie Pidgin benutzt, kann sich freuen. Über Pidgin lassen sich die meisten Administrationsaufgaben direkt ausführen, wenn man in der Konfiguration von Prosody als Administrator eingetragen ist. Das geht so:

nano /etc/prosody/prosody.cfg.lua

Dort kann man mit der Variable „admins“ Administratoren definieren. Hier ein Beispiel:

admins = { "admin@unternehmen.com" }

Schritt 7: Kontaktgruppen definieren

Will man seinen Benutzern festgelegte Kontakte zuweisen, ohne dass diese hinzugefügt werden müssen, kann man dies in der Konfiguration angeben.

nano /etc/prosody/prosody.cfg.lua

Dort fügt man Folgendes ein.

groups_file = "/etc/prosody/groups"

Danach legt man die Gruppe als Datei an.

nano /etc/prosody/groups

Hier fügt man die Benutzer in folgendem Format ein.

[Gruppenname]
benutzer1@unternehmen.com=Benutzer 1
benutzer2@unternehmen.com=Benutzer 2
benutzer3@unternehmen.com=Benutzer 3

Danach wird die Datei so berechtigt, dass root und und Gruppenmitglieder von prosody sie lesen und schreiben können.

chown root:prosody /etc/prosody/groups && chmod 660 /etc/prosody/groups

Schritt 8: Neustart

Zum Schluss muss Prosody neu gestartet werden.

prosodyctl restart

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.