Gajim
Allgemeine Informationen
Gajim ist ein freier, plattformunabhängiger XMPP Desktop Client. Das Ziel der Entwickler ist einen leistungsstarken und einfach zu bedienenden XMPP Client, mit dennoch großem Funktionsumfang bereit zu stellen. Dies äußert sich vor allem dadurch, das er derzeit am besten mit Conversations oder Chatsecure zusammen arbeitet, da er alle XEP’s unterstützt, welche auch die mobilen Messenger unterstützen. So ist untereinander die verschlüsselte Kommunikation via OMEMO und der Dateiaustausch via http_upload (sowohl encrypted senden als auch empfangen) möglich. Herunterladen könnt ihr ihn hier über die Seite Gajim.org oder unter Linux über euren jeweiligen Paketmanager.
Erstellen eines Kontos
Wichtig: Wir wollen so wenig Daten wie möglich von euch zur Registrierung haben, weshalb ihr nichts außer einem Benutzernamen und Passwort benötigt. Deshalb merkt euch eure Daten oder legt sie in einem Passwortmanager ab, denn einen Passwortreset gibt es nur, wenn ihr zweifelsfrei nachweisen könnt, dass es euer Account ist.
…über die Homepage
Über eurem Browser ruft ihr das Registrierungsformular über folgende URL auf https://blog.5222.de/account/.
Hier tragt ihr nun euren Wunsch-Usernamen, sowie eurer Wunsch-Passwort ein und beantwortet das CAPTCHA.
Wenn alles ok ist solltet ihr folgende Nachricht bekommen:
…über den Client
!Derzeit nicht möglich, da In-Band Registration, auf Grund hoher Botaktivität, deaktiviert ist!
Nachdem man Gajim geöffnet hat, geht man auf Ändern -> Konten oder drückt Shift+STRG+A. Hier klickt man nun auf Hinzufügen, woraufhin sich ein neues Fenster öffnet, in welchem man Ich möchte ein neues Konto erstellen wählt:
Im nächsten Fenster gibt man den Server an, welcher in unserem Fall 5222.de ist:
Nun muss man sich für einen Usernamen und ein Passwort entscheiden:
Anschließend bekommt man die Bestätigung das das Konto erfolgreich erstellt wurde:
Nachdem man auf Beenden geklickt hat, kommt eine Passwortabfrage, wo man sein gerade gewähltes Passwort eingibt:
Anschließend kann man direkt seine vCard ausfüllen, wenn man das möchte:
Anmelden mit vorhandenem Account
Nachdem man Gajim geöffnet hat, geht man auf Ändern -> Konten oder drückt Shift+STRG+A. Hier klickt man nun auf Hinzufügen, woraufhin sich ein neues Fenster öffnet, in welchem man Ich habe bereits ein Konto, das ich benutzen möchte wählt:
Im nächsten Fenster wird man aufgefordert die Zugangsdaten für seinen Account einzugeben:
Wenn man seine Daten richtig eingegeben hat, bekommt man als nächstes eine Erfolgsmeldung:
Dieses Fenster kann man mit Beenden schließen und der Account wird sich direkt verbinden oder man wählt Erweitert und setzt noch ein paar Einstellungen.
Plugins
Gajim kann mittels Plugins erweitert werden. Unter diesen befindet sich z.B. auch OMEMO oder http_upload, aber auch noch viele andere nützliche.
OMEMO
Aktivieren
Abhängigkeiten: Seit der Plugin Version 1.2.3 wird Gajim in der Version 0.16.6 oder höher benötigt. Unter Linux müssen vorher noch ein paar Abhängigkeiten installiert werden, welche im Git des Plugin beschrieben sind. Unter Windows kann man das Plugin einfach, wie folgt beschrieben, über den Pluginmanager installieren.
Hinweis: In vielen Distributionen kann das Plugin mittlerweile auch über den Paketmanager installiert werden, welches ihr, wenn ihr die von der Distribution mitgelieferte Gajim Version nutzt, auch verwenden solltet. Dann könnt ihr hier den Abschnitt Aktivieren auch überspringen.
Um das Plugin zu installieren ruft man den Pluginmanager auf. Dies tut man indem man im Hauptfenster auf Ändern -> Plugins klickt. In diesem wählte man dann den Reiter Available und sucht in der Liste nach OMEMO:
Hat man es gefunden, macht man rechts in der Zeile einen Haken bei Install / Upgrade. Anschließend klickt man rechts über Schließen auf Install/Upgrade, wodurch das Plugin installiert wird. Ist das geglückt, kann man nun den Reiter Installiert im Pluginmanager wählen und hier in der Zeile von OMEMO rechts einen Haken bei Active machen. Lässt es sich nicht aktivieren, kann es sein das ihr Gajim einmal neustarten müsst.
Verschlüsselt schreiben
Das Plugin erkennt automatisch ob der Kontakt OMEMO kann und aktiviert die Verschlüsselung automatisch. Ob die Verschlüsselung aktiviert ist kann man an drei Dingen erkennen:
- die Meldung OMEMO encryption enabled im Chatfenster erscheint
- neben eurer Schreibleiste ist ein kleines Schild zu sehen
- bei einem Klick auf den kleinen Clownfisch sollte ein Haken bei Activate OMEMO sein
Hinweis: So wäre es auch möglich OMEMO zu deaktivieren
Wichtig: Das Plugin erkennt automatisch ob ein Client OMEMO unterstützt. Allerdings bei Clients, die gleichzeitig mit mehreren Ressourcen verbunden sind, und nur eine Ressource davon OMEMO unterstützt, würde das Plugin sich dennoch aktivieren. Das kann dazu führen das die andere Chatpartei eine Nachricht verschlüsselt erhält und diese nicht entschlüsseln kann, weil der Client OMEMO nicht unterstützt.
Beim ersten Senden einer Nachricht oder auch wenn der Kontakt ein neues Gerät mit einem dir unbekannten Fingerprint verwendet, erscheint ein Fenster mit den Fingerprints des Kontakts:
Hinweis: An dieser Stelle ist es zu empfehlen, soweit möglich, den/die Fingerprints des Kontakts abzugleichen und diese nicht einfach blind zu akzeptieren.
Um diesen nun zu akzeptieren, klickt man in die Zeile mit dem Fingerprint und anschließend auf Trust/Revoke Fingerprint, wodurch ein weiteres Fenster aufgeht, welches euch fragt ob ihr dem Fingerprint vertrauen wollt:
Wenn man das mit Ja bestätigt wird dem Fingerprint vertraut und dieser erscheint in der Zeile nun auch in Grün:
Dieses Fenster kann gefahrlos geschlossen werden. Zurück im Chatfenster, ist es nun möglich durch erneutes senden, die Nachricht verschlüsselt zu verschicken.
Wichtig: Schreibt ein Kontakt trotz aktivierter OMEMO Verschlüsselung unverschlüsselt, wird vor der Nachricht ein Unencrypted angezeigt.
OMEMO Einstellungen
Um die eigenen Fingerprints anzusehen, oder alle Fingerprints denen vertraut wird, ist die Plugin Einstellung von OMEMO zu nutzen. Diese ist über Ändern -> Plugins zu erreichen. Dort ist im Reiter Installiert das OMEMO welches nach dem markieren rechts unten, auf Konfigurieren konfigurierbar ist.. Hier könnt ihr nun folgendes machen:
- Account Data: Pro Account der Fingerprint (in Text und QR Code) und die Device ID des Clients
- Known Fingerprints: Eine Liste der Fingerprints denen man vertraut oder nicht
- Clear Devices: Die bekannten Device ID’s eures Accounts
- Disable Accounts: Hier kann man OMEMO für einen gesamten Account deaktivieren
http_upload
Mit diesem Plugin kann man man Dateien via http_upload teilen.
Aktivieren
Um das Plugin zu installieren, ruft man den Pluginmanager auf. Dies tut man indem man im Hauptfenster auf Ändern -> Plugins klickt. In diesem wählte man dann den Reiter Available und sucht in der Liste nach HttpUpload:
Hat man es gefunden, macht man rechts in der Zeile einen Haken bei Install / Upgrade. Anschließend klickt man rechts über Schließen auf Install/Upgrade, wodurch das Plugin installiert wird. Ist das geglückt, kann man nun den Reiter Installiert im Pluginmanager wählen und hier in der Zeile von HttpUpload rechts einen Haken bei Active machen.
Im Chat
Ein erneutes öffnen eines Chatfensters zeigt zwei neue Symbole unter der Eingabezeile:
ermöglicht den Versand von Dateien aller Art per http_upload ermöglicht den Versand von Bildern per http_upload
Hinweis: Hat man OMEMO aktiviert, werden die Uploads verschlüsselt, allerdings ausschließlich der Dateiinhalt nicht so der Dateinamen.
Ein von Gajim gesendetes Bild, welches mittels Url Image Preview als Thumbnail angezeigt wird und als zweites eine URL, die zum einem PDF führt, welche mit dem Kontakt geteilt wurde.
Hinweis: Dateien, die mittels unverschlüsseltem http_upload geteilt werden, von jedem abgerufen werden können, der die die URL kennt. Deshalb nutzt auf jeden Fall OMEMO, damit wird die Dateien beim hochladen verschlüsselt oder nutzt das Filesharing per Peer2Peer Verbindung bzw. einen Proxy.
Hinweis: Normalerweise läuft das Filesharing über eine Client-zu-Client Verbindung, also einer Direktverbindung zwischen den Chatpartner ab. Sitzt der Kontakt nun aber hinter einer Firewall oder NAT, wird der Aufbau einer Direktverbindung oft nicht funktionieren. Deshalb sendet der sendende Client noch eine Proxyadresse als Alternative mit, über welche der Austausch stattfinden kann. Kann der Empfänger nun keine Direktverbindung aufbauen, versucht er es über den Proxy. In Gajim sind für diesen Fall als default drei Adressen eingetragen, bei welchen allerdings viel Glück dazu gehört, das diese funktionieren, was zu langen Wartezeiten, Abbrüchen und Frustration führt. Unserer Server stellt einen eigenen Proxy für die Benutzer zur Verfügung. Dazu müsst ihr auch nichts weiter konfigurieren, da der Client automatisch den Proxy erkennt und als Default wählt. Der Button für den Filetransfer ist im folgenden Bild markiert:
Url image preview
Url image preview zeigt verlinkte Bilder direkt im Chatverlauf an. Per OMEMO verschlüsselte und http_upload geteilte Bilder werden entschlüsselt und anschließend im Chatverlauf angezeigt.
Aktivieren
Um das Plugin zu installieren ruft man den Pluginmanager auf. Dies tut man indem man im Hauptfenster auf Ändern -> Plugins klickt. In diesem wählte man dann den Reiter Available und sucht in der Liste nach Url image preview:
Hat man es gefunden, macht man rechts in der Zeile einen Haken bei Install / Upgrade. Anschließend klickt man rechts über Schließen auf Install/Upgrade, wodurch das Plugin installiert wird. Ist das geglückt, kann man nun den Reiter Installiert im Pluginmanager wählen und hier in der Zeile von Url image preview rechts einen Haken bei Active machen.
Im Chat
Wenn man nun ein Bild per http_upload bekommt, wird das Bild direkt als Thumbnail im Chatfenster angezeigt. Klickt man auf dieses wird das Bild im lokalen Bilderbetrachter geöffnet.