Editorial

Wenngleich sich jede große Instant-Messaging-Plattform damit brüstet, dem Benutzer die neusten und besten Features kostenlos und aus reiner Nächstenliebe zur Verfügung zu stellen, unterscheiden sich AOL, Microsoft und Yahoo! im Grunde genommen kaum voneinander. Jeder Konzern setzt auf Zentralität, Proprietät und Kommerz; auf eigene, plattformgebundene, untereinander inkompatible und werbebehaftete Clients, durch die der Benutzer auf eigene oder andere Bezahldienste aufmerksam gemacht und stärker an ein Produkt gebunden werden soll.

Top

Grundlagen

Was ist Jabber?

Im Gegensatz zu seinen Pendants AIM, ICQ, WLM (früher MSNM), Yahoo! Messenger, und Konsorten ist Jabber eine Ansammlung quelloffener, auf XML basierender Netzwerkprotokolle, die vordergründig beim Instant Messaging zum Einsatz kommen. Im Oktober 2004 wurden Teile des Jabber-Protokolls als Internetstandard im Bereich Instant Messaging anerkannt (s. RFCs).
Der Grundgedanke hinter dem Projekt war und ist, dass die Technologie, überall Informationen mit Leuten rund um den Globus in Echtzeit auszutauschen, frei und ohne jegliche Kontrolle stattfinden soll; das Protokoll für jedermann offen und uneingeschränkt verfügbar ist.

Top

Was spricht für Jabber?

  • Niemand kontrolliert Jabber, es basiert auf offener Zusammenarbeit und Standards.
  • Es gibt nicht nur einen (offiziellen) Client. Man kann sich den aussuchen, der einem am besten gefällt.
  • Beim Registrieren eines Accounts sind keinerlei Angabe persönlicher Daten nötig, nicht einmal eine E-Mail-Adresse wird abgefragt. Lediglich der gewünschte Benutzername und das Passwort.
  • Man kann auch mit mehreren Clients gleichzeitig online sein.
  • Es sind auch sehr lange Nachrichten möglich, die bei vielen anderen IM-Diensten aufgeteilt werden müssten.
  • Es sind Chats mit mehreren Teilnehmern sind möglich.
  • Bei vielen Anbietern ist es möglich, eine einzige Adresse für E-Mail und Jabber zu benutzen.
  • Es ist möglich, die eigene Domain mit einem fremden Jabber-Server zu benutzen. Vorausgesetzt der Server unterstützt diese funktion.
  • ...

Top

Was spricht gegen die anderen IM?

  • Die AGB der führenden IM-Dienste sind so ausgelegt, dass man bei Benutzung sämtliche Rechte der gesendeten Daten abtritt und dem Netzbetreiber erlaubt, diese Daten nach eigenem Ermessen - auch kommerziell - zu verwenden. (Weitere Informationen dazu hier)
  • Beim Registrieren eines Accounts, werden jede menge unnötige persönliche Daten erfasst.
  • Weder die Clients noch die Protokolle sind quelloffen.
  • Die große IM-Plattformen werden von dem dahinterstehenden Unternehmen kontrolliert und teilweise auch zensiert.
  • In den Clients wird Werbung angezeigt.
  • Es gibt i.d.R. nur einen (offiziellen) Client.
  • ...

Top

Was brauche ich, um Jabber benutzen zu können?

Um Jabber benutzen zu können, wird lediglich ein Internetfähiges Endgerät mit einem Jabber-Client benötigt. Desweiteren benötigen sie eine JID auf einem der unzähligen, i.d.R. kostenlosen Jabber-Server.

Top

Wie ist das Jabber-Netzwerk organisiert?

Das öffentliche Jabber-Netzwerk ist dezentral organisiert und besteht mittlerweile aus dutzenden unabhängigen Servern, die in der Regel untereinander so vernetzt sind, dass es für den Benutzer keine Rolle spielt, ob er oder sein Gesprächspartner sich nun auf dem selben oder einem anderen Server befindet.

Top

Welche besonderen Merkmale hat Jabber?

JID, Ressource und Prioritäten

Ähnlich wie bei anderen Instant-Messaging-Plattformen, hat auch jeder Jabber-Benutzer eine Kennung, mit der er im gesamten Netzwerk für andere Benutzer erreichbar ist. Diese Kennung nennt sich "Jabber Identifier" (kurz: JID; auch Jabber-ID).
Jabber Identifier Schema Dieser setzt sich aus dem Benutzernamen (node), einem "@" und der Domain des Servers zusammen, auf dem der Benutzername registriert ist. Optional kann noch, durch ein "/" von der Domain getrennt, eine sogenannte Ressource folgen. Die Angabe einer Ressource, dient entweder zur Angaben des verwendeten Client oder dem momentanen Aufenthaltsort.

Da es mit Jabber auch möglich ist, von mehreren Computern aus gleichzeitig auf einen Account zuzugreifen, ist mit der Ressource-Angabe auch ein Prioritäten-System verknüpft. Dieses macht es möglich, anzugeben, an welchen Computer eine Nachricht geschickt werden soll. Der gültige Bereich des Prioritätswerts geht von -128 bis +127, wobei Clients, die eine negative Priorität zugewiesen bekommen haben, nur Nachrichten empfangen, die explizit über die Ressource-Kennung an sie adressiert sind.

Anhand eines Beispiels lässt sich dieses Verfahren wohl am besten erläutern: Ein Benutzer ist über zwei Computer mit seinem JID node@domain/ressource bzw. dem Server verbunden. Nun sollen alle ankommenden Nachrichten an den Client weitergeleitet werden, den der Benutzer auf der Arbeit verwendet. Dazu muss diesem lediglich eine höhere Priorität zugewiesen werden als dem anderen Client, der beispielsweise zuhause läuft:

node@domain/home (Priorität: 2)
node@domain/work (Priorität: 5)

Top

Transports

Eine weitere Besonderheit an Jabber sind die sogenannten Transports. Diese Erweiterung ist auf dem Großteil der öffentlichen Server zu finden und dient dazu, dem Benutzer die Einwahl in andere Netzwerke wie ICQ, MSN oder IRC zu ermöglichen.
Voraussetzung für die Nutzung dieses Dienstes ist ein vorher registrierter Account des jeweiligen Netzwerks sowie ein Client, der dieses Feature unterstützt. Sofern beide Bedingungen erfüllt sind, muss der Transport über den Client registriert werden, um sich für den Benutzer in ein anderes Netzwerk einzuwählen. Hierzu müssen dem Transport entsprechende Login-Daten mitgeteilt werden; bei ICQ wären dies beispielsweise die UIN und das Login-Passwort. Danach ist der Benutzer in der Lage, über den Transport auch mit Personen anderer Netzwerke zu kommunizieren.

Top

Multi-User Chat

Der MUC ist der Nachfolger des Groupchats und der Conference und macht es möglich, dem IRC ähnliche Chat-Räume auf einem Jabber-Server zu erstellen. Dadurch ist es möglich, sich mit mehreren Leute gleichzeitig zu unterhalten.
Ein umfangreicher Artikel hierzu ist bei Wikipedia zu finden.

Top

Sicherheit

An dieser Stelle werden in Kürze Informationen zur Sicherheit von Jabber ergänzt.

Top

Verbindungen

Alle in den folgenden Abschnitten beschriebenen Verbindungen können unverschlüsselt oder verschlüsselt stattfinden. Sobald Informationen unverschlüsselt, d.h. im Klartext, über das Internet versendet werden, sind diese prinzipiell abhör- und manipulierbar. Sofern die Möglichkeit besteht, ist es daher ratsam, auf eine Verschlüsselung zurückzugreifen.

Top

Client-to-Client

Abgesehen vom Dateitransfer kommt eine direkte Verbindung der beiden Klientinstanzen bei Jabber nicht zustande, da der Nachrichtenaustausch, wie im voherigen Abschnitt bereits erwähnt, über mind. einen Server stattfindet. Es wäre jedoch trotzdem ratsam, wenn die Gesprächspartner ihre Nachrichten mit OpenPGP oder OTR verschlüsseln würden (s. Sicherheit), da es einerseits schwierig ist, festzustellen, ob die Verbindung Server-to-Server mit SSL oder TLS abgesichert ist und andererseits wären trotz vorhandener Verschlüsselung mittels eines der beiden Protokolle immer noch Serveradministratoren oder Personen, die sich unbefugten Zugriff zu einem Server verschafft haben, in der Lage, den Nachrichtenverkehr abzuhören und zu manipulieren.

Top

Client-to-Server

Bei der Kommunikation zwischen der Klient- und der Serverinstanz werden nicht nur sensible Benutzerdaten wie der JID und das dazugehörige Passwort übertragen, sondern auch sämtliche Nachrichten, die die Gesprächspartner untereinander austauschen:

Client 1 <--> Server von Client 1 & 2 <--> Client2

Befinden sich die Gesprächspartner auf zwei unterschiedlichen Servern, wird eine Nachricht zuerst an den Server des Senders weitergeleitet und von dort aus an den Server des Empfängers, welcher die Nachricht dann an den Client des Empfängers sendet:

Client 1 <--> Server von Client 1 <--> Server von Client 2 <--> Client 2

Eine unverschlüsselte Verbindung zwischen Client und Server läuft standardmäßig über über den Port 5222 (TCP) ab. Verschlüsselte Verbindungen werden mittlerweile mittels TLS über den selben Port abgewickelt.
Bevor XMPP Teil des Jabber-Protokolls wurde, wurden Verbindungen noch via SSL über Port 5223 (TCP) verschlüsselt. Diese Methode ist auch heute noch häufig aus abwärtskompatiblen Gründen verfügbar.

Top

Server-to-Server

Jabber-Server kommunizieren untereinander unverschlüsselt standardmäßig über den Port 5269 (TCP). Genau wie bei der Verbindung zwischen der Klient- und der Serverinstanz, kann eine verschlüsselte Verbindung über zwei Möglichkeit zustande kommen: via SSL und Port 5270 (TCP) oder via TLS und Port 5269 (TCP).

Top

Dateitransfer

Selbstverständlich bietet auch Jabber die Möglichkeit, Dateien mit anderen Benutzern auszutauschen. Hierzu kann ein beliebiger freier Port verwendet werden.
Neben dem P2P-Prinzip ist der Datentransfer auch über einen Proxy-Server möglich, sofern dieser vom Serverbetreiber freundlicherweise bereitgestellt wird. Hierbei wird eine Datei nicht direkt zwischen zwei Clients ausgetauscht, sondern vorher noch über eine weitere Station - den Proxy-Server - gesendet.
Macht der Benutzer von der NAT-Technik Gebrauch, muss dem Jabber-Client zusätzlich die externe, also vom Provider zugewiesene, IP-Adresse mitgeteilt werden, damit ein Datenaustausch stattfinden kann. Sofern man über eine variable IP-Adresse verfügt, bietet sich hier der Einsatz eines DynDNS-Eintrags an.

Top

Weblinks

Allgemein

Top

Jabber-Clients

Top

Jabber-Server

Top

RFCs

RFCs beschreiben Quasi-Standards oder "Best Practices" (derzeit beste Vorgehensweisen), die das Internet betreffen. XMPP, der Kern von Jabber, ist in folgenden RFCs festgehalten:

  • RFC 3920: Extensible Messaging and Presence Protocol (XMPP): Core
  • RFC 3921: Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence
  • RFC 3922: Mapping the Extensible Messaging and Presence Protocol (XMPP) to Common Presence and Instant Messaging (CPIM)
  • RFC 3923: End-to-EndSigning and Object Encryption for the Extensible Messaging and Presence Protocol (XMPP)

Top