Jabber

Jabber ist ein freies Chatsystem (auch Instant-Messenging-System genannt), das hier kurz und für Nicht-ITler verständlich erklärt werden soll. Dieser Artikel soll helfen, den Umstieg auf Jabber – oder die Einrichtung eines solchen Kontos zumindest – zu erleichtern.

Wenn du nur schnell herausfinden willst, wie du ein Jabber-Konto bekommst und einen Jabber-Client installierst, klicke hier für eine kleine Übersicht oder springe direkt zur Vorgehenweise mit Kopete, Pidgin oder Adium.

Grundlegende „Computerkenntnisse“ – ja, wie nichtssagend doch dieses Wort ist – werden hierbei jedoch vorausgesetzt. Es sollte also klar sein, was beispielsweise ein Server, Client oder Protokoll ist, was sie voneinander unterscheidet und was sie verbindet. Wenn hierbei Schwierigkeiten auftreten, lohnt es sich den Abschnitt zum Thema Client-Server-Prinzip in Wikipedia durchzulesen. Hier eine ganz kurze Erläuterung dieser Begriffe:

Server
Ein Server (Anbieter) ist ein Programm, welches einen bestimmten Dienst zur Verfügung stellt. Aus der realen Welt kennt man den Bäcker, der Brezeln verkauft.
Client
Ein Client (Kunde) ist ein Programm, das den vom Server angebotenen Dienst nutzt. Im Vergleich mit der Welt draußen wäre dies also der Kunde, der eine Brezel erwerben möchte.
Protokoll
Ein Protokoll stellt die Kommunikationsregeln dar, wie sich sich Server und Clients untereinander verständigen können und was die ausgetauschten Daten bedeuten. Analog hierzu wäre die deutsche Sprache, zu verstehen: „Guten Tag.“ – „Hallo, was darf's denn sein?“ – „Ich möchte drei Brezeln, bitte.“ – „Sehr gern, bitte sehr.“ – „Vielen Dank, ade.“ – „Tschüss!“

Inhaltsverzeichnis

  1. Warum gerade Jabber?
    1. Freie Software
    2. Dezentrale Organisation
    3. Datenschutz
    4. Offline-Nachrichten
    5. Mehr-Personen-Unterhaltung
    6. Einfache Benutzernamen
    7. Gleichzeitige Verfügbarkeit von mehreren Instanzen
    8. Kommunikation mit anderen Systemen
    9. Erweiterbarkeit
  2. Einrichtung eines Jabber-Kontos
    1. Wahl des Jabber-Servers
      1. IsoBeef-Jabber-Server
    2. Wahl des Jabber-Clients
      1. GNU/Linux-Clients
      2. Mac OS-Clients
      3. Windows-Clients
      4. Kopete
      5. Pidgin
      6. Adium
  3. Weitere Informationen

Warum gerade Jabber?

Es gibt so viele Chatsysteme, wieso dann Jabber wählen, wo liegen hierin die Vorteile, was ist an Jabber besser als an „herkömmlichen“ Instant-Messengern? Dafür gibt es einige Gründe, die – aus meiner Sicht – wichtigsten sollen kurz erläutert werden.

Freie Software

Im Gegensatz zu herkömmlichen Chatsystemen wie etwa ICQ, AIM oder MSN ist Jabber ein freies Instant-Messenging-System. Das bedeutet, dass jeder sich selbst einen Client schreiben kann, da alle dafür benötigten Informationen frei verfügbar sind. Dies ist bei proprietären Systemen nicht der Fall; hier muss aufwändig analysiert werden, was genau „unter der Haube passiert“, wenn sich zwei Personen unterhalten.

Daraus ergeben sich einige interessante Dinge:

  1. Jeder kann Jabber verwenden.
  2. Protokolländerungen führen nicht zu erneutem riesigen Entwicklungsaufwand der Clients.
  3. Für fast alle Plattformen gibt es unzählige Clients; in der Regel sogar ebenfalls als freie Software und ohne Werbung.
  4. Jeder kann einen eigenen Jabberserver betreiben.

Dezentrale Organisation

Jabber ist dezentral organisiert, d.h. es gibt eine Vielzahl an Servern, nicht einen einzigen. Dies hat zwei große Vorteile, die ich erläutern möchte:

  1. Fällt ein Server aus, betrifft dies ausschließlich Benutzer, die eine Jabber-ID auf diesem Server besitzen. Lediglich diese sind offline, alle anderen sind hiervon nicht betroffen und bekommen davon meistens nicht einmal etwas mit – es sei denn eine laufende Unterhaltung wird hierdurch unterbrochen, was aber natürlich bei allen Chatsystemen der Fall ist.

  2. Vertraut man einem Server(-Betreiber) nicht, kann man einfach zu einem anderen wechseln. Das Prinzip „Misstraue Autoritäten – Fördere Dezentralisierung“ wird hierbei optimal umgesetzt. Die Gefahr eine Generalüberwachung einzuführen oder weiter auszubauen wird hierdurch erschwert.

Datenschutz

Im Gegensatz zu ICQ, MSN & Co. werden bei den allermeisten Jabber-Servern keinerlei Rechte an die Serveranbieter abgetreten. Die recht genaue Analyse über die ICQ-Nutzungsbedingungen kann ich allen nur sehr empfehlen zu lesen. Da läuft es einem eiskalt den Rücken hinunter.

Wir von IsoBeef speichern keinerlei Nachrichten (außer den Offline-Nachrichten) und treiben auch keinen Unsinn mit unseren Benutzern. Die Rechte an übertragenen Informationen wie Nachrichten und Dateien bleiben selbstverständlich bei den jeweiligen Nutzern!

Offline-Nachrichten

Jabber unterstützt, je nach Serverkonfiguration, einen Offline-Nachrichten-Versand. Dies bedeutet, dass auch Nachrichten an Personen gesendet werden können, die zur Zeit nicht online sind. Der Server speichert diese dann bei sich. Sobald die entsprechenden Leute sich wieder mit dem Jabberserver verbinden, werden ihnen die Nachrichen zugestellt. Fast alle Server haben diese Funktion aktiviert.

Früher war dies bspw. unter MSN gar nicht möglich. Bis vor kurzem machte dies aber noch unter alternativen Clients Probleme. Da ich MSN nicht mehr verwende, kann ich über den aktuellen Stand nichts berichten.

Mehr-Personen-Unterhaltung

Normal schreiben sich immer genau zwei Leute. Um sich mit mehreren Personen zugleich zu unterhalten, bietet Jabber einen Multi-User-Chat (MUC) an. Dies ist für größere Konferenzen gut geeignet und ähnlich zum IRC, in dem man verschiedenen Kanäle betreten kann und alle Nachrichten empfängt, die dort gesendet werden. Je nach Servereinstellungen kann in der Regel auch jeder Benutzer einen neuen Raum eröffnen und diesen ggf. mit einem Passwort versehen, sodass nur ausgewählte Personen, die das Kennwort kennen, lesen und schreiben können.

Einfache Benutzernamen

Eine Jabber-ID ist eine einfach zu merkende Kennung, die E-Mail-Adressen ähnelt: BENUTZER@SERVER/RESSOURCE ist das Schema. BENUTZER kann dann z.B. peter.hansen sein, der Server isobeef.org und die Ressource Flensburg. Da man – im Gegensatz zu ICQ & Co. – von mehreren Rechnern aus gleichzeitig im selben Account online sein kann, verwendet man die RESSOURCEn als Unterscheidung. Diese haben dann Prioritäten, sodass man – wenn man nichts genaues spezifiziert – immer im richtigen Endgerät rauskommt; das Notebook ist bspw. dem Desktoprechner bevorzugt.

Jabber-IDs (peter.hansen@isobeef.org) lassen sich im Gegensatz zu ICQ-Nummern (343851617) sehr leicht merken.

Gleichzeitige Verfügbarkeit von mehreren Instanzen

Wie im vorigen Abschnitt schon angeschnitten, ist es bei Jabber möglich, von mehreren Instanzen aus mit der gleichen Jabber-ID online zu sein, ohne dass eine andere Verbindung geschlossen wird, wie es z.B. bei ICQ der Fall ist.

Gerade Leute, die viel unterwegs sind und über einige Geräte zum Empfang und Versand von Nachrichten verfügen, profitieren davon enorm. So kann zu Hause auf dem Desktoprechner ein Jabber-Client laufen, unterwegs am Notebook ein anderer und auf dem Handy ein dritter. Die unterschiedlichen Instanzen werden durch die sogenannten Ressourcen gekennzeichnet, welche verschiedene Prioritäten zugeordnet bekommen, sodass bspw. Nachrichten immer automatisch an das Notebook gesendet werden, wenn dieses gleichzeitig wie der Desktoprechner online ist.

Kommunikation mit anderen Systemen

Über sogenannte Transports kann von Jabber aus mit anderen Systemen, wie ICQ oder MSN, kommuniziert werden, ohne dass dafür ein Konto des anderen Systems benötigt wird.

IsoBeef bietet beispielsweise einen öffentlichen ICQ-Transport an, der auch Benutzern anderer Jabber-Server zur Verfügung steht. Hiermit ist es ohne ein eigenes ICQ-Konto möglich, mit Personen zu chatten, die bei ICQ registiert sind. Für beide Beteiligten sieht das dann so aus, als verwende der jeweils andere das eigene System.

Allerdings wird hierbei wieder das Netzwerk des anderen Systems genutzt, sodass alle datenschutzkritischen Punkte von oben nicht mehr gelten. Zudem werden Transports auch nur von sehr wenigen Servern angeboten.

Erweiterbarkeit

Jabber basiert auf dem Protokoll XMPP, welches von jedermann erweiterbar ist. So lässt sich bspw. folgendes tolles Szenario vorstellen:

Wir besitzen eine Kaffeemaschine, die an einen Computer angeschlossen ist und sich über diesen steuern lässt. Nun erweitern wir XMPP so, dass wir vom Geschäft aus eine spezielle Nachricht an den Rechner zu Hause senden können und dieser daraufhin die Kaffeemaschine in Betrieb nimmt. Wenn wir also daheim eintreffen, erwartet uns ein fertiger Kaffee.

Einrichtung eines Jabber-Kontos

Nun sind die Vorteile des XMPP-Systens klar, woher bekommt man nun also ein solches Benutzerkonto? Dazu müssen zuerst folgene Fragen geklärt werden:

  1. Wie wir vorhin schon gesehen haben, ist das Jabber-System ein verteiltes Netzwerk. Daher stellt sich die Frage, welcher Server verwendet werden soll.

  2. Um dieses System ordentlich verwenden zu können, wird noch ein Programm benötigt, das mit Jabber umgehen kann. Diese sogenannten Clients gibt es wie Sand am Meer. Welchen Client soll man nun verwenden?

Eine weitere Besonderheit habe ich bisher nur bei Jabber festgestellt: Die Registrierung der Jabber-ID erfolgt ganz bequem direkt aus dem Client heraus. Man muss nicht auf irgendwelchen völlig überladenen Websites ein unübersichtliches Registrierungsformular heraussuchen, sondern legt die Jabber-ID komfortabel und schnell mit seinem Client an.

Wahl des Jabber-Servers

Wer keinen bestimmten Jabber-Server bevorzugt, hat freie Wahl und kann sich aus dieser unvollständigen Liste einen aussuchen, oder einfach isobeef.org verwenden.

IsoBeef-Jabber-Server

Wir von IsoBeef betreiben auch einen eigenen Jabber-Server. Dieser ist öffentlich, sodass sich hier jedermann registrieren kann. Im englischsprachigen IsoBeef-Wiki gibt es alle Informationen darüber. Die wichtigsten Daten habe ich hier noch einmal zusammengestellt:

Servername
isobeef.org
Ports
5222 (Keine Verschlüsselung, automatisch TLS)
5223 (SSL)
Transports
ICQ (icq.isobeef.org:5555)

Wahl des Jabber-Clients

Wie schon mehrfach erwähnt, gibt es unzählige Programme, die das Jabber-Protokoll XMPP sprechen. Die Auswahl wird ein bisschen kleiner, wenn man weiß, auf welchem System der Client laufen soll.

GNU/Linux-Clients

Für GNU/Linux empfehle ich Kopete oder Pidgin. Kopete ist eine KDE-Anwendung und integriert sich perfekt ins bestehende System, wie man es eben von KDE-Programmen gewohnt ist. Die Kontakte können mit dem globalen Adressbuch verknüpft werden und KMail zeigt in den E-Mail-Headern auch gleich an, ob besagter Absender momentan online ist. Wer GNOME einsetzt, wird vermutlich das Gtk-Programm Pidgin verwenden wollen, welches früher Gaim hieß. Der Vorteil von Pidgin ist der, dass dieser auch als Windows-Version erhältlich ist. Wer also beide Betriebssysteme verwendet, muss sich nicht erst umgewöhnen. Sowohl Kopete als auch Pidgin unterstützen neben Jabber auch noch andere Instant-Messenging-Protokolle wie ICQ, AIM oder MSN.

Mac OS-Clients

Mac OS-Benutzer können Adium verwenden, der ähnlich wie Pidgin ist. iChat unterstützt Jabber ebenfalls und ist bereits standardmäßig auf einem Mac zu finden. Allerdings habe ich mir sagen lassen, dass dies nur bedingt geeignet sei.

Windows-Clients

Für Benutzer des Fähnchenbetriebsystems empfehle ich Pidgin, der auch auf ordentlichen Systemen einsetzbar ist.

Kopete

Kopete lässt sich unter GNU/Linux-Distributionen mittels des Paketmanagers der Wahl installieren. Unter debianoiden Distributionen wie etwa Debian, (K)Ubuntu oder Knoppix kann dies z.B. mit aptitude install kopete als root erreicht werden. Es ist jedoch auch möglich, sich aus den Quellen die Software selbst zu kompilieren, die hierzu erforderlichen Informationen finden sich auf der Kopete-Website kopete.kde.org wieder.

Um sich in Kopete eine Jabber-ID einzurichten, geht man folgendermaßen vor:

  1. Im Hauptmenü „Einstellungen“ → „Einrichten...“ wählen.

  2. In Kopetes Einrichtungsfenster wählt man auf der ersten Seite „Zugänge“ rechts den Knopf „Zugang hinzufügen...“

  3. Aus der Protokollauswahlliste „Jabber – XMPP, Jabber, Google Talk“ auswählen. Danach auf „Weiter“ klicken.

  4. Auf der Registerseite „Grundeinstellungen“ im Kasten „Zugangsinformationen“ die gewünschte Jabber-ID und das Passwort festlegen.

    Die Jabber-ID besteht aus BENUTZER@SERVER, wobei der BENUTZER frei gewählt werden kann, in dem Beispiel unten heißt er peter.hansen. Der SERVER ist der ausgewählte Jabber-Server, hier also isobeef.org.

    Das Passwort ist ebenso beliebig zu wählen, wobei jedoch aus Sicherheitsgründen zu beachten ist, dass ein starkes Passwort verwendet wird. Um dieses eingeben zu können, muss das Kontrollfeld „Passwort merken“ angekreuzt werden. Anschließend „Weiter“ wählen.

  5. Im Reiter „Verbindung“ in den „Verbindungseinstellungen“ die Einstellung „Protokollverschlüsselung verwenden (SSL)“ aktivieren, sodass niemand das Passwort oder die gesendeten und empfangenen Nachrichten zwischen dem Server und dem Client abfangen und mitlesen kann. Die Option „Authentifizierung mit Klartextpasswort zulassen“ sicherheitshalber ausschalten.

    In die „Ressource“ bei den „Standorteinstellungen“ eine Bezeichnung der aktuellen Örtlichkeit o.ä. eintragen, die den aktuellen Aufenthalt, das verwendete Gerät usw. beschreibt. Diese Kennung ist wichtig, um verschiedene Geräte zu unterscheiden, wenn man von mehreren Clients aus online ist. Im Beispiel habe ich hier Flensburg gewählt, da der Desktoprechner, den wir betrachten, in Flensburg steht. Für ein mobiles Gerät könnte man bspw. Notebook oder Handy wählen. Die „Priorität“ wird für das automatische Aussuchen einer Ressource genutzt, wenn der Empfänger in mehreren Instanzen online ist. Je höher die Priorität ist, desto bevorzugter ist dieser Client. Spezifiziert der Absender nicht explizit eine andere Ressource, so wird die Nachricht an den Client mit der höchsten Priorität gesendet. Wird nur ein einziger Client (z.B. der Desktoprechner) genutzt, sind die Einstellungen hier im Prinzip egal.

  6. Im Reisterreiter „Privatsphäre“ im Kasten „Allgemeine Privatsphäre“ die Option „System- und Clientinformationen ausblenden“ aktivieren, sodass niemand sieht, welchen Client und welches System man einsetzt.

    Bei den „Benachrichtigungen“ nur die Unterpunkte “Zustellungs-Benachrichtigungen immer senden“ und „Immer Schreibe-Benachrichtigungen senden“ aktivieren, die anderen beiden Punkte ausschalten.

  7. Anschließend zurück auf die erste Registerkarte „Grundeinstellungen“ wechseln. Unter „Registrierung“ auf den Knopf „Neuen Zugang registrieren klicken.“

  8. In dem Registrierungsfenster das Passwort ein weiteres Mal in das Feld „Passwort wiederholen“ eingeben, um Tippfehler auszuschließen. Stimmen beide Passwörter überein, wird der „Registrieren“-Knopf freigeschalten, diesen dann drücken.

    Schließt sich das Fenster ohne eine Fehlermeldung anzuzeigen, war der Vorgang erfolgreich, die gewünschte Jabber-ID wurde angelegt. Dann im zurückgekehrten Fenster auf „Weiter“ klicken.

  9. Auf der letzten Seite kann eine spezielle Farbe für den Zugang festgelegt werden. In dieser Farbe wird dann die Jabber-Glühbirne angezeigt.

  10. Wurde im vorigen Dialog „Jetzt verbinden“ ausgewählt, so wird nun eine Verbindung zum gewählten Jabber-Server aufgebaut. In der Zugangsübersicht ist nun ein (weiterer) Zugang zu sehen – die gerade angelegte Jabber-ID. Das Einstellungsfenster mit „OK“ schließen.

In nicht einmal drei Minuten ist das in Kopete erledigt. Herzlichen Glückwunsch zur angelegten Jabber-ID!

Pidgin (ehemals Gaim)

Um in Pidgin (pidgin.im), der ehemals Gaim hieß, eine Jabber-ID anzulegen, geht man wie folgt vor:

  1. Im Hauptfenster auf „Accounts“ → „Manage Accounts...“ auswählen.

  2. Im Kontenverwaltungsfenster unten auf „Add...“ klicken.

  3. Auf der Seite „Basic“ bei den „Login Options“ als Protokoll „XMPP“ auswählen. Den Benutzernamen, den Server und die Ressource sowie das Passwort setzen.

    Anschließend das unterste Kontrollfeld „Create this new account on the server“ aktivieren.

  4. In der Registerkarte „Advanced“ die Option „Require SSL/TLS“ aktivieren. Die anderen beiden „Force old SSL“ und „Allow plaintext auth over unencrypted streams“ deaktivieren.

    Als Verbindiungsport „5222“ und als Verbindungsserver „isobeef.org“ oder den jeweiligen Jabberserver eintragen. Für den Dateiübertragungsproxy empfiehlt sich „proxy.eu.jabber.org“.

    Danach auf die Schaltfläche „Add“ drücken.

  5. In dem aufgehenden Sicherheitsnachfragedialog auf „Registrieren“ drücken.

  6. Wenn die Jabber-ID auf dem Server erfolgreich angelegt wurde, erhält man eine Bestätigungsnachricht. Einfach auf „Schließen“ klicken.

  7. Anschließend im Kontoverwaltungsfenster mit dem neuen Jabberkonto noch online gehen. Dazu den Haken davor setzen.

Vielen Dank an Sebastian Gepperth für diese Anleitung!

Adium

Um unter Adium (adium.im) eine Jabber-ID zu registrieren, geht man wie folgt vor:

  1. In der Menüzeile „Adium“ → „Einstellungen…“ aufrufen.

  2. Anzeige aller existierenden Accounts

  3. Auswahl von Jabber im Menu 'Account hinzufügen'

  4. Zugangsdaten eintragen

  5. Server auswählen

  6. Daten kontrollieren

  7. Account wurde erfolgreich angelegt

Vielen Dank an Tobias Birmili von CodingCorsairs für diese Anleitung!

Weitere Informationen


Creative Commons License „Jabber“ von Julian Trischler steht unter einer Creative Commons Namensnennung-Keine kommerzielle Nutzung-Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz. — Letzte Änderung 25. November 2010 9. November 2010 2. Mai 2010 29. April 2010 28. April 2010 2. März 2010 28. Februar 2010 2. Oktober 2009 22. Februar 2009 7. Mai 2008 — Vielen Dank an Tobias Birmili für die Bereitstellung der Adium-Anleitung sowie das Unterbreiten vieler guter Verbesserungsvorschläge und Sebastian Gepperth für die Bereitstellung der Pidgin-Anleitung! — Dieser Artikel kann auch mittels git clone https://git.isobeef.org/jabber.git bezogen werden.