seeseekey.net - Invictus Deus Ex Machina

Einen rei­nen Jabber-Client für iOS zu fin­den ist schwie­rig. Noch schwie­ri­ger ist es wenn die­ser auch noch OTR ent­hal­ten soll. ChatSecure bie­tet lei­der nur kurze Pus­h­zei­ten an, so das man nach 10-Minuten Inak­ti­vi­tät keine Nach­rich­ten mehr bekommt. Mit IM+ sind auch län­gere Inak­ti­vi­tä­ten mög­lich. Dabei han­delt es sich aller­dings um einen Mul­ti­Mes­sen­ger für die unter­schied­lichs­ten Systeme.

IM+ Instant Messenger
Preis: Kos­ten­los

Neben der Anbin­dung der Mes­sen­ger unter­sützt IM+ auch das soge­nannte Off-the-Record-Messaging kurz OTR. Damit kön­nen sich zwei Teil­neh­mer ver­schlüs­selt aus­tau­schen. Es ist das digi­tale Äqui­va­lent zum 4-Augen Gespräch.

Wenn man IM+ für XMPP-Verbindungen nutzt, sollte man sich bewusst sein, das nicht das Gerät eine Ver­bin­dung mit dem Jab­ber­ser­ver auf­baut, son­dern hier noch eine Sta­tion hin­zu­kommt. Der IM+ Cli­ent ver­bin­det sich mit einem Ser­ver in Kanada und die­ser ver­bin­det sich mit dem Jab­ber­ser­ver. Aus Sicht des Jab­ber­ser­vers sieht der Cli­ent so aus:

IM+ (tls://184.107.68.165:23474#ejabberd@service)

Wahr­schein­lich wird das ganze für die Abwick­lung der unter­schied­li­chen Pro­to­kolle sowie für die Push­be­nach­rich­ti­gun­gen benö­tigt. Wer hier also ohne OTR chat­tet, sollte sich nicht wundern.

Wenn man einen XMPP-Server unter einer Sub­do­main wie „xmpp.example.org“ betreibt, so sehen die Kon­takte dem­ent­spre­chend aus — in die­sem Fall „kontakt@xmpp.example.org“. Möchte man Kon­takte nach dem Schema „kontakt@example.org“ anle­gen, so muss der DNS Ein­trag der Haupt­do­main auf den XMPP-Server zei­gen. Dies ist aber nicht immer mög­lich. So kann es vor­kom­men das der Web­ser­ver auf der Haupt­do­main sei­nen Dienst verich­tet, wäh­rend der XMPP-Server auf einem ande­ren Ser­ver läuft. In einem sol­chen Fall kann man sich das ganze mit „SRV“ Ein­trä­gen im DNS zurechtzubiegen.

_jabber._tcp             IN SRV     0 0 5269 xmpp.example.org.
_xmpp-client._tcp        IN SRV     0 0 5222 xmpp.example.org.
_xmpp-server._tcp        IN SRV     0 0 5269 xmpp.example.org.

Mit die­sen Ein­trä­gen ist es dann mög­lich den XMPP Ser­ver unter „example.org“ zu betrei­ben, obwohl der A-Record auf einen ande­ren Ser­ver zeigt, da der anfra­gende Cli­ent umge­lei­tet wird.

Möchte man Instant Mes­sa­ging mit­tels XMPP (frü­her unter dem Namen Jab­ber bekannt) nut­zen, so kann man natür­lich zu einem der vie­len Dienste wie GMail, GMX und ähn­li­ches gehen. Damit bekommt man dann neben den Vor­tei­len auch den Nach­teil, das man sich nicht sicher sein kann was mit den eige­nen Daten pas­siert. Eine andere Lösung ist es hier den XMPP Ser­ver selbst auf­zu­set­zen. Dazu bie­tet sich „ejab­berd“ an. Mittels:

sudo apt-get install ejabberd

wird das pas­sende Paket instal­liert. Der Ser­ver „ejab­berd“ unter­stützt dabei die Ver­wal­tung meh­re­rer Domains, so das eine Ser­ve­r­in­stanz die Adres­sen user1@example.org und user2@example.com bereit­stel­len kann. Um dies umzu­set­zen, geht es im ers­ten Schritt an die Kon­fi­gu­ra­tion. Dazu wird die Datei „/etc/ejabberd/ejabberd.cfg“ mit­tels „nano“ geöffnet:

nano /etc/ejabberd/ejabberd.cfg

Die Syn­tax der Datei ist dabei im Gegen­satz zu ande­ren Kon­fi­gu­ra­ti­ons­da­teien etwas gewöh­nungs­be­dürf­tig, da sie auf der Pro­gram­mier­spra­che Erlang basiert. Kom­men­tare z.B. wer­den in die­ser Datei mit einem Pro­zent­zei­chen ein­ge­lei­tet. Im ers­ten Schritt wer­den die Domain respek­tive Host­na­men defi­niert, wel­che „ejab­berd“ ver­wal­ten soll. Dazu wird der Punkt „hosts“ gesucht und mit den ent­spre­chen­den Domains gefüllt.

{hosts, ["xmpp.example.com", "xmpp.example.org"]}.

Die Ser­ver­spra­che kann man für einen deutsch­spra­chi­gen Ser­ver geän­dert werden:

{language, "de"}.

Damit wer­den Nach­rich­ten vom Ser­ver in Deutsch anstatt in Eng­lisch aus­ge­ge­ben. Stan­dard­mä­ßig ist der Ser­ver so ein­ge­stellt, das nie­mand außer dem Admi­nis­tra­tor Nut­zer anle­gen kann. Natür­lich wäre es auch denk­bar, einen Ser­ver zu betrei­ben, bei wel­chem sich jeder regis­trie­ren kann. Damit man Nut­zer anle­gen kann, muss ein Nut­zer mit den ent­spre­chen­den Rech­ten defi­niert werden:

{acl, admin, {user, "seeseekey", "xmpp.example.com"}}.

Damit ist der Nut­zer „seeseekey@xmpp.example.com“ ein Nut­zer mit admi­nis­tra­ti­ven Rech­ten. Aller­dings muss die­ser Nut­zer noch erstellt werden:

service ejabberd restart
ejabberdctl register seeseekey xmpp.example.com geheimespasswort

Wei­tere Nut­zer kön­nen anschlie­ßend über die Webober­flä­che ange­legt wer­den. Zu errei­chen ist diese dabei unter:

http://xmpp.example.com:5280/admin

Die Zugangs­da­ten ent­spre­chen dabei denen des admi­nis­tra­ti­ven Nutzers.

Wei­tere Infor­ma­tio­nen gibt es unter:
https://wiki.archlinux.de/title/Ejabberd

Für eine ver­schlüs­selte Kom­mu­ni­ka­tion über XMPP bie­tet sich das soge­nannte „Off-the-Record Mes­sa­ging“ an. OTR ist dabei durch vier Merk­male gekenn­zeich­net: Ver­schlüs­se­lung, Authen­ti­fi­zie­rung des Gesprächs­part­ners, Abstreit­bar­keit und Fol­gen­lo­sig­keit. Die ers­ten bei­den Punkte soll­ten dabei selbst­er­klä­rend sein. Der Punkt Abstreit­bar­keit bezeich­net die Eigen­schaft des Sys­tems, das nach einem Gespräch nicht nach­ge­wie­sen wer­den kann, das einer der Gesprächs­part­ner eine bestimmte Aus­sage getä­tigt hat. Wich­tig ist auch die Fol­gen­lo­sig­keit, wel­che dafür sorgt, das selbst nach dem Ver­lust des pri­va­ten Schlüs­sels keine in der Ver­gan­gen­heit getä­tig­ten Kon­ver­sa­tio­nen ent­schlüs­selt wer­den können.

Unter Adium kann Off-the-Record Mes­sa­ging in jedem Fens­ter über das Schloss­sym­bol akti­viert werden

Möchte man ver­schlüs­selt über XMPP kom­mu­ni­zie­ren, so benö­tigt man einen ent­spre­chen­den Cli­ent der OTR unter­stützt. Einige Cli­ents wie Adium haben diese Funk­tio­na­li­tät gleich ein­ge­baut. Bei ande­ren benö­tigt man dazu ein Plu­gin. Eine Auf­lis­tung der ent­spre­chen­den Anwen­dun­gen fin­det man auch in der Wiki­pe­dia. Ist OTR nicht nativ ein­ge­baut, sollte man schauen, ob es even­tu­ell ein Plu­gin gibt. So gibt es z.B. das offi­zi­elle Plu­gin für Pid­gin unter http://www.cypherpunks.ca/otr/#downloads. Nach der Instal­la­tion des Plugins, kann die­ses unter „Werk­zeuge“ -> „Plugins“ akti­viert werden.

Das Plu­gin­fens­ter von Pidgin

Nach­dem das Plu­gin akti­viert wurde, kann der Account per OTR ange­schrie­ben wer­den. Eine sol­che Nach­richt sieht dabei ver­schlüs­selt so aus:

?OTR:AAIRAAAAELtKpVAOcq1LA3et6OkLuV0AAAHSd9/i8RVe0kUQR5XwOSCqOlUWredm6O2ogDht3pnmIBaksS
+qH23967oX0f053spOynxgVnyneAc2u1MNowuKGSWL+nx9DXhKsrYMEFB/2GPFzXaVyTQ
/MC0m1o7m67Z2u3MXjwMpp++rDWD0jfmy1UhOTYVmWPBcqg4g9ZDX6BdRxg61Y8KF0cQc
SQGVnCW19o93puHyD3Qd10ZXm4eOZJOPUGH9USIhsu/LOEYz85+Qg3lMyZJwJYOVPuhM8
ZYoWoIVG+y18pVrsNE+bBWa56N1Xol5+/NMsTbeJ8NJ0z5jXhdRTs27XoResxwOxgR0rRpr/IE
fsLXSZLyZM3vhLYbhVTtyO5C7Bja9RQo6EG2NZLD9fU167SBLRYnC798Mc7Nl24cdy
/fgh+3O+kFM/Gf20B4e/WfVSvFzXDKWLu0ZnDfGk6VLU4uP5W2H7ampkmYdQlZLNaxOa
a2IqUBCREcGuZPJ2/MrEkI8ru42DOe0AneSQtl6jo9ymmPZ2VUeacMht3uPyXhFO3JTw
4ZKU+axeh37H+1n629zTO1S/GBjOyIZPGTli22Oim8ef6yaVIzNTEpg4GSzOE7+DBN1F
MwzwhZr99agKjTkWu1Ob3v4hAIOFO2M3Vgo8AwV4yM1bHJjIaeC.

Unter Umstän­den beim ers­ten Emp­fang der Fin­ger­ab­druck des Absen­ders vom Emp­fän­ger bestä­tigt wer­den. Im Gegen­satz zur Ver­schlüss­lung per Mail, ist OTR ein gan­zes Stück benut­zer­freund­li­cher, da es für den Nut­zer sehr trans­pa­rent abläuft.

Wei­tere Infor­ma­tio­nen gibt es unter:
http://de.wikipedia.org/wiki/Off-the-Record_Messaging

Google scheint eine kri­ti­sche Masse erreicht zu haben. Anders kann man sich das Ver­hal­ten in letz­ter Zeit nicht erklä­ren. Wäh­rend Larry Page sich auf der Keynote zur Google I/O noch bit­ter­lich beschwerte, das den Nut­zern von „Outlook.com“ die Mög­lich­keit eröff­net wurde mit Google Chat zu kom­mu­ni­zie­ren, aber dies umge­kehrt nicht Fall sei und gleich danach beteu­erte wie wich­tig Inter­ope­ra­bi­li­tät ist.

Das Pro­blem ist, das diese Aus­sage ziem­lich zwie­späl­tig wirkt. So wurde kurze Zeit spä­ter bei der Zusam­men­füh­rung der haus­ei­ge­nen Mes­sen­ger ein­fach die XMPP Kom­mu­ni­ka­tion zu ande­ren Ser­vern gekappt. Somit ist es Nut­zer die­ser Mes­sen­ger nicht mehr mög­lich mit Jab­ber Nut­zern zu reden wel­che ihre Accounts bei ande­ren Diens­ten betrei­ben. Statt­des­sen soll man den haus­ei­gen Cli­ent nut­zen, wel­cher nur mit Google Kon­tak­ten funktioniert.

Das ist bei­leibe nicht die ein­zige Abwer­tung eines offe­nen Stan­dards durch Google. Vor eini­gen Mona­ten traf es den Google Rea­der (und damit RSS), wel­cher in die­sem Monat seine letzte Schon­frist genießt. Auch die offene Kalen­der API über iCal wird zum Sep­tem­ber 2013 ein­ge­stellt. Dann erfolgt der Zugriff auf diese Daten nur noch über die pro­prie­täre „Calen­dar API“ von Google.

Jetzt stellt sich natür­lich die Frage warum Google sich so ver­hält. Ein Grund könnte die Nut­zer­bin­dung sein, mit wel­cher die Goog­le­nut­zer im Google Daten­silo gefan­gen blei­ben, wenn es keine offe­nen Aus­tausch­schnitt­stel­len mehr gibt. Ein ande­rer Grund könnte sein, das Google mehr Geld ver­die­nen möchte. So ist z.B. die „Calen­dar API“ auf 10000 Abfra­gen pro Tag begrenzt, wer mehr benö­tigt darf eine Erhö­hung des Quota bei Google erbet­teln. Es scheint nur noch eine Frage der Zeit zu sein, bis wir auch für die­sen Dienst löh­nen dürfen.

Aller­dings revi­diert Google auch ab und an eine Ent­schei­dung, wie bei der Calen­der API wel­che nun über CalDAV wie­der für alle zugreif­bar sein soll. Auch sol­len die Kon­takte mit­tels der Card­DAV API abge­fragt wer­den kön­nen. Wobei sich hier für den Beob­ach­ter ein hin und her ergibt, wel­ches man von einem ver­läss­li­chen Part­ner nicht erwar­tet. So hilft es wohl nur das Daten­silo zu ver­las­sen und die pri­vate Cloud auf eige­nem Webs­pace zu betrei­ben. Oder wie Goe­the sagte: „Hier bin ich Mensch, hier darf ichs sein!“.

Wei­tere Infor­ma­tio­nen gibt es unter:
http://www.golem.de/news/larry-page-microsoft-will-uns-ausnutzen-1305–99298.html
http://www.heise.de/newsticker/meldung/Googles-Kalender-API-bleibt-offen-fuer-alle-1883394.html
https://netzpolitik.org/2013/google-verabschiedet-sich-grostenteils-von-offenen-standards-fur-instant-messaging/
http://www.heise.de/newsticker/meldung/Googles-Chat-Client-kappt-Jabber-Kompatibilitaet-1866059.html

Bei XMPP wel­ches auch unter den Namen Jab­ber bekannt ist, han­delt es sich um freies und stan­dar­di­sier­tes Pro­to­koll für Instant Mes­sa­ging. Auf der Suche nach einer ent­spre­chen­den Biblio­thek für XMPP wel­che unter iOS und Mac OS X läuft bin ich auf das „XMPP­Frame­work“ gesto­ßen. Die Selbst­be­schrei­bung des Autors sieht dabei viel­ver­spre­chend aus:

XMPP­Frame­work pro­vi­des a core imple­men­ta­tion of RFC-3920 (the xmpp stan­dard), along with the tools nee­ded to read & write XML. It comes with mul­ti­ple popu­lar exten­si­ons (XEP’s), all built atop a modu­lar archi­tec­ture, allo­wing you to plug-in any code nee­ded for the job. Addi­tio­nally the frame­work is mas­si­vely par­al­lel and thread-safe. Struc­tu­red using GCD, this frame­work per­forms well regard­less of whe­ther it’s being run on an old iPhone, or on a 12-core Mac Pro. (And it won’t block the main thread… at all)

Das Frame­work ist dabei unter https://github.com/robbiehanson/XMPPFramework zu fin­den und wird unter einer BSD Lizenz zur Ver­fü­gung gestellt. Neben der Doku­men­ta­tion im Wiki gibt es auch eine Google Group wel­che unter https://groups.google.com/forum/?fromgroups#!forum/xmppframework zu fin­den ist.

Wei­tere Infor­ma­tio­nen gibt es unter:
http://de.wikipedia.org/wiki/Xmpp

Seit ein paar Wochen kann man in Deutsch­land seine @googlemail.com Adresse auf @gmail.com umstel­len las­sen. Das ist an sich auch kein Pro­blem, denn man emp­fängt trotz Umstel­lung die ent­spre­chen­den Mails wel­che an die @googlemail.com Adresse gesen­det wer­den. Lei­der gibt es von ande­rer Seite ein paar Stol­per­steine, so z.B. mit der Jab­ber­an­bin­dung. Die Gmail Adresse kann man näm­lich gleich­zei­tig als Jabber/XMPP Adresse benut­zen. Unter Psi ist Ver­bin­dung nach der Umstel­lung dau­er­haft unterbrochen.

Die Nutzerkontoeinstellungen

Die Abhilfe in die­sem Fall ist glück­li­cher­weise recht ein­fach. Dazu müs­sen ein­fach die Nut­zer­ein­stel­lun­gen gela­den wer­den und dort „googlemail.com“ auf „gmail.com“ geän­dert wer­den. Danach funk­tio­niert auch dort der Login wie­der problemlos.

Wei­tere Infor­ma­tio­nen gibt es unter:
http://wiki.ubuntuusers.de/Psi

Es geht doch nichts dar­über alle Jubel­jahre seine Accounts auf­zu­räu­men. So muss­ten bei mir meine ICQ Accounts dran glau­ben, schließ­lich gibt es Jabber/XMPP :)

Die letzte Bestä­ti­gung zur Löschung

Um sei­nen Account zu löschen sind fol­gende Schritte notwendig:

Danach sollte der Account gelöscht sein. Tes­ten kann man das ganze in dem man sich ein­fach noch­mal ver­sucht einzuloggen.

Wei­tere Infor­ma­tio­nen gibt es unter:
http://de.wikipedia.org/wiki/ICQ

Reine Jab­ber Anwen­dun­gen unter iOS sind ziem­lich sel­ten und so ist mir noch keine (aus­rei­chend gute) Lösung dafür bekannt. Anders sieht es da bei dem Mul­ti­pro­to­kol­mes­sen­gern aus. Hier bie­tet sie die App „imo.im“ an mit wel­cher man sich unter ande­rem zu fol­gen­den Diens­ten ver­bin­den kann:

  • IMO
  • MSN
  • Face­book
  • GTalk
  • Yahoo!
  • Skype
  • AOLICQ
  • Jab­ber
  • VKon­takte
  • MyS­pace
  • Hyves
  • Steam

Dort kann man sich dann auch mit einem Jab­ber (bzw. XMPP) Account anmel­den. Die Nach­rich­ten wer­den dabei für den Fall das die App nicht läuft bis zu einer Woche im Hin­ter­grund gepusht.

Wei­tere Infor­ma­tio­nen gibt es unter:
http://xmpp.org/xmpp-software/clients/
http://apple.stackexchange.com/questions/1902/what-jabber-clients-are-there-for-iphone

Wer auf der Suche nach einem deut­schen DDNS Dienst ist der sollte sich ein­mal den Dienst von tiggerswelt.net wel­cher unter http://tiggerswelt.net/ zu fin­den ist anschauen. Dabei besticht der Dienst durch seine vie­len Optio­nen und Hilfe (wenn man sie benö­tigt) ist auch kein Pro­blem. So kann man pro­blem­los den Sup­port per Jab­ber oder Tele­fon errei­chen. Und den Dienst gibt es dabei auto­ma­tisch zu jeder Domain dazu :)