Spätestens seit 2013 gibt es Initiativen, die das XMPP-Netzwerk durch Transportverschlüsselung sicherer machen wollen. Mittlerweile unterstützen fast alle öffentlichen XMPP-Server zumindest optional Transportverschlüsselung via TLS oder SSL. Leider wird das Thema nur in den wenigsten Fällen wirklich ernst genommen - und das mache ich u.A. daran fest: In viel zu vielen Fällen können wir bei der Server-to-Server-Kommunikation folgendes finden:
Verwendung von selbst signierten Zertifikaten Defekte / ungültige Zertifikatskonfigurationen (fehlendes Intermediate-Cert, abgelaufene Zertifikate, …) Tolerierung unverschlüsselter Verbindungen Vor allem gegen den letzten Punkt muss unbedingt etwas unternommen werden.
Mit der Zeit häufen sich auf XMPP-Servern unzählige ungenutzte XMPP-Accounts an. Es schadet nicht, diese nach einem festgelegten Zeitraum zu löschen und die Benutzernamen wieder freizugeben. Nicht zuletzt kann so eine Reinigungsaktion auch für die Datenbank-Performance hilfreich sein. Standardmäßig enthält Prosody leider keinen Mechnismus zum Löschen inaktiver Accounts, doch mit zwei Modulen und ein paar Kommandozeilen-Tricks kann man den Server von Altlasten befreien.
Um zu erkennen, welcher Account wann zuletzt genutzt wurde, muss der Zeitpunkt der letzten Aktivität (dazu zählen Registrierung, Login, Logout) für jeden Account ermittelt werden.
Seitdem WhatsApp sich zur Quasi-Standardanwendung für mobiles Instant-Messaging entwickelt hat, werde ich immer wieder gefragt, wieso man mich nicht über die App erreichen könne. Ich will in diesem Beitrag erklären, wieso ich für mich entschieden habe, WhatsApp nicht zu nutzen, und wieso ich die hohe Marktdurchdringung des Dienstes für problematisch halte.
Als WhatsApp in Deutschland noch weitestgehend unbekannt war und sich in den ersten Großstädten gerade erst etablierte, war ich einige Monate lang WhatsApp-User.
Prosody ist ein inzwischen weit verbreiteter und moderner XMPP-Server, der durch zahlreiche Module erweitert werden kann. Geschrieben ist Prosody in der Skriptsprache Lua. Zur Installation habe ich vor 3 Jahren schon einmal eine Anleitung geschrieben. Dieser Beitrag soll die etwas veraltete Version ersetzen.
Voraussetzungen vServer oder Rootserver mit Ubuntu 14.04 oder höher Möglichkeit, valide TLS-Zertifikate auszustellen, z.B. über Let’s Encrypt Eigene Domain + Zugriff auf zugehörige DNS-Records Grundkenntnisse im Umgang mit Ubuntu Server, DNS, TLS-Zertifikaten, MySQL Annahmen Verwendete XMPP-Domain: xmppserver.