Hilfe Kommunikation mit Matrix-Server

Diese Seite bietet Informationen zur Verwendung von Matrix als Kommunikationsplattform.

Was ist Matrix?

Matrix ist ein Messengerdienst, vergleichbar mit Whatsapp oder Signal. Es ist eigentlich ein standardisiertes Kommunikations-Protokoll. Whatsapp und andere haben den Nachteil, das es sich um geschlossene Ökosysteme handelt, wo alle Kommunikation über eine zentrale Instanz läuft. Bei Matrix hingegen bilden viele verschiedene Server miteinander ein Netzwerk. Theoretisch könnte jeder einzelne Benutzer seinen eigenen Matrix-Server betreiben und es würde trotzdem funktionieren. Das ist vergleichbar mit E-Mail.
Wikipedia-Artikel zu Matrix


Warum sollte man Matrix verwenden?

  • Matrix verwendet starke Ende-zu-Ende-Verschlüsselung, das heißt nur die beteiligten Konten bzw. Clients können die Nachrichten lesen. Die beteiligten Server sehen die Nachrichten nicht im Klartext. Diese starke Verschlüsselung ohne zentrale (und ausländische) Instanz ist auch der Grund, warum zB die deutsche Bundeswehr aus Sicherheitsgründen oder die Kommunikation zwischen deutschen Gesundheitsorganisation aus Datenschutzgründen neuerdings auf Matrix setzen.
  • Whatsapp und Signal sind geschlossene Systeme, es gibt nur eine zentrale Kommunikationsinstanz und die Apps sind vorgegeben. Wenn man den Firmen nicht vertraut oder wenn Werbung eingeführt wird, kann man nicht einfach wechseln. Bei Matrix kann man den Server auswählen, wo man sein Konto haben möchte, oder alternativ auch selber einen Server betreiben. Es gibt mehrere Clients, die auch parallel verwendet werden können.
  • Bei Whatsapp oder Signal kann man nur mit Personen kommunizieren, die auch auf diesen Netzwerken sind. Für jedes Netzwerk benötigt man eigene Apps. Für Matrix gibt es "Bridges" die eine Einbindung von Whatsapp, Signal, Telegram, Discord, G-Messages, iMessages, X, Bluesky, LinkedIn etc. ermöglichen. Somit kann man viele Tätigkeiten mit der gewählten Matrix-App durchführen.

Was ist ein Konto und wie nutze ich es?

Zuerst muss man einen Server auswählen, wo man sein Konto anlegen möchte (technisch versierte Anwender mit Linux-Erfahrung können auch einen eigenen Server einrichten). Dann bekommt man für sein Konto eine Matrix-Adresse wie diese:
  @testuser:matrix.hasecom.at
Die Matrix-Adresse ist ähnlich wie eine E-Mail-Adresse aber ein bisschen anders aufgebaut. Der erste Teil ist der Username bzw. Nickname, nach dem Doppelpunkt folgt der Servername, in unserem Fall also matrix.hasecom.at. Mit dieser Adresse meldet man sich an Matrix-Clients an und zum Starten einer Unterhaltung verwendet man die Matrix-Adresse des Gesprächpartners. Diese Adresse gibt man also wie die E-Mail-Adresse an Kontakte weiter. Die Adresse muss übrigens eindeutig sein und kann nach der Einrichtung auch nicht mehr geändert werden.

Welche Clients gibt es?

Im Unterschied zu Whatsapp, Signal und anderen Netzwerken kann man in Matrix verschiedene Clients verwenden. Es ist wie bei E-Mail-Anbietern, welcher Client am besten zusagt ist Geschmackssache. Folgende Clients sind derzeit die bekanntesten:

  • Element Classic: diese App stammt von den Machern von Matrix und unterstützt daher alle Funktionen am besten. Insbesondere ermöglicht Element auch Telefon-Anrufe und Video-Calls. (verfügbar für Android / iOS)
  • Element Web: Ist keine App, sondern ein Zugang zum Konto über einen Webbrowser. Element Web ist auch auf unserem Server installiert und kann über matrix.hasecom.at mit jedem Browser aus aufgerufen werden. Web ist allerdings nicht für Mobilgeräte optimiert, dort bitte Apps aus den Stores verwenden. (verfügbar für Windows / macOS / Linux)
  • Element Desktop: Funktionsumfang wie beim Webclient, aber als App zur Installation für den Desktop. (verfügbar für Windows / macOS / Linux)
  • FluffyChat: Diese App wirkt etwas einfacher und aufgeräumter als Element Classic, ist daher etwas einfacher in der Bedienung. Es gibt aber Einschränkungen bei Telefonaten und Video-Calls. Für normales Chatten aber sehr zu empfehlen (verfügbar für Android / iOS)
  • Element X: ist ebenfalls von den Matrix-Machern, aber erst im Aufbau und wird wohl Element Classic langfristig ersetzen. Funktioniert nicht mit matrix.hasecom.at, weil wir die Anmeldung mit Keycloak machen und OIDC in Element X noch nicht funktioniert. (verfügbar für Android / iOS)

Wie installiere ich Clients?

Element Desktop und Classic Element mobile apps: die Download-Links findet man auf der Seite von element.io
FluffyChat: die Download-Links für die Appstores findet man auf matrix.org

Wie richte ich mir ein Konto auf matrix.hasecom.at ein?

Der Server matrix.hasecom.at ist ein geschlossener Matrix-Server, eine eigenhändige Registrierung ist nicht möglich. Möchte man ein Konto auf dem Server, muss man den Administrator Gerhard Seeber um die Anlage eines Kontos bitten.

Für die Einrichtung des Kontos wird ein Nickname benötigt. Dieser Nickname muss auf dem Server eindeutig sein und kann später nicht mehr geändert werden, da dieser Bestandteil der öffentlichen Matrix-Adresse für das Konto wird:
@nickname:matrix.hasecom.at
Normalerweise wird der Nickname auch als Benutzername für die Anmeldung verwendet. Wir können aber auch einen abweichenden Usernamen vergeben (der Username wird nur für die Anmeldung verwendet und ist nicht öffentlich). Wird das gewünscht, müssen beide Namen bei der Anfrage für ein Konto angegeben werden.

Nach Anlegen des Kontos kann man auf dem gewünschten Gerät einen Client installieren und die erste Anmeldung durchführen. Bei manchen Clients muss man die vorbelegte Server-Adresse "matrix.org" bearbeiten und auf "matrix.hasecom.at" ändern. Die Felder für Benutzername und Passwort ignoriert man und wählt stattdessen die "Anmeldung mit Keycloak" aus.

Was ist Keycloak?

Keycloak ist ein IAM, ein Identity Access Manager. Das ist ein Programm im Hintergrund von Matrix, wo die Benutzer verwaltet werden. Der Vorteil von Keycloak ist, dass die Benutzerverwaltung einfacher ist und diese Anmeldung auch für andere Programme oder Webseiten genutzt werden kann.

Wenn man im Client die Anmeldung durchführt, werden nach Angabe des Servers Eingabefelder für Username und Passwort angezeigt, die man aber ignorieren muss. Darunter ist ein Button für "Anmeldung mit Keycloak". Dies führt im Webbrowser zu einer Seite von Keycloak mit dem Hinweis "Hasecom Matrix", wo man dann Username und Passwort für die Anmeldung eingibt. Nach erfolgreicher Anmeldung kehrt man wieder zum Matrix-Client zurück. In der Regel muss man bei der ersten Anmeldung die E-Mail-Adresse bestätigen und ein neues Passwort vergeben.

Wiederherstellungsschlüssel

Hier als erstes gleich eine ganz wichtige Information!

Matrix ermöglicht eine sehr sichere Kommunikation mit anderen Matrix-Konten, weil alle Nachrichten verschlüsselt sind und die Codes zum Entschlüsseln nur auf den Clients gespeichert sind. Der Server kennt diese Codes nicht und hat daher keine Möglichkeit die Nachrichten zu lesen. Aber auch neue Clients haben zuerst keine Möglichkeit auf die Nachrichten zuzugreifen. Man muss einen neuen Client über einen bereits vorhandenen anderen Client verifizieren (man bestätigt die Echtheit des Zugriffs mit dem anderen Client durch Prüfung von angezeigten Emojis). Nach dieser Verifizierung werden die Schlüssel zwischen den Clients ausgetauscht, der neu hinzugekommene Client kann nun auch die Nachrichten entschlüsseln.

Was passiert nun wenn man keinen anderen funktionierenden Client hat, mit dem man verifizieren kann? Genau für diesen Fall gibt es den Wiederherstellungsschlüssel. Die Schlüssel zum Lesen der Nachrichten werden als Backup auf dem Server abgelegt, nur mit dem Wiederherstellungsschlüssel kann der Benutzer dieses Backup lesen.

Der Wiederherstellungsschlüssel ist nicht in jedem Konto von Haus aus vorhanden, er muss erst vom Benutzer manuell erstellt werden. Dazu geht man in die Konto-Einstellungen auf den Tab "Verschlüsselung" (mit dem Element-Client). Dort legt man einen neuen Wiederherstellungsschlüssel an bzw. ändert man ihn später bei Bedarf wieder. Diesen Wiederherstellungsschlüssel muss man selber irgendwo sicher abspeichern - idealerweise in einen Passwort-Manager speichern oder ausdrucken und sicher verwahren. VERLIERT MAN DEN WIEDERHERSTELLUNGSSCHLÜSSEL SIND ALLE BISHERIGEN NACHRICHTEN NICHT MEHR LESBAR (SOBALD MAN VON ALLEN GERÄTEN ABGEMELDET IST ODER DIESE VERLOREN HAT).

Die Empfehlung ist, dass man sich mit einem zweiten Gerät am gleichen Matrix-Konto anmeldet, dann muss man nicht mit dem umständlichen Wiederherstellungsschlüssel arbeiten, wenn man sich abgemeldet oder das Erstgerät verloren hat, sondern kann dieses zweite Gerät zum Verifizieren verwenden. zb kann man primär mit einer App auf dem Smarthome und zusätzlich auf dem Desktop-Gerät mit Element Desktop arbeiten. Im Unterschied zu Whatsapp ist Matrix auf die Verwendung von mehreren Geräten gleichzeitig ausgelegt.

Profil-Informationen

Wie auch bei anderen Messengern kann man auch bei Matrix-Konten das Erscheinungsbild seines Profils anpassen. In den Einstellungen kann man das Profilbild ändern, den Anzeigenamen anpassen und zusätzliche Informationen wie E-Mail-Adresse und Telefonnummern eintragen. In den Einstellungen findet man auch seine eigene Matrix-Adresse (@nickname:matrix.hasecom.at) zum Kopieren.
Achtung: Wenn man in den Einstellungen eine Möglichkeit zum Ändern des Passworts findet, ist das hier nicht der richtige Ort dafür. Unser Server arbeitet mit Konten auf Keycloak, wo auch die Passwort-Prüfung stattfindet. daher muss man bei Bedarf das Passwort in Keycloak ändern: Dieser Link führt zum Keycloak-Konto. Nach der Anmeldung findet man den richtigen Dialog im Menü unter "Kontosicherheit" und "Anmeldung". Dort kann man mittels "Aktualisieren" unter "My password" ein neues Passwort setzen.

Räume und Spaces

Jede Konversation mit einer oder mehreren Personen stellt einen Raum in Matrix dar. Für Räume kann man einstellen, wer in die Räume überhaupt rein und was die dort machen dürfen. Bei selbst erstellten Räumen kann man bestimmen ob jemand anderes auch Moderator oder Administrator sein darf. Es gibt private und öffentliche Räume. Private Räume sind verschlüsselt, öffentliche Räume können von anderen betreten werden (voll öffentlich für alle Matrix-Konten weltweit möglich oder teil-öffentlich beschränkt auf alle Konten auf den Server matrix.hasecom.at).

Räume haben auch eine Matrix-Adresse: statt dem @ wird hier aber ein # verwendet: #raumname:matrix.hasecom.at. Mit dieser Adresse kann man einem Raum beitreten (wenn man dazu berechtigt ist). Hat man einen Raum erstellt, kann man etweder einen Benutzer über seine Matrix-Adresse einladen oder die Matrix-Adresse des Raums weitergeben, damit der Benutzer selber beitreten kann.

Auf matrix.hasecom.at gibt es zwei Räume, denen jedes Konto auf dem Server automatisch zugeordnet wird:

  • #server:matrix.hasecom.at: bzw. "Server-Admin matrix.hasecom.at"; dieser Raum dient dem Administrator für wichtige Ankündigungen zu Änderungen am Server oder Wartungsfenster etc. Hier dürfen andere außer dem Administrator nur lesen.
  • #all_users:matrix.hasecom.at: bzw. "Alle auf matrix.hasecom.at"; dieser Raum kann von allen Anwendern zum allgemeinen Plaudern untereinander verwendet werden. Jeder kann hier reinschreiben, die Nachrichten sind auch für alle sichtbar.

Spaces hingegen sind Sammlungen von Räumen, die man zur Organisation der Chats nutzen kann. In Element sind diese Spaces links senkrecht angeordnet. Der Bot für Whatsapp oder Signal zB organisiert alle aus den Messengern stammenden Chaträume in eigenen Spaces. Man kann jederzeit weitere Spaces hinzufügen, i.d.R. wird man dabei private Spaces verwenden, damit diese nur für einen selber bestimmt sind. Öffentliche Spaces können für Community-Chats zu bestimmten Themen verwendet werden.

Unser Server matrix.hasecom.at hat eine sogenannte Bridge für Whatsapp installiert. Wenn man die Bridge nutzen möchte, kann man damit sein Matrix-Konto mit einem Whatsapp-Konto verknüpfen. Der Vorteil ist, dass man dann aus einer einzigen App heraus verschiedene Messenger-Dienste nutzen kann. Man bündelt also in der Matrix-App die Kommunikation mit Matrix-Kontakten zB mit den Whatsapp- und Signal-Chats. Diese Bridge funktioniert technisch wie die Web-Version von Whatsapp im Browser.

Einrichten der Whatsapp-Bridge

Jeder Benutzer muss die Verbindung selber einrichten, wenn dies gewünscht ist. Dazu muss man im Matrix-Client einen neuen Chat starten und als Gesprächspartner "@whatsappbot:matrix.hasecom.at" eintragen. Damit erstellt man einen Chat-Raum mit dem Namen "WhatsApp bridge bot". Diesem Bot kann man die notwendigen Befehle für das Setup geben.

Im Chat-Raum kann man die Unterhaltung mit "help" als erster Nachricht starten. Der Bot antwortet mit einer Liste an möglichen Befehlen. Um die Bridge mit dem Whatsapp-Konto zu verknüpfen, gibt man "login qr" ein, damit wird dann ein QR-Code angezeigt (eventuell muss man den Befehl 2x eintragen falls der QR-Code nicht gleich angezeigt wird).

Nun öffnet man Whatsapp wie gewohnt auf dem Mobiltelefon, über die "drei Punkte" gelangt man ins Menü und öffnet dort "Verknüpfte Geräte" und scannt den angezeigten QR-Code (das ist das gleiche Prozedere wie beim Verknüpfen von Whatsapp Web). Wenn die Verknüpfung funktioniert, steht im Chat mit dem WhatsApp Bridge Bot "successfully logged in as +43xxxxxxxxxx" (also die eigene Telefonnummer, mit der man bei Whatsapp angemeldet ist).

Sobald nun neue Nachrichten in Whatsapp auftauchen, wird vom Bot ein neuer Raum in Matrix mit der Nachricht erstellt. D.h. man sieht in Matrix alle Konversationen ab dem Login über die Bridge. Der Bot kann leider nicht alle bisherigen Chats aus Whatsapp importieren und bei den laufend erstellen Chats werden auch keine historischen Nachrichten importiert. Möchte man jemanden über die Matrix-App kontaktieren, der bisher noch nicht über die Whatsapp-Bridge importiert wurde, muss man zuerst in der Whatsapp-App eine Nachricht an den Kontakt schicken - das löst dann die Erstellung des Chat-Raums in Matrix aus. Ab dann kann man die Konversation über Matrix fortführen.

Wenn der Chatraum einmal erstellt wurde, werden neue Nachrichten vom Bot automatisch eingestellt, die Matrix-App benachrichtigt auch über die neue Nachricht. Und man kann vom Matrix-Client aus antworten, Bilder und Dateien schicken oder mit Emojis reagieren. Für das Gegenüber ist übrigens nicht ersichtlich, dass man eigentlich eine Matrix-App nutzt. Neue Kontakte, die man bisher nicht in Whatsapp hatte, muss man einmalig in der Whatsapp-App hinzufügen. Danach sollten sie in Matrix automatisch auftauchen.

Warum sieht man 4 Mitglieder in Whatsapp-Chats?

Aus technischer Sicht legt der Bridge-Bot für jeden Whatsapp-Kontakt einen Benutzer auf dem Matrix-Server an. D.h. aus Whatsapp werden schon mal zwei Mitglieder für den Chat-Raum berücksichtigt. Innerhalb von Matrix nimmt die Bridge die Nachricht entgegen und gibt diese an das Matrix-Konto des Anwenders weiter. Daher sind auch die Bridge und das Matrix-Konto als Mitglieder gelistet.

Status-Nachrichten

Die Status-Nachrichten der Kontakte werden ebenfalls in einen Chat-Raum übernommen und man bekommt auch Benachrichtigungen für neue Meldungen wie bei anderen Chat-Räumen, der Name des Raums ist "WhatsApp Status Broadcast". Das ist ein colles Feature von der Bridge, da man keinen Status mehr verpasst. Falls die Benachrichtigungen dafür stören, kann man den Raum einfach stummschalten. Im Übrigen bleiben die Status-Nachrichten nach der Übernahme ins Matrix-Konto erhalten, auch wenn sie auf Whatsapp nach Ablauf der 24 Stunden nicht mehr sichtbar sind. Zusätzlich werden Chat-Räume für alle abonnierten Kanäle (also alles weitere unter "Aktuelles" in Whatsapp) angelegt.

Kommentare oder Reaktionen auf andere Status-Meldungen kann man mit Matrix-Clients leider nicht senden, der Bot weist beim Versuch darauf mit einer Meldung hin. Um solche Reaktionen zu senden, muss man vorerst weiterhin in die Whatsapp-App einsteigen.

Eigene Status-Nachrichten kann man mit Matrix-Clients leider auch noch nicht senden. Auch dafür muss man weiterhin die Whatsapp-App auf dem Smartphone verwenden (das ist eine Einschränkung von Whatsapp, auch deren Web-Version kann keine Status-Meldungen senden).

Hinweis zur Verschlüsselung

Die Verbindung zwischen matrix.hasecom.at und Whatsapp erfolgt selbstverständlich verschlüsselt, gleich wie bei Whatsapp Web. Aber der Bridge Bot muss die Nachricht entschlüsseln, damit sie an das Matrix-Konto des Benutzers weitergeleitet werden kann. Diese Nachrichten in Matrix können vom Bot aus technischen Gründen nicht verschlüsselt werden. Auch beim Senden von Nachrichten an Whatsapp-User werden matrix-intern keine Verschlüsselungen verwendet (darauf wird von den Matrix-Clients in den Whatsapp-Chaträumen hingewiesen). Beim Übermitteln an Whatsapp wird selbstverständlich verschlüsselt. Das führt aber dazu, dass Whatsapp-Kommunikation auf dem Server matrix.hasecom.at theoretisch lesbar abgelegt ist - im Unterschied zur Kommunikation zwischen echten Matrix-Konten. Auf den Server matrix.hasecom.at hat regulär ausschließlich der Administrator Gerhard Seeber Zugriff, auf Nachrichten der Benutzer wird dabei aber nie zugegriffen.

Unser Server matrix.hasecom.at hat eine sogenannte Bridge für Signal installiert. Wenn man die Bridge nutzen möchte, kann man damit sein Matrix-Konto mit einem Signal-Konto verknüpfen. Der Vorteil ist, dass man dann aus einer einzigen App heraus verschiedene Messenger-Dienste nutzen kann. Diese Bridge funktioniert technisch wie die Web-Version von Signal im Browser.

Einrichten der Signal-Bridge

Jeder Benutzer muss die Verbindung selber einrichten, wenn dies gewünscht ist. Dazu muss man im Matrix-Client einen neuen Chat starten und als Gesprächspartner "@signalbot:matrix.hasecom.at" eintragen. Damit erstellt man einen Chat-Raum mit dem Namen "Signal bridge bot". Diesem Bot kann man die notwendigen Befehle für da Setup geben.

Im Chat-Raum kann man die Unterhaltung mit "help" als erster Nachricht starten. Der Bot antwortet mit einer Liste an möglichen Befehlen. Um die Bridge mit dem Signal-Konto zu verknüpfen, gibt man "login qr" ein, damit wird dann ein QR-Code angezeigt.

Nun öffnet man Signal wie gewohnt auf dem Mobiltelefon, über die "drei Punkte" gelangt man ins Menü, dort öffnet man "Einstellungen", geht dann auf "Gekoppelte Geräte" und scannt den angezeigten QR-Code. Wenn die Verknüpfung funktioniert, steht dann im Chat mit dem Signal Bridge Bot "successfully logged in as +43xxxxxxxxxx" (also die eigene Telefonnummer, mit der man bei Signal angemeldet ist). Eventuell muss man das mehrmals durchführen, Signal ist da beim Koppeln etwas empfindlicher als Whatsapp.

Nach kurzer Zeit sollten alle vorhandenen Chats aus Signal importiert werden, für eine gewisse Zeit zurück in die Vergangenheit werden auch historische Nachrichten übernommen.

Wenn die Chaträume einmal erstellt wurden, werden neue Nachrichten vom Bot automatisch eingestellt, die Matrix-App benachrichtigt auch über die neuen Nachrichten. Und man kann vom Matrix-Client aus antworten, Bilder und Dateien schicken oder mit Emojis reagieren. Für das Gegenüber ist übrigens nicht ersichtlich, dass man eigentlich eine Matrix-App nutzt. Neue Kontakte, die man bisher nicht in Signal hatte, muss man einmalig in der Signal-App hinzufügen. Danach sollten sie in Matrix automatisch auftauchen.

Warum sieht man 4 Mitglieder in Signal-Chats?

Aus technischer Sicht legt der Bridge-Bot für jeden Signal-Kontakt einen Benutzer auf dem Matrix-Server an. D.h. aus Signal werden schon mal zwei Mitglieder für den Chat-Raum berücksichtigt. Innerhalb von Matrix nimmt die Bridge die Nachricht entgegen und gibt diese an das Matrix-Konto des Anwenders weiter. Daher sind auch die Bridge und das Matrix-Konto als Mitglieder gelistet.

Storys

Die Storys von Signal (also quasi die Status-Nachrichten von Whatsapp) werden derzeit nicht in Matrix synchronisiert. Für diese Funktion muss man weiterhin mit der Signal-App arbeiten.

Hinweis zur Verschlüsselung

Die Verbindung zwischen matrix.hasecom.at und Signal erfolgt selbstverständlich verschlüsselt, wie bei Signal im Browser. Aber der Bridge Bot muss die Nachricht entschlüsseln, damit sie an das Matrix-Konto weitergeleitet werden kann. Diese Nachrichten in Matrix können vom Bot aus technischen Gründen nicht verschlüsselt werden. Auch beim Senden von Nachrichten an Signal-User werden matrix-intern keine Verschlüsselungen verwendet (darauf wird von den Matrix-Clients in den Signal-Chaträumen hingewiesen). Beim Übermitteln an Signal wird selbstverständlich verschlüsselt. Das führt aber dazu, dass Signal-Kommunikation auf dem Server matrix.hasecom.at theoretisch lesbar abgelegt ist - im Unterschied zu Kommunikation zwischen echten Matrix-Konten. Auf den Server matrix.hasecom.at hat regulär ausschließlich der Administrator Gerhard Seeber Zugriff, auf Nachrichten der Benutzer wird dabei aber nie zugegriffen.