Der studentische Jabber-Server Instant Messaging an der RWTH Aachen Andreas Kelle-Emden, Martin Weusten 1. Oktober 2009 JUNe Jabber University Network Lizenz: Creative Commons BY-NC-SA 3.0 http://jabber.rwth-aachen.de/wiki/copyright
Überblick 1 Was ist Jabber? 2 3 4 5
Überblick 1 Was ist Jabber? 2 3 4 5 Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 3/37
Überblick Instant Messanging Offenes, freies Protokoll Dezentrale Organisation Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 4/37
Überblick Instant Messanging Offenes, freies Protokoll Dezentrale Organisation Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 4/37
Überblick Instant Messanging Offenes, freies Protokoll Dezentrale Organisation Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 4/37
Aufbau der JID Benutzername Server Ressource Alice (Client) Bob (Client) jabber.rwth-aachen.de (Server) andreas.kelle.emden@jabber.rwth-aachen.de/pidgin Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 5/37
Aufbau der JID Benutzername Server Ressource Alice (Client) jabber.rwth-aachen.de (Server) Bob (Client) jabber.ccc.de (Server) andreas.kelle.emden@jabber.rwth-aachen.de/pidgin Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 5/37
Aufbau der JID Benutzername Server Ressource Alice/Home (Client) Alice/Handy (Client) jabber.rwth-aachen.de (Server) andreas.kelle.emden@jabber.rwth-aachen.de/pidgin Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 5/37
Einrichtung Demo Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 6/37
Gründe für Jabber Dezentralität: Ausfallsicherheit Vertrauen Support Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 7/37
Gründe für Jabber Dezentralität: Ausfallsicherheit Vertrauen Support Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 7/37
Gründe für Jabber Dezentralität: Ausfallsicherheit Vertrauen Support Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 7/37
Gründe für Jabber Dezentralität: Ausfallsicherheit Vertrauen Support Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 7/37
Jabber vs. ICQ Nutzungsbedingungen Häufige Ausfälle Versuche, gezielt User und auszusperren Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 8/37
Jabber vs. ICQ Nutzungsbedingungen Häufige Ausfälle Versuche, gezielt User und auszusperren Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 8/37
Jabber vs. ICQ Nutzungsbedingungen Häufige Ausfälle Versuche, gezielt User und auszusperren Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 8/37
Jabber vs. ICQ Nutzungsbedingungen Häufige Ausfälle Versuche, gezielt User und auszusperren Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 8/37
Überblick Was ist Jabber? Jabber University Network Öffentliche Jabber-Server 1 Was ist Jabber? 2 3 4 5 Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 9/37
Jabber University Network Öffentliche Jabber-Server Nutzer des RWTH-Servers: Mathevorkurs Lehrstühle Fachschaften Wohnheime verschiedene Studentenorganisationen aktuell mehr als 1900 registrierte Nutzer Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 10/37
Jabber University Network Jabber University Network Öffentliche Jabber-Server Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 11/37
Jabber University Network Öffentliche Jabber-Server weitere Universitäten... TU Berlin Stanford University Massachusetts Institute of Technology (MIT) PIC-WG... Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 12/37
Jabber University Network Öffentliche Jabber-Server Öffentliche Jabber-Server Google Talk LiveJournal Talk GMX/Web.de MultiMessenger draugr.de jabber.ccc.de swissjabber.ch... Nutzer aller Server können untereinander kommunizieren! Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 13/37
Jabber University Network Öffentliche Jabber-Server Öffentliche Jabber-Server Google Talk LiveJournal Talk GMX/Web.de MultiMessenger draugr.de jabber.ccc.de swissjabber.ch... Nutzer aller Server können untereinander kommunizieren! Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 13/37
Überblick Was ist Jabber? Infrastruktur Serverbot Helga 1 Was ist Jabber? 2 3 4 5 Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 14/37
Infrastruktur Serverbot Helga Infrastruktur Hardware zwei VServer im RZ, 2048 Mb RAM (bzw. 512 Mb) reale Hardware: Fujitsu Siemens RX300 S4 2x3 GHz QuadCore, 32 Gb RAM VMware Infrastructure Enterprise Software CentOS Linux Openfire, MySQL MediaWiki, WordPress, Apache, JIRA Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 15/37
Infrastruktur Serverbot Helga Infrastruktur Hardware zwei VServer im RZ, 2048 Mb RAM (bzw. 512 Mb) reale Hardware: Fujitsu Siemens RX300 S4 2x3 GHz QuadCore, 32 Gb RAM VMware Infrastructure Enterprise Software CentOS Linux Openfire, MySQL MediaWiki, WordPress, Apache, JIRA Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 15/37
Infrastruktur Serverbot Helga Infrastruktur Backup alle 6h lokales Backup (tar.gz-archiv, ca. 36 Mb) alle 6h Kopie des Backuparchivs an zweiten Server alle 24h Backup durch Bandroboter (Backupdienst der RWTH) Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 16/37
Infrastruktur Serverbot Helga Serverbot Helga Benutzung JabberID: bot@helga.jabber.rwth-aachen.de Steuerung über Chatnachrichten LaTeX-Formeln Gemeinsame Benutzergruppen (Shared Groups) Erinnerungs-Nachrichten Online-Status via HTTP vers. Admin-Funktionen Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 17/37
Infrastruktur Serverbot Helga Serverbot Helga Benutzung JabberID: bot@helga.jabber.rwth-aachen.de Steuerung über Chatnachrichten LaTeX-Formeln Gemeinsame Benutzergruppen (Shared Groups) Erinnerungs-Nachrichten Online-Status via HTTP vers. Admin-Funktionen Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 17/37
Infrastruktur Serverbot Helga Helga: LaTeX-Formel Rendert LaTeX-Code als Bild und macht dieses verfügbar. Kommandos latex Formel tex Formel Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 18/37
Infrastruktur Serverbot Helga Helga: Gemeinsame Benutzergruppen News Moderator schickt Nachricht an alle Mitglieder. Alice Bob Claudia Daniel Eva Fritz Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 19/37
Infrastruktur Serverbot Helga Helga: Gemeinsame Benutzergruppen News Moderator schickt Nachricht an alle Mitglieder. Team Mitglieder sehen alle anderen Mitglieder. Alice Bob Claudia Daniel Eva Fritz Alice Bob Claudia Daniel Eva Fritz Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 19/37
Infrastruktur Serverbot Helga Helga: Gemeinsame Benutzergruppen News Team Support Moderator schickt Nachricht an alle Mitglieder. Mitglieder sehen alle anderen Mitglieder. Mitglieder von A sehen untereinander nicht. Alice Bob Claudia Daniel Eva Fritz Alice Bob Claudia Daniel Eva Fritz Alice A Bob Claudia Daniel Mitglieder von A sehen alle Mitglieder von B. Eva Fritz B Mitglieder von B sehen alle anderen Mitglieder von B. Mitglieder von B sehen Mitglieder von A nur, wenn sie angesprochen werden. Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 19/37
Infrastruktur Serverbot Helga Helga: Gemeinsame Benutzergruppen Kommandos group list group info -g Spaghetti group join -g Spaghetti group leave -g Spaghetti group invite -g Spaghetti -u Vorname.Nachname group message -g Spaghetti @Hallo Welt! help group Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 20/37
Infrastruktur Serverbot Helga Helga: Erinnerungs-Nachrichten Schickt zeitverzögerte Nachrichten. Kommandos msg msg +15 @Pizza ist fertig! msg +02:15 -u Hans.Wurst @Deine Pizza ist jetzt völlig verkohlt... msg -d 24.12.2009 @Fröhliche Weihnachten! show Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 21/37
Infrastruktur Serverbot Helga Helga: Online-Status via HTTP Veröffentlicht Online-Status als Bild oder XML via HTTP. Kommando URLs set public true http://jabber.rwth-aachen.de/helga/ user?jid=hans.wurst http://jabber.rwth-aachen.de/helga/ user?jid=hans.wurst&type=xml Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 22/37
Überblick Was ist Jabber? Transports MultiUserChat Verschlüsselung Dateitransfer 1 Was ist Jabber? 2 3 4 5 Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 23/37
Transports Was ist Jabber? Transports MultiUserChat Verschlüsselung Dateitransfer Alice (Client) Bob (Client) Jabber-Server (Server) Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 24/37
Transports Was ist Jabber? Transports MultiUserChat Verschlüsselung Dateitransfer Alice (Client) Jabber-Server (Server) Transport (Server) ICQ-Netzwerk (Server) Claudia (Client) Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 24/37
Transports Was ist Jabber? Transports MultiUserChat Verschlüsselung Dateitransfer Alice (Client) Daniel (Client) Jabber-Server (Server) anderer Jabber-Server (Server) anderer Transport (Server) ICQ-Netzwerk (Server) Claudia (Client) Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 24/37
Transports MultiUserChat Verschlüsselung Dateitransfer Transports Transports für so gut wie alle Netzwerke: ICQ, MSN, AIM, Yahoo, IRC, GaduGadu,... Jabber/XMPP Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 25/37
Transports MultiUserChat Verschlüsselung Dateitransfer Transports Transports für so gut wie alle Netzwerke: ICQ, MSN, AIM, Yahoo, IRC, GaduGadu,... Jabber/XMPP Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 25/37
Transports MultiUserChat Verschlüsselung Dateitransfer Transports Vorteile müssen nur ein Netzwerk (Jabber) unterstützen. Client-Entwicklung wird einfacher mehr Auswahl für Endnutzer Nachteile Serverbetrieb wird aufwendiger Transport ist zusätzliche Komponente die ausfallen kann Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 26/37
Transports MultiUserChat Verschlüsselung Dateitransfer Transports Vorteile müssen nur ein Netzwerk (Jabber) unterstützen. Client-Entwicklung wird einfacher mehr Auswahl für Endnutzer Nachteile Serverbetrieb wird aufwendiger Transport ist zusätzliche Komponente die ausfallen kann Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 26/37
Transports MultiUserChat Verschlüsselung Dateitransfer MultiUserChat (MUC) Chaträume: chatten mit mehreren Nutzern gleichzeitig jeder darf neue Räume eröffnen temporäre und persistente Räume Moderation möglich History-Funktion Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 27/37
MultiUserChat (MUC) Was ist Jabber? Transports MultiUserChat Verschlüsselung Dateitransfer Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 28/37
Transports MultiUserChat Verschlüsselung Dateitransfer Verschlüsselung Motivation Datenverkehr im Internet kann unbemerkt mitgeschnitten werden vertrauliche Daten sollten daher verschlüsselt werden Möglichkeiten Client-zu-Server: SSL/TLS Client-zu-Client: OpenPGP oder OTR Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 29/37
Transports MultiUserChat Verschlüsselung Dateitransfer Verschlüsselung Motivation Datenverkehr im Internet kann unbemerkt mitgeschnitten werden vertrauliche Daten sollten daher verschlüsselt werden Möglichkeiten Client-zu-Server: SSL/TLS Client-zu-Client: OpenPGP oder OTR Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 29/37
SSL/TLS Was ist Jabber? Transports MultiUserChat Verschlüsselung Dateitransfer Alice (Client) Jabber-Server (Server) Bob (Client) Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 30/37
SSL/TLS Was ist Jabber? Transports MultiUserChat Verschlüsselung Dateitransfer Alice (Client) Jabber-Server (Server) anderer Jabber-Server (Server) Claudia (Client) Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 30/37
OpenPGP/OTR Was ist Jabber? Transports MultiUserChat Verschlüsselung Dateitransfer Alice (Client) Jabber-Server (Server) anderer Jabber-Server (Server) Bob (Client) Claudia (Client) Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 31/37
OpenPGP Was ist Jabber? Transports MultiUserChat Verschlüsselung Dateitransfer Demo Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 32/37
Transports MultiUserChat Verschlüsselung Dateitransfer Dateitransfer... via Proxy umgeht lokale Firewall leichte Konfiguration für kleine Dateien völlig ausreichend... via P2P tauschen IP-Adressen aus, direkter Transfer Ausnutzung der maximal möglichen Bandbreite Firewall/Router muss lokal konfiguriert werden Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 33/37
Transports MultiUserChat Verschlüsselung Dateitransfer Dateitransfer... via Proxy umgeht lokale Firewall leichte Konfiguration für kleine Dateien völlig ausreichend... via P2P tauschen IP-Adressen aus, direkter Transfer Ausnutzung der maximal möglichen Bandbreite Firewall/Router muss lokal konfiguriert werden Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 33/37
Transports MultiUserChat Verschlüsselung Dateitransfer JabberDisk... via JabberDisk Steuerung über Bot in der Kontaktliste Upload/Download mit normalen Dateitransfers Öffentlicher Bereich auch über HTTP zugänglich. Anbieter: jabbim.cz (100 Mb) jabber.hot-chilli.net (5 Mb) Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 34/37
Überblick 1 Was ist Jabber? 2 3 4 5 Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 35/37
Pidgin Psi Finch SparkWeb Andreas Kelle-Emden, Martin Weusten Der studentische Jabber-Server 36/37
JUNe Jabber University Network Umfangreiche Dokumentation im Wiki! www.jabber.rwth-aachen.de www.j-u-n-e.org