iX 1/2020
S. 72
Report
Collaboration

Marktübersicht selbst gehostete Messenger

Geschützter Raum

Tim Schürmann, Markus Feilner

Wer die DSGVO beachten und den Inhalt von Diskussionen im Unternehmen behalten muss, betreibt am besten sein eigenes Chatsystem.

Nicht nur IT-Teams sprechen sich heute überwiegend per Chat ab. Derlei Dienste werden umso wichtiger, je mehr Mitarbeiter über Außenstellen oder gar rund um die Welt verteilt arbeiten. Die dabei übertragenen Informationen enthalten häufig kritische Unternehmensinterna und personenbezogene Daten, was Unternehmen zu denken geben sollte, die die fremden Server von WhatsApp und Co. benutzen. Vor allem angesichts der Anforderungen der Datenschutz-Grundverordnung DSGVO scheint klar, dass Dienste, die bei privater Nutzung vielleicht unbedenklich sein mögen, im Unternehmenskontext kritisch zu hinterfragen sind.

Datenschutz und Wirtschaftsspionage

Datenschutz und der Schutz der Unternehmensgeheimnisse werden vor allem dann relevant, wenn Mitarbeiter per Chat mit Kunden kommunizieren. Viele beliebte, beispielsweise US-amerikanische Cloud- und Weblösungen disqualifizieren sich da eigentlich fast schon automatisch, auch wenn die Realität in Unternehmen (noch) anders erscheint und Google, Microsoft, Facebook und Co. omnipräsent sind. Glücklicherweise gibt es zahlreiche Messenger-Systeme, die sich auf eigenen Servern installieren und betreiben lassen – und der Markt hat sicher Potenzial.

Beim On-Premises-Nutzungsmodell verbleiben alle Daten, insbesondere Chatverläufe und Metadaten, im Unternehmen. Gerade die Metadaten gehören zu den unterschätzten Informationen: Ein befreundeter Boeing-Mitarbeiter erzählte dem Autor einst, zu wissen, wann sein Airbus-Kollege mit der Fluglinie X kommuniziert hat, würde ihm bei der Akquise potenzieller Aufträge viel helfen, weil er dann zeitnah bei dem möglichen Kunden nachfassen könnte.

Ähnliche Befürchtungen führen häufig auch dazu, dass sich Chatsysteme, die gar keine Daten auf dem Server speichern, großer Beliebtheit erfreuen, vor allem bei technik-, datenschutz- und securityaffinen Teams. Allerdings konnten Slack und Co. gerade durch die client- und abwesenheitsunabhängige Chat-History punkten, die der Server vorhält. Vor allem Unternehmen und Teams, die gemeinsam an Projekten arbeiten, dabei aber weltweit über verschiedene Zeitzonen verteilt sitzen, wissen Letzteres zu schätzen. Nach dem Urlaub kann so der Mitarbeiter alle Konversationen der vergangenen Wochen nachverfolgen und sich auf den neuesten Stand bringen. 

Aber auch jenseits von Datenschutz und Data Leakage Prevention kann der Betrieb des eigenen Chatservers mit Vorteilen aufwarten. Neben der vollen Kon­trolle über die Messenger (was wird gespeichert) lassen sich auch individuelle Anpassungen vornehmen. Wer mag, kann dem Kunden oder Partner ein schickes, an die eigene Corporate Identity angepasstes Chatfenster bieten.

Verschlossene Hersteller

Chatsysteme für das Self-Hosting gibt es sowohl als kostenlose Open-Source-Software als auch von kommerziellen Anbietern. Letztgenannte erlauben in der Regel keinen Einblick in den Quellcode, bieten im Gegenzug aber Support an. Auf den muss man bei freier Software häufig verzichten, kann dort aber die Software nachträglich anpassen, muss keine Lizenz­gebühren zahlen und kann – Know-how vorausgesetzt – in der Regel weit mehr Anpassungen vornehmen.

Mattermost, Rocket.Chat und Zulip existieren sowohl in einer Open-Source- als auch in einer kostenpflichtigen Enterprise-Variante mit professionellem Support. Die Enterprise-­Fassungen offerieren zusätzliche Funktionen wie etwa eine Unterstützung für Hochverfügbarkeit. Zulip wirbt explizit damit, dass die kostenpflichtige Variante die Open-Source-Fassung finanziert.

In jedem Fall sollten Unternehmen einen genauen Blick auf die Lizenzbedingungen werfen. Bei kommerzieller Software ist häufig die Anzahl der Nutzer limitiert, im Fall von Open-Source-Lizenzen könnte die Kopplung mit kommerziellen Programmen problematisch sein. Fast alle Lösungen mit Webinterface lassen sich über Demo-Systeme auf den Webseiten der Hersteller unverbindlich ausprobieren, wie beispielsweise Let’s Chat (Abbildung 1).

Viele der verfügbaren Demo-Fassungen (hier Let’s Chat) bieten nur einen eingeschränkten Funktionsumfang (Abb. 1).

Die iX-Redaktion hat die Anbieter der Messenger für die Tabelle um eine Aufstellung der enthaltenen Funktionen gebeten. Bis zum Redaktionsschluss konnte oder wollte jedoch kein einziger Entwickler eine Antwort liefern – ein Novum in der iX-Geschichte. Trotz mehrfacher Versuche erhielten die Redakteure keine Antworten über die auf den Webseiten an­gegebenen Kanäle, was kein gutes Licht auf die zu erwartende Servicequalität der Vergleichskandidaten wirft.

Selbst gehostete Chatsysteme im Vergleich
Name AstraChat Bitrix24 Bopup IM Dialog Grape HighSide Hubgets Let’s Chat Matrix (Synaptic) Mattermost MyChat Output Messenger Q-municate Rocket.Chat Stackfield Teamwire Trillian Server Troop Messenger Wickr Wire XMPP Zulip
Bezugsquelle https://www.astrachat.com/ https://www.bitrix24.de/ https://www.bopup.im/ https://dlg.im/en/ https://www.grape.io/de/ https://highside.io/ https://www.hubgets.com/ http://sdelements.github.io/lets-chat/ https://github.com/matrix-org/synapse https://mattermost.org/ https://nsoft-s.com/en/aboutmychat.html https://www.outputmessenger.com/self-hosted-­alternative-to-­slack-team-chat/ https://q-municate.com/ https://rocket.chat/ https://www.stackfield.com/ https://www.teamwire.eu/home-de-de https://trillian.im/uses/self-hosted-­instant-messaging/ https://www.troopmessenger.com/ https://wickr.com/ https://wire.com/de/ https://xmpp.org/ https://zulipchat.com/hello/
allgemein
Server OS / Plattform k. A. Unix, Linux, Sun/Solaris, HP-UX, Windows NT, Windows Server 2003/2008, Windows XP/Vista/7/8 Microsoft Windows NT 4.0/2000/XP/2003/Vista/2008/7/2012/8/8.1/10 k. A. k. A. k. A. k. A. Node.js/Python 2.7.x Unix/Linux, Python 3.5+ Linux k. A. Windows mit .NET 4.6 k. A. Linux, Node.js k. A. k. A. Windows Server ab Version 2008 R2 k. A. k. A. Unix/Linux Windows, macOS, Linux, Unix Linux (Ubuntu und Debian)
Clients (Windows, Mac, Linux, Android, iOS, Web) ✓ / ✓/ ✓ / ✓ / ✓ / – ✓ / ✓ / – / ✓ / ✓ / ✓ ✓ / – / – / ✓ / – / – ✓ / ✓ / ✓ / ✓ / ✓ / ✓ ✓ / ✓ / –/ ✓ / ✓ / ✓ ✓ / ✓ / ✓ / ✓ / ✓ / k. A. ✓ / ✓ / – / – / – / ✓ – / – / – / – / – / ✓ ✓ / ✓ / ✓ / ✓ / ✓ / ✓ ✓ / ✓ / ✓ / ✓ / ✓ / ✓ ✓ / ✓ / ✓ / ✓ / – / ✓ ✓ / ✓ / ✓ / ✓ / ✓ / – – / – / – / ✓ / ✓ / ✓ ✓ / ✓ / ✓ / ✓ / ✓ / ✓ ✓ / ✓ / – / ✓ / ✓ / ✓ ✓ / ✓ / ✓ / ✓ / ✓ / – ✓ / ✓ / ✓/ ✓ / ✓ / ✓ ✓ / ✓ / ✓ / ✓ / ✓ / k. A. ✓ / ✓ / ✓ / ✓ / ✓ / k. A. ✓ / ✓ / ✓ / ✓ / ✓ / ✓ ✓ / ✓ / ✓ / ✓ / ✓ / ✓ ✓ / ✓ / ✓ / ✓ / ✓ / ✓
Lizenzmodell kommerziell kommerziell kommerziell kommerziell kommerziell kommer­ziell kommer­ziell MIT License Apache License MIT License kommer­ziell kommerziell Apache License MIT License kommer­ziell kommerziell kommerziell kommerziell kommer­ziell kommerziell/GPL v3 verschiedene Apache License
Lizenzierung per (User / Server / Account) auf Anfrage User User auf Anfrage auf Anfrage auf Anfrage auf Anfrage kostenlos kostenlos kostenlos Anzahl gleichzeitiger Verbindungen User auf Anfrage kostenlos User Funktionsumfang User User User User / auf Anfrage kostenlos kostenlos
Cloud-Lösung im Angebot
DSGVO-konform (Herstellerangabe) k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. abhängig von Server und Client k. A.
Verschlüsselung
Verschlüsselungsverfahren TLS SSL / RSA k. A. k. A. 256-Bit-TLS SSL/TLS k. A. k. A. Olm / Megolm / Double Ratchet TLS mit AES-256 und 2048-Bit RSA TLS 1.2 via OpenSSL k. A. k. A. k. A. k. A. TLS 1.0-1.2 mit Perfect Forward Secrecy, AES256 und Secp256k1 (inklusive verschlüsselter Meta­daten) k. A. k. A. k. A. ChaCha20, HMAC-SHA256, Curve25519, HKDF, CBOR SASL/TLS k. A.
Ende-zu-Ende-Verschlüsselung k. A. k. A. k. A. auf Anfrage k. A. k. A. k. A. k. A. k. A. ✓ (nur Enterprise) k. A. k. A. k. A.
Zwei-Faktor-Authentifizierung k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. ✓ (für Administratoren) k. A. k. A. k. A. k. A. k. A.
Nachrichten­versand
verwendetes Protokoll XMPP k. A. k. A. k. A. k. A. k. A. k. A. XMPP Matrix HTTPS/WSS k. A. k. A. XMPP k. A. k. A. Eigenentwicklung k. A. k. A. k. A. Proteus Protocol (Implementierung des Axolotl Protokolls) XMPP k. A.
private Kommunikation / Gruppenchats möglich ✓ / ✓ ✓ / ✓ ✓ / ✓ ✓ / ✓ k. A. k. A. k. A. ✓ / ✓ („Rooms“) ✓ / ✓ ✓ / ✓ k. A. ✓ / ✓ k. A. / ✓ k. A. / ✓ k. A. / ✓ ✓ / ✓ ✓ / ✓ k. A. ✓ / ✓ ✓ / ✓ ✓ / ✓ ✓ / ✓
Unterstützung von Threaded Conversations / Channels k. A. / k. A. k. A. k. A. k. A. / ✓ k. A. / ✓ k. A. k. A. k. A. / ✓ („Rooms“) k. A. / ✓ („Rooms“) ✓ / ✓ k. A. k. A. / ✓ („Chat Rooms“) k. A. k. A. / ✓ ✓ / k. A. k. A. / ✓ („Team Kanäle“) k. A. k. A. k. A. / ✓ („Rooms“) k. A. k. A. / k. A. ✓ (über Topics) / ✓ („Streams“)
Nachrichten lassen sich weiterleiten / bearbeiten / (z. B. mit „Likes“) kennzeichnen / mit Lesezeichen aufspüren („Sticky Notes“) k. A. k. A. / k. A. / ✓ / k. A. k. A. k. A. k. A. k. A. k. A. / k. A. / ✓ / k. A. k. A. k. A. / k. A. / ✓ / k. A. k. A. / ✓ / ✓ / k. A. k. A. / k. A. / k. A. / ✓ k. A. / k. A. / k. A. / ✓ k. A. k. A. k. A. / ✓ / ✓ / k. A. ✓ / k. A. / k. A. / k. A. k. A. ✓ / k. A. / k. A. / k. A. k. A. k. A. k. A. / k. A. / k. A. / k. A. k. A. / ✓ / ✓ / ✓
Push-Nachrichten / Ankündigungen k. A. k. A. k. A. / ✓ k. A. / ✓ ✓ / k. A. k. A. k. A. k. A. k. A. k. A. / ✓ k. A. / ✓ k. A. / ✓ ✓ / ✓ k. A. k. A. / ✓ ✓ / ✓ k. A. / ✓ k. A. k. A. k. A. k. A. / k. A. k. A. / ✓
Vorschau von Dateien / Links ✓ / k. A. k. A. k. A. k. A. k. A. k. A. ✓ / k. A. ✓ / k. A. k. A. ✓ / ✓ ✓ / k. A. k. A. k. A. k. A. k. A. k. A. ✓ / k. A. k. A. ✓ / ✓ k. A. ✓ / ✓
Emojis k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A.
Suchfunktion / mit regulären Ausdrücken k. A. ✓ / k. A. k. A. k. A. ✓ / k. A. k. A. ✓ / k. A. k. A. k. A. ✓ / – (eigene Search Modifier) k. A. ✓ / k. A. k. A. k. A. k. A. ✓ / k. A. ✓ / k. A. ✓ / k. A. ✓ / k. A. ✓ / k. A. k. A. ✓ / k. A.
Empfangsbestätigungen k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A.
Rechte- und Benutzermanagement
Rollen / Benutzergruppen k. A. k. A. – / ✓ k. A. k. A. k. A. k. A. k. A. k. A. k. A. / ✓ („Teams“) k. A. / ✓ k. A. k. A. k. A. k. A. ✓ / k. A. k. A. / ✓ k. A. / ✓ k. A. k. A. k. A. k. A.
Active-Directory- / LDAP-­Integration ✓ / ✓ ✓ / ✓ ✓ / ✓ ✓ / ✓ ✓ / ✓ k. A. k. A. – / ✓ k. A. ✓ / ✓ ✓ / ✓ k. A. k. A. k. A. / ✓ k. A. ✓ / ✓ k. A. k. A. k. A. k. A. k. A. / ✓ k. A. / ✓
externe Nutzer möglich (z. B. Chat mit Kunden) k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. ✓ (Gästebereich) k. A.
Logging, Monitoring und Statistiken k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A.
Zusatzfunktionen
Anpassen der Optik möglich k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A.
(automatische) Workflows definierbar k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A.
Dateien tauschen
Screen-Sharing k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A. k. A.
VoIP k. A. k. A. k. A. nur Sprachnachrichten nur Sprachnachrichten k. A.
Videotelefonie k. A. k. A. k. A. k. A. k. A. k. A. k. A.
Aufgaben­planung / Kalender / Abstimmungen k. A. ✓ / ✓ / ✓ – / – / – k. A. k. A. k. A. k. A. k. A. k. A. – / – / – k. A. k. A. / ✓ („Erinnerungen“) / k. A. k. A. k. A. ✓ / ✓ (Ereignisse) / k. A. k. A. / k. A. / ✓ k. A. k. A. k. A. k. A. k. A. k. A.
Erweiterbarkeit über Chatbots / API ✓ / k. A. k. A. / ✓ k. A. ✓ / ✓ k. A. / ✓ k. A. k. A. ✓ / ✓ ✓ / ✓ ✓ / ✓ k. A. / ✓ k. A. / ✓ k. A. k. A. / ✓ k. A. ✓ / ✓ k. A. / ✓ k. A. ✓ / ✓ k. A. / ✓ k. A. / ✓ k. A. / ✓
spezielle Funk­tionen High Availability weitere Funktionen wie Dokumentenverwaltung Einbettung in Drittsoftware, wie Jira IoT- und VR-Lösungen möglich teilweise kompatibel mit Slack Kanban Board Echtzeitübersetzung Anbindungsmöglichkeit an Alarm-, IT- und IoT-Systeme Software ist Open Source Integration in zahlreichen Anwendungen wie Jira und GitHub
✓: ja / vorhanden / trifft zu; –: nein / nicht vorhanden / trifft nicht zu: k. A.: keine Angaben. Tabelle beruht auf Herstellerangaben sowie auf öffentlich verfügbaren Informationen.

Das große Schweigen

Die Angaben in der Tabelle basieren daher auf den öffentlich zugänglichen Informationen, doch auch die sind bei vielen Anbietern nur spärlich vorhanden – was sich in den vielen „k. A.“ in der Tabelle spiegelt. Die Informationsleere betrifft insbesondere Angaben zu den konkreten Lizenzbedingungen und den Preisen der On-Premises-Lizenzen (Abbildung 2).

HighSide gehört zu den Anbietern, die besonders wenig Informationen über ihr Produkt preisgeben (Abb. 2).

Diese Daten geben viele Anbieter nur auf Nachfrage an ihre Kunden heraus oder bieten ausschließlich maßgeschneiderte Lizenzmodelle. In der Regel rechnen die Hersteller nach der Anzahl der Nutzer ab – wie etwa bei Grape, Mattermost und Q-municate. Angaben zur DSGVO machen einzig die Anbieter von Grape, HighSide, Stackfield, Teamwire und Wire.

Enge Auswahl

Die Marktübersicht umfasst ausschließlich Chatsysteme, die man auf eigenen Servern betreiben kann und die nicht in das Internet funken, etwa zu einem Control-­Server des Entwicklers. Außen vor bleiben somit viele etablierte Lösungen, allen voran Facebooks WhatsApp, Microsoft Skype, TeamViewer Blizz, Microsoft Teams und das beliebte Slack. Bei ihnen fließt die Kommunikation komplett über die Server des Betreibers, bestenfalls über Rechenzentren in der EU, wie das Microsoft guten Kunden anbietet.

Beteuerungen, dass die Daten verschlüsselt sind und die Hersteller keinen Zugriff auf die Nachrichteninhalte haben, sollten Unternehmen besser nicht zu ernst nehmen. Nach der Auslegung deutscher Datenschützer haften Firmen auch dann, wenn eingekaufte und im guten Glauben verwendete Software sich nicht an die Bestimmungen der DSGVO hält – die Verantwortung liegt beim Unternehmen, inklusive aller Risiken bezüglich der hohen Strafen für Datenschutzverstöße. Aus diesen Gründen berücksichtigt die Marktübersicht auch keine reinen Cloud-Lösungen wie den Slack-Konkurrenten Flock.

Andere Chatsysteme sind zwar in verschiedenen Ecken des Internets äußerst beliebt, aber nicht explizit für den Unternehmenseinsatz ausgelegt und oft auch nur bedingt dafür geeignet. Dazu zählt Dis­cord, das sich vor allem an die Gamer-­Szene richtet. Trotzdem nutzen es viele Unternehmen und Open-Source-Projekte als kostenlose Skype-Alternative, darunter die Entwickler von Vue.js. Professionelle Anwender sollten sich allerdings keinen Illusionen hingeben: Die enthaltenen Funktionen sind klar auf die Bedürfnisse von Spielern ausgerichtet.

Ebenfalls ausgeschlossen sind dezentrale Instant Messenger, die ins Internet funken. Sie arbeiten nach dem Peer-to-Peer-Prinzip, bei dem die Clients die Nachrichten direkt an bekannte Kollegen weiterreichen. Sofern sich die Kommunikation nicht auf bestimmte Clients beschränken lässt, wandern die internen Nachrichten im Extremfall auf unkontrollierbaren Wegen durch das Internet. Ein Beispiel ist Ricochet, das den Nachrichtenverkehr über das Tor-Netzwerk leitet und dort sogar einen Hidden Service annonciert. Einige dezentrale Instant Messenger zapfen zumindest bei ihrem ersten Start sogenannte Bootstrap-Nodes im Internet an und erhalten von diesen eine erste Liste mit in der Nähe befindlichen Kontakten, darunter auch die Clients des Tox-Chat-Projekts.

Selbstverständlich stolpert man bei der Recherche auch über einige ältere Chatsysteme, die nicht mehr weiterentwickelt werden, aber immer noch Verwendung finden, wie beispielsweise HipChat von Atlassian. Das vor allem durch seine Jira-­Produktlinie und das Confluence-Wiki bekannte Unternehmen ging 2018 eine Partnerschaft mit Slack ein und gab bekannt, HipChat einzustellen. Auch solche Lösungen finden sich nicht in der Tabelle.

Gruppenwaren

Auch auf anderen Märkten haben Hersteller das Bedürfnis von Unternehmen erkannt, der (asynchronen) E-Mail eine Alternative zur synchronen Kommunikation zur Seite zu stellen. Wer eine Groupware einsetzt, sollte zunächst einen Blick auf deren Chatmöglichkeiten werfen, haben die Anbieter doch im Verlauf der letzten Jahre vermehrt komplette Chatsysteme eingebaut. Im Open-Source-Umfeld geht der Trend ganz klar zur wechselseitigen Integration: EGroupware integriert beispielsweise seit der aktuellen Version 19.1 Rocket.Chat, Own- und Nextcloud integrieren eigene Dienste oder ganze Jabber-­Server wie den ejabberd.

Besonders einfach macht es Nextcloud, wo Administratoren lediglich die App „Talk“ installieren und anschließend auf Screen-Sharing, Chats und Videokonferenzen zurückgreifen können. Die Kommunikation erfolgt dabei Ende-zu-Ende-­verschlüsselt, wobei Nextcloud auch die Metadaten chiffriert. Um an Diskussionen teilzunehmen, genügt ein Browser – oder die passende Android- oder iOS-App.

Auch Personen außerhalb des Unternehmens können an Konferenzen teilnehmen, Nextcloud generiert dazu eine URL, die der entsprechende Teilnehmer lediglich in seinem Browser aufrufen muss. Die Chatfunktion fällt recht einfach aus, erlaubt aber bereits das Teilen von Dateien und Links. Die Videotelefonie basiert auf dem offenen WebRTC-Standard, wie bei einer ganzen Gattung von Videokonferenzsystemen, die als Webdienst, freie Software oder kommerzielle Lösung daherkommen und stets auch Chat beinhalten. Dazu gehören – neben hochpreisigen Cisco-­­Hardwarelösungen für ganze ­Konferenzräume – Angebote wie Zoom, Spreed oder GoToMeeting, um nur einige Beispiele zu nennen.

Ein großer Vorteil der in Groupware und ähnliche Lösungen integrierten Chatsysteme liegt erwartungsgemäß in der Verknüpfung mit den anderen Diensten. Unter EGroupware lassen sich etwa aus der Groupware heraus mit einem Mausklick Chats starten. In Nextcloud landen geteilte Dateien automatisch in der Dateiver­waltung. Wer unter Nextcloud das Online-­Office nutzt, erhält bei der gemeinsamen Arbeit an einem Dokument eine Seitenleiste mit dem Chat aller Beteiligten.

Betriebsstoffe

Die meisten Messenger arbeiten nach dem Client-Server-Prinzip, bei dem ein Server die komplette Kommunikation ab­wickelt. Ein klein wenig aus dem Rahmen fallen Matrix und das Extensible Messaging and Presence Protocol, besser bekannt unter dem Akronym XMPP oder der Bezeichnung Jabber. Beide definieren eigentlich nur ein Übertragungsprotokoll, für die wiederum zahlreiche Clients und Server existieren. Sowohl bei Ma­trix als auch bei XMPP lassen sich mehrere Server zusammenschalten, die dann wiederum die Nachrichten zu den passenden Clients durchleiten. Den tatsächlichen Funktionsumfang bestimmen jedoch maßgeblich der gewählte Server sowie die Clients. Tatsächlich basieren auch einige kommerzielle Messenger auf dem XMPP-Protokoll.

Der Jabber-Client PixArt für Android kann OMEMO und DNSSEC (Abb. 3).

Zu den bekanntesten XMPP-Servern zählen Openfire und ejabberd. Letzt­genannter spricht auch MQTT und SIP, ­darüber hinaus bietet er eine REST-API an. Als Clients empfehlen sich unter anderem das unter Linux populäre Pidgin, Gajm, Spark oder Android-Apps wie Conversations oder PixArt (Abbildung 3). Die Spreu trennt sich dabei schnell vom Weizen, taucht man tiefer ein in die Themen Verschlüsselung und den Funktionsumfang bezüglich erweiterter Jabber-Funktionen wie Chaträumen oder dem Hinzufügen von Kontakten. Während das Einscannen von QR-Codes fast schon zum Standard gehört, beherrschen viele Clients den End-to-End-Verschlüsselungsstandard OMEMO immer noch nicht ausreichend oder verständlich. Nicht jeder Client schafft es, die Benutzerführung so zu gestalten, dass der nicht technisch versierte Anwender ohne Krypto-Fachwissen sicher verschlüsselt kommunzieren kann. Da haben Anwendungen wie Signal noch die Nase vorn.

Matrix-Riot und XMPP-ejabberd

Angesichts der Vielzahl an Clients und Serverimplementierungen bei Matrix und XMPP musste für die Tabelle die Auswahl eines Referenzsystems getroffen werden. Der bekannteste Client für Matrix hört auf den Namen Riot (Abbildung 4), die Referenzimplementierung des Matrix-Servers heißt Synapse und ist stellvertretend in der Tabelle aufgeführt, für XMPP ging analog ejabberd ins Rennen.

Riot gehört zu den beliebteren und übersichtlichen Matrix-Clients (Abb. 4).

Backends

Die meisten Chatlösungen verlangen eine Datenbank, wobei jedoch durchgehend Standardprodukte zum Einsatz kommen. So setzen etwa Bitrix24 und Mattermost eine MySQL-Datenbank voraus, B-Labs hätte hingegen gerne einen MSSQL Server oder PostgreSQL – letztgenannte ­Datenbank ist auch eine Alternative für ­Mattermost. Let’s Chat und Rocket.Chat setzen wiederum auf MongoDB.

Apropos Let’s Chat: Die aktuelle Version basiert zwar auf Node.js, ein verwendetes Modul setzt allerdings noch Python 2.7 voraus, dessen Support Ende des Jahres ausläuft. Wer den Einsatz plant, sollte aufpassen, weil die Entwicklung von Let’s Chat derzeit nur schleppend voranschreitet. Einige Messenger-Systeme lassen sich offiziell per Docker in Betrieb nehmen. Dazu zählen der Matrix-Server Synapse, Mattermost, Rocket.Chat und Wire. 

Die meisten Messenger orientieren sich an der Arbeitsweise von WhatsApp oder Slack. Analog zu den Chatrooms der Bulletin Board Systeme (BBS) der 80er- und 90er-Jahre setzt auch Slack auf Channels, um die Diskussionen thematisch zu bündeln. Das Konzept haben viele Hersteller übernommen, auch Mattermost in seiner Townhall-Struktur (Abbildung 5).

Wie hier in Mattermost nutzen viele Messenger das Konzept der Channels: Wählt der Anwender links einen Kanal aus, sieht er rechts die darin derzeit laufende Kommunikation (Abb. 5).

Große Vorbilder 

So könnte ein Architekturbüro in jedem Channel den Baufortschritt eines ihrer Häuser diskutieren. Ein Channel entspricht somit einem abgeschlossenen Besprechungsraum. Je nach Messenger heißen die Kanäle nur etwas anders. Matrix, der Output Messenger, Let’s Chat und Wickr sprechen beispielsweise von „Rooms“. Bei Zulip heißt das Konzept „Streams“, die sich allerdings dort noch einmal in „Topics“ unterteilen lassen.

Wie die Nachrichten durch das Netz fließen, erfährt man ebenfalls nur bei einigen Anbietern. Als Verschlüsselung dient häufig TLS, Synapse setzt auf Olm, während Wire das Proteus-­Protokoll einsetzt. Die meisten Messenger können Dateien tauschen und zumindest in den Nachrichten mitgeschickte Bilder anzeigen.

Verschlüsselungen

Wie die versprochene End-to-End-Verschlüsselung mit Channels oder Rooms in Unternehmen zurechtkommt, wo zwanzig oder mehr Teilnehmer mitdiskutieren, muss der Anwender selbst durch Testen herausfinden. Fraglich ist auf jeden Fall, wie ein Unternehmen sicherstellen soll – falls es das überhaupt will –, wie Kommunikation noch nach Monaten oder Jahren lesbar bleibt, wenn die Anwender bereits wieder komplett neue Verschlüsselungs-­Keys verwenden.

Auch die Vielzahl an Clientgeräten wird schnell zum Problem: Was Signal durch die Koppelung via QR-Code und TAN noch gut auf die Reihe bekommt, wird mit ­manchen OMEMO-­Implementierungen zur echten Herausforderung. Wer einmal versucht hat, mit drei bis vier Kommunikationspartnern mit ebenso vielen Endgeräten (PC, Tablet, Smartphone) dauerhaft zu kommunizieren, und dabei keine „Could not decrypt“-Messages in der History vorfinden musste, kann sich glücklich schätzen.

Doch das ist nur die Spitze eines Eisberges: Wer sich hier tiefer einarbeitet, stößt auf viele ungelöste Fragen rund um Compliance, Archivierungspflichten und Datenschutz, aber auch Verschlüsselungsmechanismen (PKI und Key-Management, Key-Hierarchien) und mehr. Fraglich ist hier, ob die Entwickler der diversen Chatsysteme derlei auf dem Radar haben. Ob OMEMO, PGP, Autocrypt (wie bei Chat over IMAP), die Lesbarkeit alter Nachrichten sicherzustellen und gleichzeitig für angemessenen Datenschutz zu sorgen, erscheint schwierig. Allerdings sind das auch eher Ansprüche, denen die „großen“ Dienste von Facebook oder Microsoft nicht genügen müssen – der Vergleich mag an dieser Stelle hinken.

Erstaunlich viele Kandidaten bieten eine Anbindung an ein LDAP-Directory, Audio- und Videotelefonie und eine Programmierschnittstelle. Über Letztere lässt sich der Funktionsumfang erweitern und der Messenger in eine bestehende Softwarelandschaft integrieren.

Individuell

Einige Messenger locken mit speziellen Zusatzfunktionen. So wirbt Mattermost mit seiner Kompatibilität zu Slack. Unter anderem sollen sich die Nutzerkonten, die öffentliche Channel History und die Farbeinstellungen des Themes in Mattermost übernehmen lassen. MyChat wiederum bietet ein Kanban-Board und ein schwarzes Brett.

Rocket.Chat übersetzt auf Wunsch die Nachrichten in Echtzeit in andere Sprachen. Auf diese Weise sieht eine französische Chatteilnehmerin die englische Nachricht eines Kollegen in ihrer Muttersprache. Über das Matrix-Protokoll lassen sich neben Nachrichten auch andere Informationen übertragen, womit es sich auch zur Kommunikation von IoT-Geräten und zur Übertragung von VR-Daten eignet.

Teamwire und Trillian offerieren eine Alarmfunktion: Bestimmte Nachrichten lösen bei den Empfängern einen Alarm aus, Teamwire spielt sogar einen frei wählbaren Alarmton ab. Des Weiteren bieten die Team­wire-Clients einen Notfall-Button. Ein Druck darauf löst bei den Empfängern umgehend einen Alarm aus. Das ist beispielsweise in Situationen nützlich, in denen es auf kurze Reaktionszeiten ankommt. 

Einige Tools integrieren sich in weiteren Softwareprodukten, allen voran den Jira-Anwendungen. Dazu zählen etwa Mattermost, Rocket.Chat und Zulip. Letz­terer Messenger kann sogar Nachrichten über IRC, Matrix und Slack austauschen. Eine vollständige Liste mit Anwendungen, an die Zulip andocken kann, findet sich auf deren Webseite.

Qual der Wahl

Wer ein Messenger-System im eigenen Serverraum betreiben möchte, hat die Qual der Wahl. Bei der Entscheidung sollte man sich von den eigenen Bedürfnissen und dem zur Verfügung stehenden Budget leiten lassen. Die Auswahl erschwert allerdings die magere Informationspolitik einiger Anbieter. Letztgenannte wollen offenbar bevorzugt ihre Cloud-Lösungen an den Mann bringen – was auch erklären würde, warum sie Informationen zur On-Premises-Fassung teilweise extrem gut auf ihren Internet­seiten verstecken. Wer auf Compliance und digitale Nachhaltigkeit in Sachen Archivierung und Key-Management angewiesen ist, sollte zuerst in diese Richtung recherchieren und danach den Messenger auswählen. (mfe@ix.de)

Tim Schürmann

ist Diplom-Informatiker und arbeitet als freier Autor und IT-Journalist.

Kommentare lesen (1 Beitrag)