Jabber: Unterschied zwischen den Versionen

Aus Fachschaft_Informatik
Zur Navigation springen Zur Suche springen
(Sammelgruppe für alte Jabber-Accounts-Diskussion)
(Wooha, zu doof Wikis zu editieren. Versehentlich gelöschte Inhalte wiederhergestellt.)
Zeile 1: Zeile 1:
[[Image:JabberLogo.png|400px|right]]
Unser aller [[FSR]] hat einen Jabber-Server eingerichtet auf dem alle Mitglieder der [[Fachschaft]] einen Account bekommen können.
Klicke dazu einfach auf [https://jabber.mafiasi.de jabber.mafiasi.de], gib deinen RZ-Account-Namen ein '''und merke dir das Passwort, es wird nur einmal angezeigt'''! Das gleiche kannst du tun, wenn du dein Passwort vergessen hast.
= Nichts geht mehr? =
Melde dich nicht im Forum, beim [[FSR]]<ref>Natürlich kennt der FSR notfalls Leute, die dir bei Jabber-Problemen helfen könnten.</ref> oder anderen obskuren Orten, sondern bei der Jabber-AG: <tt>jabber auf informatik punkt uni minus hamburg punkt de</tt>.
= Features =
== Virtual Hosting ==
Wir koennen, aehnlich zu Google Apps, fuer andere Domains Jabber hosten. Insbesondere sind  informatik.uni-hamburg.de aber spaeter vielleicht auch stud.uni-hamburg.de (oder so) zu nennen.
Wenn du gerne deine Domain gehosted haben moechtest, schreib an jabber@.
== Shared Roster Groups ==
Du bist in einer Gruppe mit deinem Jahrgang und kannst die Anderen automatisch sehen (und vice versa). Einen huebschen in-band Mechanismus um das zu Verhindern gibt es noch nicht. Entweder jabber@ mitteilen, dass du gerne alleine bleiben moechtest, oder sog. Privacy Lists ueber deinen Client einrichten.
= Clients einrichten =
 
Einfach hier nachschauen: https://jabber.rwth-aachen.de/wiki/JUNe/Clients
Es gibt auch ein nettes Bilder Tutorial unter folgender Wiki-Seite: [[Jabberclients]]
Der Jabber-Server heißt jabber.mafiasi.de (in die Client-Einstellungen gehört '''kein''' "http://"!), eure Jabber-Id ist 9musterma@jabber.mafiasi.de.
= Bugs/Todos: =
= Bugs/Todos: =


Zeile 52: Zeile 84:


: Im Prinzip fertig, denke ich. Man muesste noch dokumentieren, dass es dem Client frei steht, sein bookmark zu loeschen. Man koennte auch ueber OE Gruppen nachdenken. Und dann hier die Seite bisschen aufraeumen. --[[Benutzer:Muelli|Muelli]] 23:32, 14. Apr. 2010 (CEST)
: Im Prinzip fertig, denke ich. Man muesste noch dokumentieren, dass es dem Client frei steht, sein bookmark zu loeschen. Man koennte auch ueber OE Gruppen nachdenken. Und dann hier die Seite bisschen aufraeumen. --[[Benutzer:Muelli|Muelli]] 23:32, 14. Apr. 2010 (CEST)
= Was wird eigentlich gespeichert? =
* Offline-Nachrichten (Nachrichten, die du Leuten schickst, die offline sind und umgekehrt. Werden nach dem Empfang gelöscht)
* Zusätzliche Roster-Einträge (Leute von anderen Jabber-Servern, die du auf deiner Kontaktliste hast)
* Eigene eingerichtete Gruppen (sind im Prinzip auch Roster-Einträge)
* History von MUC-Chatrooms, sofern in der Raumkonfiguration eingestellt (nur die letzten n Nachrichten, n ∈ ℕ, n einstellbar) - öffentlich einsehbar, sofern der Raum öffentlich ist
* Deine RZ-Kennung sowie dein Jabber-Passwort und Jahrgangszugehörigkeit
* Daten, die du auf deiner vCard angibst - öffentlich einsehbar
* Deine Privacy Lists ([http://xmpp.org/extensions/xep-0016.html XEP-0016]) sofern welche erstellt
* Der Zeitpunkt, an dem du zuletzt online warst
= Wer hat alles administrativen Zugriff auf den Jabberserver? =
* Arne Köhn <5koehn>
* Henning Pridöhl <8pridoeh>
* [[Benutzer:Muelli|Tobias "Muelli" Müller]] <4tmuelle>
* Dennis Keitzel <6keitzel>
= Warum Jabber? =
Mit Jabber kann man, wie mit ICQ, MSN oder so auch, Instant Messaging machen. Warum sollte man sich nun aber von diesen Loesungen abwenden und Jabber benutzen? Nun, darauf gibt es sehr viele Antworten und es gibt viele Seiten im Netz, die genau diese Frage diskutieren.
Die wichtigsten Gruende, Jabber anstatt ICQ, etc.. zu nutzen sind wohl aber
* Sicherheit: Im Gegensatz zu ICQ koennen Passwoerter und Nachrichten verschluesselt, also nicht im Klartext uebertragen werden, sodass keiner die Nachrichten mitlesen kann.
*  Clientvielfalt: Da Jabber ein freies und offenes Protokoll ist, ist es sehr gut dokumentiert. Das ermoeglicht Programmierern, einen Jabberclient zu schreiben. Somit gibt es eine Vielzahl an Programmen, mit denen man Jabber sprechen kann. Und das auf saemtlichen Plattformen und Betriebssystemen
* AGB: Jabber ist frei und gehoert keiner Firma. Somit kann keiner, wie bei ICQ, fiese AGB festlegen denen du zustimmen musst, bevor du das Programm oder Protokoll nutzen kannst.
Hier einige Seiten, die dieses Thema diskutieren:
* http://ulm.ccc.de/~marcel/warum-jabber.htm
* http://hp.kairaven.de/jabber/
* http://de.wikipedia.org/wiki/Jabber
* https://jabber.rwth-aachen.de/wiki/index.php/Warum_Jabber
* http://web.amessage.info/wiki/JabberAdvocacyDe
* http://jabber.titan8.de/warum-jabber.html
* http://de.wikipedia.org/ICQ
* http://en.wikipedia.org/wiki/Instant_messaging#User_base
= Intern =
== ejabberd ==
Wir benutzen ejabberd, der unter einem "ejabberd" Benutzer in /usr/local/ laeuft. Der Benutzer hat kein Passwort und keine SSH PublicKeys. Somit kann also nur root in den ejabberd Benutzerkontext eintreten. Oder Hacker die den ejabberd aufmachen ;)
== Neue Domain ==
Um ejabberd fuer eine neue Domain (bspw. cryptobitch.de) zu konfigurieren sind im Prinzip folgende Schritte noetig:
Die Domain muss xmpp [http://wiki.dreamhost.com/Jabber_SRV_records  SRV] [http://library.linode.com/communications/xmpp/ejabberd/debian-5-lenny#hostnames_and_virtual_hosting records] haben:
Name: _xmpp-client._tcp
Type: SRV
Value: 5 0 5222 jabber.mafiasi.de.
Name: _xmpp-server._tcp
Type: SRV
Value: 5 0 5269 jabber.mafiasi.de.
Fuer tinydns kann man einen [http://www.anders.com/projects/sysadmin/djbdnsRecordBuilder/#SRV Record Builder] benutzen.
Wenn das geklappt hat sollte es so aussehen:
<pre>
$ dig +short SRV _xmpp-server._tcp.cryptobitch.de
10 100 5269 jabber.mafiasi.de.
$ dig +short SRV _xmpp-client._tcp.cryptobitch.de
10 100 5222 jabber.mafiasi.de.
</pre>
Am ejabberd muss dann <tt>hosts</tt> und evtl. <tt>host_config</tt> wie folgt angepasst werden:
<pre>
{hosts, ["jabber.mafiasi.de", "cryptobitch.de"]}.
{host_config, "cryptobitch.de",
[
  {acl, admin, {user, "muelli", "cryptobitch.de"}}
]
}.
</pre>
Anschliessend muss der Jabberserver neugestartet werden :( Hart. Load_config bringt es nicht.
Nun kann mit <tt>ejabberdctl register muelli cryptobitch.de somepasswort</tt> ein neuer Benutzer registriert werden.
<references />

Version vom 20. Oktober 2010, 21:19 Uhr

JabberLogo.png

Unser aller FSR hat einen Jabber-Server eingerichtet auf dem alle Mitglieder der Fachschaft einen Account bekommen können.

Klicke dazu einfach auf jabber.mafiasi.de, gib deinen RZ-Account-Namen ein und merke dir das Passwort, es wird nur einmal angezeigt! Das gleiche kannst du tun, wenn du dein Passwort vergessen hast.

Nichts geht mehr?

Melde dich nicht im Forum, beim FSR[1] oder anderen obskuren Orten, sondern bei der Jabber-AG: jabber auf informatik punkt uni minus hamburg punkt de.


Features

Virtual Hosting

Wir koennen, aehnlich zu Google Apps, fuer andere Domains Jabber hosten. Insbesondere sind informatik.uni-hamburg.de aber spaeter vielleicht auch stud.uni-hamburg.de (oder so) zu nennen.

Wenn du gerne deine Domain gehosted haben moechtest, schreib an jabber@.


Shared Roster Groups

Du bist in einer Gruppe mit deinem Jahrgang und kannst die Anderen automatisch sehen (und vice versa). Einen huebschen in-band Mechanismus um das zu Verhindern gibt es noch nicht. Entweder jabber@ mitteilen, dass du gerne alleine bleiben moechtest, oder sog. Privacy Lists ueber deinen Client einrichten.



Clients einrichten

Einfach hier nachschauen: https://jabber.rwth-aachen.de/wiki/JUNe/Clients

Es gibt auch ein nettes Bilder Tutorial unter folgender Wiki-Seite: Jabberclients

Der Jabber-Server heißt jabber.mafiasi.de (in die Client-Einstellungen gehört kein "http://"!), eure Jabber-Id ist 9musterma@jabber.mafiasi.de.

Bugs/Todos:

  • Gibt es die Möglichkeit, dass wenn ich die Gruppen Manuell umbenannt hab, er die neuen Leute nicht immer wieder in die alten gruppen schmeißt?
    Da ich Miranda benutze kann ich Untergruppen erstellen--9posdorf 12:19, 3. Nov. 2009 (CET)
    Nein, gibt es nicht. Die Jahrgangsgruppen sind "Shared-Roster-Groups" und existieren auf dem Server nur einmal für alle. Du kannst dir natürlich nach Belieben neue Gruppen erstellen und die umbenennen, verschieben etc. wie du Lustig bist. --ArneKoehn 19:37, 4. Nov. 2009 (CET)
  • scheinbar werden bei einigen Leuten keine Vornamen angezeigt, könnte daran liegen dass sie Pidgin benutzen, bin mir da aber nicht sicher --9posdorf 23:30, 22. Nov. 2009 (CET)]
  • Idealerweise koennte der Benutzer sich seine Domains (sh. Features) in einem zentralen Management (Web?) Interface klicken. Die WebApp muesste dann den ejabberd entsprechend konfigurieren (sh. Intern). Aber wir sollten erstmal etwas Webmaessiges zum Verwalten von Gruppen zusammenkleben. --Muelli 03:21, 14. Apr. 2010 (CEST)
  • Ich wuenschte, ich koennte dem Jabberserver (oder einem Bot oder so) eine Datei via Jabber schicken, die dann ueber einem Webserver fuer eine bestimmte Zeit ausgeliefert wird. Aehnlich, wenn nicht sogar ziemlich genau, zu Jabber-Disk. --Muelli 03:39, 14. Apr. 2010 (CEST)
  • Was haltet ihr davon, eine Jabber-Gruppe "Diplom" einzuführen und dort alle vor 2005 reinzuschieben? Viele Jabber Endgeräte haben kleine Auflösungen und die Gruppen 2000-2004 nehmen mit insgesamt knapp 60 Mitglieder zuviel Platz weg --7kraemer 16:59, 26. Aug. 2010 (CEST)
    • geht so. Das ist nur eine kurzfristige Lösung, denn alle Accounts sind auf Lebenszeit und später (z.B. 2015) hast du wieder so viele und mehr Gruppen, die du nicht alle in "Bachelor" packen kannst. Eine skalierbare, "sliding" Lösung wäre besser. Eine gute Idee fehlt mir aber noch. --134.100.4.31 17:25, 26. Aug. 2010 (CEST)
    • Wie wärs denn wenn nur die neuesten 5Jahrgänge ihre eigene Gruppe haben und alle anderen in eine gemeinsame Gruppe kommen? sowas wie j2000-05 --9posdorf 20:45, 20. Okt. 2010 (CEST)
      • Klingt schon besser. Muss man einmal pro Jahr die Leute des 5., dann 6., Jahrgangs in die Sammelgruppe werfen. Aber zwei Dinge: die Gruppe nicht j2000-05 nennen, sondern einen ewig gültigen Begriff wie "alt" nehmen. Und die zweite Sache ist, dass die neueren Jahrgänge immer mehr Mitglieder haben, also 2015 haben wir immer noch das Problem 690 Leute in einer Gruppe zu haben. Wenn auch wohl weniger aktive Accounts. --3girlich 21:32, 20. Okt. 2010 (CEST)

Autojoin MUC

Wenn jemand zu viel Tagesfreizeit hat, moege er bitte recherchieren, wie man ejabberd2 dazu bringen kann, dass jemand bei der Registrierung einen Chatraum eingetragen bekommt, der erstmal automatisch gejoined wird. Vorzugsweise "Lobby" in der sich dann alle treffen.

Ich hab meine eigene API bekommen, nun kann ejabberdctl den Jabber Private Storage (XEP-0049 IIRC) anzeigen und schreiben. --Muelli 23:32, 14. Apr. 2010 (CEST)

Bookmarks werden im private Storage gespeichert (XEP-0048). Private Storage ist bei ejabberd und mnesia in private_storage. Gut, GAYm^W Pidgin kann das natuerlich nicht: http://developer.pidgin.im/ticket/6353.

Psi macht XEP-0048 ueber die GUI (auf Account klicken -> Bookmarks verwalten) und auch die XML-Console (http://psi-im.org/wiki/Autojoin_MUC).

In Empathy 2.30.1 sollte man zunächst einmal den Raum betreten (z.B. in dem man sich einladen lässt oder über das Menü Raum, Eintrag Betreten...). Danach kann man im Menü Raum den Eintrag Favoriten verwalten aufrufen. Dort macht man hinter dem jew. Raum ein Kreuz bei Autoverbinden.

Ein Bookmark sieht so aus:

{private_storage,
    {"4tmuelle","jabber.mafiasi.de","storage:bookmarks"},
    {xmlelement,"storage",
        [{"xmlns","storage:bookmarks"}],
        [{xmlelement,"conference",
             [{"minimize","0"},
              {"jid","lobby@conference.jabber.mafiasi.de"},
              {"autojoin","1"},
              {"name","lobby"}],
             [{xmlelement,"nick",[],[{xmlcdata,<<"Muelli">>}]}]}]}}.

Man muesste nun einen pragmatischen Web finden, den String in die Mnesia Datenbank zu bekommen.

Am huebschsten waer wohl, wenn ejabberctl ein private_{g,s}et und make_autojoin_muc exportierte.

For the record:

        bookmark  = '''<storage xmlns='storage:bookmarks'><conference minimize='0' jid='lobby@conference.jabber.mafiasi.de' autojoin='1' name='lobby'><nick>%s</nick></conference></storage>'''
        bookmark %= account.name
        ejabberdctl('private_set', {'user':account.name,
                                    'host':'jabber.mafiasi.de',
                                    'element':bookmark})
Im Prinzip fertig, denke ich. Man muesste noch dokumentieren, dass es dem Client frei steht, sein bookmark zu loeschen. Man koennte auch ueber OE Gruppen nachdenken. Und dann hier die Seite bisschen aufraeumen. --Muelli 23:32, 14. Apr. 2010 (CEST)

Was wird eigentlich gespeichert?

  • Offline-Nachrichten (Nachrichten, die du Leuten schickst, die offline sind und umgekehrt. Werden nach dem Empfang gelöscht)
  • Zusätzliche Roster-Einträge (Leute von anderen Jabber-Servern, die du auf deiner Kontaktliste hast)
  • Eigene eingerichtete Gruppen (sind im Prinzip auch Roster-Einträge)
  • History von MUC-Chatrooms, sofern in der Raumkonfiguration eingestellt (nur die letzten n Nachrichten, n ∈ ℕ, n einstellbar) - öffentlich einsehbar, sofern der Raum öffentlich ist
  • Deine RZ-Kennung sowie dein Jabber-Passwort und Jahrgangszugehörigkeit
  • Daten, die du auf deiner vCard angibst - öffentlich einsehbar
  • Deine Privacy Lists (XEP-0016) sofern welche erstellt
  • Der Zeitpunkt, an dem du zuletzt online warst

Wer hat alles administrativen Zugriff auf den Jabberserver?

Warum Jabber?

Mit Jabber kann man, wie mit ICQ, MSN oder so auch, Instant Messaging machen. Warum sollte man sich nun aber von diesen Loesungen abwenden und Jabber benutzen? Nun, darauf gibt es sehr viele Antworten und es gibt viele Seiten im Netz, die genau diese Frage diskutieren.

Die wichtigsten Gruende, Jabber anstatt ICQ, etc.. zu nutzen sind wohl aber

  • Sicherheit: Im Gegensatz zu ICQ koennen Passwoerter und Nachrichten verschluesselt, also nicht im Klartext uebertragen werden, sodass keiner die Nachrichten mitlesen kann.
  • Clientvielfalt: Da Jabber ein freies und offenes Protokoll ist, ist es sehr gut dokumentiert. Das ermoeglicht Programmierern, einen Jabberclient zu schreiben. Somit gibt es eine Vielzahl an Programmen, mit denen man Jabber sprechen kann. Und das auf saemtlichen Plattformen und Betriebssystemen
  • AGB: Jabber ist frei und gehoert keiner Firma. Somit kann keiner, wie bei ICQ, fiese AGB festlegen denen du zustimmen musst, bevor du das Programm oder Protokoll nutzen kannst.


Hier einige Seiten, die dieses Thema diskutieren:


Intern

ejabberd

Wir benutzen ejabberd, der unter einem "ejabberd" Benutzer in /usr/local/ laeuft. Der Benutzer hat kein Passwort und keine SSH PublicKeys. Somit kann also nur root in den ejabberd Benutzerkontext eintreten. Oder Hacker die den ejabberd aufmachen ;)

Neue Domain

Um ejabberd fuer eine neue Domain (bspw. cryptobitch.de) zu konfigurieren sind im Prinzip folgende Schritte noetig:

Die Domain muss xmpp SRV records haben:

Name: _xmpp-client._tcp
Type: SRV
Value: 5 0 5222 jabber.mafiasi.de.
Name: _xmpp-server._tcp
Type: SRV
Value: 5 0 5269 jabber.mafiasi.de.

Fuer tinydns kann man einen Record Builder benutzen.

Wenn das geklappt hat sollte es so aussehen:

$ dig +short SRV _xmpp-server._tcp.cryptobitch.de
10 100 5269 jabber.mafiasi.de.
$ dig +short SRV _xmpp-client._tcp.cryptobitch.de
10 100 5222 jabber.mafiasi.de.

Am ejabberd muss dann hosts und evtl. host_config wie folgt angepasst werden:

{hosts, ["jabber.mafiasi.de", "cryptobitch.de"]}.
{host_config, "cryptobitch.de",
 [
  {acl, admin, {user, "muelli", "cryptobitch.de"}}
 ]
}.

Anschliessend muss der Jabberserver neugestartet werden :( Hart. Load_config bringt es nicht.

Nun kann mit ejabberdctl register muelli cryptobitch.de somepasswort ein neuer Benutzer registriert werden.


  1. Natürlich kennt der FSR notfalls Leute, die dir bei Jabber-Problemen helfen könnten.