Unterschiede zwischen den Revisionen 12 und 13
Revision 12 vom 2012-06-13 21:26:25
Größe: 5762
Autor: anonym
Kommentar: converted to 1.6 markup
Revision 13 vom 2022-11-25 21:20:12
Größe: 0
Autor: phil
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 1: Zeile 1:
## page was renamed from NeofaxeJabber
<<TableOfContents>>

-----
= Was ist das hier =
Diese Seite beschreibt die Installation und Einrichtung des Jabber-Servers ''jabberd 1.4.x'' unter Debian GNU/Linux. Sie ist teilweise darauf abgestimmt, dass unser Jabber-Server in einem [[FaxeUML|UML]] laeuft. Andere Bereiche beziehen sich auf die Einrichtung des Jabber-Clients [[http://psi.affinix.com/|PSI]].<<BR>>
Die vollstaendige Dokumentation zum Server befindet sich [[http://jabberd.jabberstudio.org/1.4/doc/adminguide|hier]].

= Daten fuer die Faxe-Administration =
||UML||jabber||
||Version||1.4.3-3||
||Hostname||neofaxe.nodes.systemausfall.org||
||lokale IP||10.0.0.32||
||Speicheort des Zertifikats||/etc/jabber/cert/key-cert.pem||

= Begriffe und Variablen =
Die Variablen muessen durch eintsprechende Eintraege ersetzt werden.
||$HOSTNAME||Adresse des Servers (siehe Beispiel oben)||
||$LOKALE_IP||lokale IP Adresse||
||$SPEICHERORT_ZERTIFIKAT||Speicherort des SSL-Zertifikats||
||$UID||eine User-ID||

----

= Installation =

{{{apt-get install jabber
}}}

= Einrichtung =

In ''/etc/jabber/jabber.cfg'' den hostname eintragen:
{{{JABBER_HOSTNAME=$HOSTNAME
}}}

In ''/etc/jabber/jabber.xml'':
{{{<host><jabberd:cmdline flag="h">$HOSTNAME</jabberd:cmdline></host>
}}}

== SSL aktivieren ==
''/etc/jabber/jabber.xml'' bearbeiten:
{{{
<ssl port='5223'>$LOKALE_IP</ssl>

<ssl>
  <key ip='$LOKALE_IP'>$SPEICHERORT_ZERTIFIKAT</key>
</ssl>
}}}

Im Verzeichnis ''/etc/jabber/cert/'' liegt die Datei ''key-cert.pem'' - diese muss den Schluessel des Servers enthalten.

== Server2Server Kommunikation ausschalten ==
Wer einen elitaeren Server betreiben will, sollte die Server-to-Server Kommunikation ausschalten. Sie verhindert, dass die Nutzer des Servers mit den Nutzern anderer Server in Kontakt treten koennen (und umgekehrt):

[[http://jabberd.jabberstudio.org/1.4/doc/adminguide#intranet-s2s|s2s auschalten]]

== Kennwort unverschlüsselt übermitteln ==
Ist in der Nutzerkonto-Einstellung unter Verbundung zu aktivieren.
Durch die SSL-Verbindung ist das Kennwort bei der Übertragung trotzdem geschützt, auf dem Server wird es dann verschlüsselt abgelegt

== Server-Admins festlegen ==

In ''/etc/jabber/jabber.cml'' gibt es den Abschnitt {{{<admin>}}}:
{{{
<admin>
  <read>$UID@$HOSTNAME</read>
  <write>$UID@$HOSTNAME</write>
  ...
}}}

''$UID'' und ''$HOSTNAME'' entsprechend Ersetzen. Leserechte erlauben das Lesen von an Admins gerichteten Nachrichten der User; Schreibrechte dass Verschicken von Nachrichten an alle User und von 'Nachrichten des Tages' (motd).

Weitere Informationen [[http://jabberd.jabberstudio.org/1.4/doc/adminguide#admin-privs|hier]].

== Abschaltung der automatischen Nutzeranmeldung ==
Dies verhindert, dass sich Leute beim jabberserver ein neues Konto anlegen können.
Dazu müssen in der ''/etc/jabber/jabber.xml'' zwei Blöcke auskommentiert werden (mit ''<!-- ... -->'').

{{{ <register notify="yes">
        <instructions>
        Choose a username and password to register with this server.
        </instructions>
        <name/>
        <email/>
  </register>}}}

{{{
  <mod_register>./jsm/jsm.so</mod_register>}}}

== Einrichtung der Multi-User-Conference (muc) ==

{{{apt-get install jabber-muc
}}}

Grundsaetzlich gibt es zwei Moeglichkeiten muc einzubinden:
 1. muc extern: ein gesonderter jabberd-Prozess wird gestartet
 2. muc intern: kein extra jabberd-Prozess wird benoetigt; muc laueft innerhalb des Haupt-Prozesses

Der Debain-Weg fuer ''2.'' sieht so aus:

 * ''/etc/default/jabber-muc'' editieren und ''set ENABLED'' auf ''1'' setzen
 * ''etc/jabber/jabber.xml'' editieren und folgenden Abschnitt hinzufuegen:
{{{
 <service id="muclinker">
    <host>conference.localhost</host>
    <accept>
      <ip>127.0.0.1</ip>
      <port>31518</port>
      <secret>secret</secret>
    </accept>
  </service>
}}}

Soll dieser Service auch von anderen Jabber-Servern aus erreichbar sein, so muss ''localhost'' durch $HOSTNAME ersetzt werden.

Weiterhin zu ''etc/jabber/jabber.xml'' im Abschnitt {{{<browse>}}} folgendes hinzufuegen:
{{{
<item category="conference" type="public" jid="conference.localhost"
   name="Public Conferencing" version="0.5.2">
  <ns>jabber:iq:register</ns>
  <ns>gc-1.0</ns>
  <ns>http://jabber.org/protocol/muc</ns>
</item>
}}}

Sofern du Aenderungen an diesen beiden Bloecken vornimmst, musst du diese Aenderungen auch in ''/etc/jabber/jabber-muc.xml'' vornehmen. Alle weiteren Einstellungen bezueglich muc kannst du ebenfalls in dieser Datei vornehmen.

== Jabber User Directory (jud) abschalten ==

In ''/etc/jabber/jabber.xml'' auskommentieren:

{{{
<!-- jud ausschalten
        <service type="jud" jid="users.jabber.org" name="Jabber User Directory">
          <ns>jabber:iq:search</ns>
          <ns>jabber:iq:register</ns>
        </service>
-->
}}}


= Hints =
 * "jabberd -D" starten, gibt barbarische meldung ueber evtl. Fehler (mit -h den hostname uebergeben)
 * /etc/init.d/jabber stop reicht meist nicht - {{{killall jabberd}}} hilft
 * Laut [[http://mail.jabber.org/pipermail/mu-conference/2004-May/000194.html|dieser]] Seite und eigenen Tests gibt es ein Problem mit PSI und der ''Invite User'' Funktion fuer Chatrooms. Moeglichst vermeiden, da ansonsten die Meldung ''user is not in the room'' erscheint und geschriebene Nachrichten ins Leere laufen. Ein [[https://systemausfall.org/trac/sao/ticket/36|Ticket]] existiert bereits.

Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.