icon Gajim ist ein Jabber/XMPP Client, der neben OpenPGP- und OTR-Verschlüsselung auch die neue OMEMO-Verschlüsselung beherrscht (experimentell). OTR und OMEMO werden dabei über Plugins bereitsgestellt, OpenPGP ist fest eingebaut.

Installation von Gajim

Installation der Plugins

Nach der Installation startet man Gajim, überspringt den Assistenten zur Account­einrichtung und öffnet die Plugin-Verwaltung unter "Ändern - Plugins".

Auf dem Reiter der verfügbaren Plugins wählt man das OTR- und OMEMO-Plugin sowie HTTPUpload + URLImagePreview und klickt auf den Install-Button.
Gajim Plugin Installer
Nach der Installation muss man die Plugins noch aktivieren. Dafür wechselt man zum Reiter "Installiert" und aktiviert die frisch installierten Plugins.
Gajim Plugin Installer

Konfiguration von Gajim

Bevor man einen Account erstellt, kann man noch einige Anpassungen der Konfiguration vornehmen. Dazu öffnet man den Konfigurationsdialog (Menüpunkt: "Ändern - Preferences") und klickt sich einmal durch die Einstellungen. Auf dem Reiter "Erweitert" kann man die bevorzugten Programme konfigurieren und Einstellungen zur Privatsphäre vornehmen:
Gajim Konfiguration
Wichtig ist, die Aufzeichnung von verschlüsselten Chats zu deaktivieren. Die Protokollierung verschlüsselter Sitzungen ist ein Security Bug, der C. Mannings zum Verhängnis wurde. Die lokale Zeit (Zeitzone) und Informationen über das Betriebs­system muss man nicht in die Welt hinaus schreien.

Wenn man den "Erweiterten Konfigurationseditor" öffnet, kann man die Recht­schreib­prüfung aktivieren. Dazu trägt man die gewünschte Sprache ein (Deutsch: "de_DE") und aktiviert die Rechtschreibprüfung, wie es im Screenshot zu sehen ist:
Gajim Konfiguration
Gajim verwendet das Programm "aspell" für die Rechtschreibprüfung. Die Wörterbücher für die gewünschte Sprache und die "libgtkspell0" müssen ebenfalls installiert sein.

Account erstellen

  1. Um einen Jabber/XMPP Account einzurichten öffnet man die Account­verwaltung (Menüpunkt: "Ändern - Konten") und klickt auf den Button "Hinzufügen". Es öffnet sich der Assistent zur Konfiguration neuer Konten.
    Gajim Account erstellen
  2. Wenn man bereits einen Account hat, die ist Konfiguration einfach:
    Gajim Account erstellen
  3. Wenn man einen neuen Account auf einem Jabber Server erstellen möchte, wählt man zuerst den Server. Das Drop-Down Menü enthält eine Liste von Jabber Servern.
    Gajim Account erstellen
    Danach wählt man den Namen und das Passwort für den neuen Account.
    Gajim Account erstellen
    Einige Server verlangen die Lösung für ein Captcha, um Robots die Anmeldung zu erschwerden. Mit Klick auch "Forward" wird der neue Account auf dem Server erstellt.

Account konfigurieren

In den erweiterten Einstellungen des Account kann man nach dem Erstellen des Account noch einige Kleinigkeiten anpassen.

Gajim möchte z.B. wieder alle Unterhaltungen protokollieren (das betrifft auch verschlüsselte Konversationen). Außerdem kann man das Verfolgen von Konversationen auf anderen Geräten deaktivieren, da es nicht mit der OTR-Verschlüsselung kompatibel ist, man sieht dann nur unlesbaren OTR-Kauderwelsch. Mit OpenPGP und OMEMO gibt es keine Probleme.
Gajim Account configurieren

In dem grafischen Einstellungsdialog kann man nur den Dateitransfer Proxy aktivieren. Man kann aber nicht den gewünschten Server konfigurieren. Standardmäßig nutzt Gajim die Server proxy.eu.jabber.org, proxy.jabber.ru und proxy.jabbim.cz. Wenn man den Dateitransfer Proxy des bevorzugten Jabber Servers nutzen möchte, weil man diesem Provider mehr vertraut, dann muss man den Proxy im "Erweiterten Konfigurationseditor" anpassen.

Den Konfigurationseditor findet man im Einstellungsdialog ("Ändern - Preferences") auf dem Reiter "Erweitert". Dort kann man nach "file_transfer_proxies" für den Account suchen.
Gajim Account configurieren

Außerdem kann man in dem Konfigurationseditor die Einstellungen für die SSL/TLS- Verschlüsselung anpassen. Standardmäßig verwendet Gajim TLS v1.0+ und eine schwache Cipherliste "HIGH:!aNULL:RC4-SHA", die nicht mehr mit den aktuellen Empfehlungen der IETF RFC 7525 kompatibel ist. Für jeden Account kann man folgende Werte anpassen: tls_version = 1.2
cipher_list = ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384
Welche Cipher der Server unterstützt, kann man mit dem CryptCheck prüfen, indem man folgende URL im Browser aufruft: https://tls.imirhil.fr/xmpp/<domain.tld>

Welche Cipher Gajim unterstützt, kann man unter Linux mit folgendem Kommando prüfen: > openssl ciphers -v
ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 ...
ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 ...
...

Dateien tauschen

Jabber/XMPP bietet neben Chatten auch die Möglichkeit, Dateien zu tauschen.
  1. Datei senden... kann man in der Kontaktliste mit einem Rechtsklick der Maus aufrufen.
    Gajim Datei senden
    Der Empfänger muss die Datei akzeptieren und einen Speicherort wählen. Die Datei wird dann entweder direkt an den Empfänger gesendet, wenn der Computer des Empfängers erreichbar ist. Wenn sich der Empfänger hinter einem NAT-Gateway oder einer Firewall befindet, dann wird eine Verbindung über einen Dateitransfer Proxy ausgehandelt.

    Diese Dateiübertragung ist immer unverschlüsselt. D. Gultsch hat mit OMEMO Encrypted Jingle File Transfer einen Vorschlag eingereicht, wie man diesen Dateitransfer mit OMEMO verschlüsseln könnte, das ist aber noch nicht umgesetzt.
  2. HTTPUpload muss vom Server unterstützt werden. Wenn man das Plugin HTPUpload installiert hat, findet im Chatfenster unter in der Statusleiste den Button, um Dateien zu senden und daneben ein Button für Bilder.
    Gajim HTTPUpload
    Die Datei wird mit OMEMO verschlüsselt (wenn OMEMO aktiv ist) und auf den Jabber Server hochgeladen. Dort liegt sie für den Empfänger bereit. Im Chat wird dem Empfänger automatisch ein Download Link gesendet, den er im Browser aufrufen kann, um die Datei herunter zu laden. Die Speicherdauer auf dem Server wird vom Admin des Servers festgelegt, üblicherweise 1h.

    Hinweis: Während das OMEMO-verschlüsselte Senden von Dateien und Bildern funktioniert, gibt es beim Empfang der via HTTPUpload gesendeten Daten noch Probleme mit OMEMO. Verschlüsselt übertragene Bilder werden angezeigt, wenn man das Plugin URLImagePreview installiert hat. Alle anderen Dateiformate muss man mit dem Webbrowser abrufen und der kann dann nur verschlüsselten Daten­salat herunter laden. OMEMO zu deaktivieren würde helfen, ist aber auch keine Lösung.

Gajim + Tor Onion Router

Gajim ist unserer Meinung nach NICHT für die Kombination mit Tor Onion Router geeignet. Es ist eine Proxy Konfiguration für Tor vorbereitet, aber Gajim enthält Bugs, welche die Anonymität und Sicherheit bei der Verwendung von Tor gefährden (siehe Gajim + Tor im Kapitel "Anonymisierungsdienste").
Lizenz: Public Domain