


leafnode(8)                                           leafnode(8)


BEZEICHNUNG
       leafnode   -   ein  NNTP  server  fr  kleine  Sites  (mit
       Whlverbindung)


SYNTAX
       leafnode


BESCHREIBUNG
       Leafnode ist ein  USENET-Software-Paket,  das  fr  kleine
       Sites  gedacht   ist,  wo  es  wenige User und nur geringe
       Festplatten-Kapazitt gibt, aber trotzdem eine groe  Zahl
       von Gruppen gewnscht wird.

       Leafnode ist so designt, da es Fehler selbstndig repari
       eren und keinerlei manuelle Pflege bentigen soll.

       Das leafnode -Programm selbst ist der NNTP-Server. Es wird
       von  /etc/inetd.conf  gestartet,  wenn  jemand  News lesen
       mchte. Die anderen Teile des Paketes, fetchnews und  tex
       pire  ,  sind dafr zustndig, News von anderen Servern zu
       holen und nach einer gewissen Zeit zu lschen.


ZUGANGSKONTROLLE
       Leafnode   bietet   keinerlei   Autentifizierungs-    oder
       Zugangskontrolle  an.  Eine  solche zu implementieren, ist
       eine Aufgabe, die nicht fr  jeden  einzelnen  Dienst  neu
       vorgenommen werden sollte.

       Ich empfehle stattdessen, da zu diesem Zweck entweder ein
       firewall oder tcpd zum Einsatz kommen sollte.


DATEIEN UND VERZEICHNISSE
       Fr alle folgenden Dateien und Verzeichnisse mu der  User
       "news" Schreibrechte besitzen.

       /etc/leafnode/config enthlt die Konfigurationseinstellun
       gen fr leafnode.(s. a.  KONFIGURATION )

       /var/spool/news enthlt die News-Artikel, so enthlt  z.B.
       das    Verzeichnis   /var/spool/news/alt/fan/agulbra   die
       Artikel der Newsgruppe alt.fan.agulbra. Jedes  Verzeichnis
       enthlt  die  Artikel  in  durchnumerierten Dateien (Dezi
       malzahlen, streng monoton  steigend)  und  eine  spezielle
       Datei  .overview  ,  die die "Subject"-, "From"-, "Date"-,
       "Message-ID"-, "References"-, "Bytes"- und  "Lines"-Header
       fr jeden einzelnen Artikel der Gruppe enthlt.

       Mehrere Unterverzeichnisse haben spezielle Aufgaben:

       /var/spool/news/leaf.node  enthlt diejenigen Dateien, die
       leafnode whrend des Betriebs  anlegt,  zum  Beispiel  die
       groupinfo-Datei  ,  die  Informationen  ber jede einzelne
       USENET-Gruppe enthlt. Diese Datei wird von fetchnews  (8)
       erstellt,  Sie  knnen diese Datei jederzeit neu erstellen
       lassen, indem Sie fetchnews mit dem Parameter -f  aufrufen
       (s.  fetchnews (8)).

       /var/spool/news/out.going  enthlt lokale Artikel, die von
       fetchnews (8) an den Upstream-Server weitergereicht werden
       sollen.

       /var/spool/news/failed.postings  enthlt  lokale Postings,
       die vom Upstream-Server zurckgewiesen wurden.   Fetchnews
       erstellt  Dateien in diesem Verzeichnis, allerdings lscht
       keines der leafnode -Programme dort Dateien.

       /var/spool/news/message.id enthlt harte  Links  zu  jedem
       Artikel;  dies  ersetzt  die  dbz  Datenbank,  die grere
       Server einsetzen. (Ein solches Verzeichnis ist auf kleinen
       Servern,   fr  die  leafnode  gedacht  ist,  effizienter,
       skaliert dafr aber sehr schlecht.)

       /var/spool/news/interesting.groups  enthlt   pro  Gruppe,
       die ein NNTP-Klient angefordert hat, eine Datei.  Leafnode
       fhrt die Operation touch(1) auf die relevante Datei  aus,
       wenn  ein  LISTGROUP-,  XOVER-, XHDR-, STAT-, HEAD-, BODY-
       oder ARTICLE-Befehl direkt nach  einem  GROUP-Befehl  aus
       gefhrt  wird.   fetchnews (8) ldt die Artikel derjenigen
       Gruppen, auf deren Dateien entweder

              - innerhalb der letzten zwei Tage, oder

              - mehr als einmal und mindestens einmal in der ver
              gangenen Woche zugegriffen wurde.

       /etc/inetd.conf  enthlt  die Zeile, die leafnode startet.
       Es wird  dringend  angeraten,  leafnode  vom  User  "news"
       starten zu lassen.


KONFIGURATION
       Die  komplette Konfiguration wird in der Datei /etc/leafn
       ode/config vorgenommen. Es gibt kein graphisches Werkzeug,
       um leafnode zu konfigurieren.

       Die Datei hat eine Art Unix-Standard-Format: Nur ein Argu
       ment pro Zeile, Kommentare werden durch # eingeleitet  und
       durch  das  Zeilenende  beendet.  Im  Folgenden werden die
       mglichen Parameter anhand einiger Beispiele erklrt.

       OBLIGATORISCHE PARAMETER

       server = news02.bigprovider.com
              "server"  wird  von  fetchnews  (8)   benutzt,   um
              festzustellen, von welchem Server es News herunter
              laden und wohin es neue Artikel  posten  soll  (der
              primre   News-Server).  Sie  brauchen  auf  diesem
              Server Lese- und Schreibrechte.  Im obigen Beispiel
              ist news02.bigprovider.com der primre News-Server.


       expire = 5
              "expire" ist die Anzahl der Tage,  die  ein  Thread
              aufbewahrt werden soll. Im Beispiel wird ein Thread
              fnf Tage, nachdem er zuletzt gelesen wurde,  durch
              texpire gelscht.

       SERVERABHNGIGE OPTIONALE PARAMETER

       supplement = sex.and.warez.com
              Sie  knnen weitere, ergnzende Newsserver angeben,
              von  denen  leafnode  versuchen  wird,  Artikel  zu
              laden.  Es  ist  mglich,  mehr  als einen weiteren
              News-Server anzugeben. Wenn Sie  das  Recht  haben,
              ber  diese  Server  zu posten, werden Ihre Artikel
              auch an diese Server weitergegeben.

       username = meinname
              Wenn einer Ihrer News-Server eine Authentifizierung
              erwartet,  knnen  Sie  hier  Ihren  Usernamen  auf
              diesem System eingeben. Dieses Feld  darf  mehrmals
              erscheinen, einmal nach jeder Server-Definition.

       password = meinpasswort
              Wenn einer Ihrer News-Server eine Authentifizierung
              erwartet, knnen Sie hier Ihr  Pawort  auf  diesem
              System   eingeben.   Dieses   Feld   darf  mehrmals
              erscheinen, einmal nach jeder Server-Definition. Da
              das Pawort im Klartext angegeben wird, ist es rat
              sam, die Rechte an der config-Datei  so  stark  wie
              mglich  einzuschrnken,  da  sonst andere Benutzer
              Ihres Rechners Ihr/e Pawort/Pawrter herausfinden
              knnten.

       timeout = 30
              Normalerweise  versucht  leafnode 10 Sekunden lang,
              mit einem Server Verbindung  aufzunehmen  und  gibt
              diesen  Versuch  dann auf. Wenn Sie einen langsamen
              Server haben, knnen Sie leafnode mehr  Zeit  dafr
              geben,  indem  Sie  timeout  auf einen hheren Wert
              setzen (im Beispiel 30  Sekunden).  "timeout"  kann
              fr jeden server einzeln angepat werden.

       nodesc = 1
              Manche  Server liefern die Beschreibungen der News
              groups nicht korrekt an, da  sie  das  "LIST  NEWS
              GROUPS"-Kommando  nicht  verstehen.  Fgen  Sie  in
              diesem Fall nach dem  "server"/"supplement"-Eintrag
              diese Zeile ein.

       port = 8000
              Mit  den  Grundeinstellungen versucht leafnode sich
              mit dem Upstream-Server ber den NNTP-Port (119) zu
              verbinden.  Wenn  ihr Server auf einem anderen Port
              luft, knnen Sie ihn  hier  angeben.  Dieses  Feld
              darf mehrmals erscheinen, einmal nach jeder Server-
              Definition.

       SERVERUNABHNGIGE OPTIONALE PARAMETER

       hostname = host.domain.country
              leafnode  generiert  die   Message-ID   ausgehender
              Artikel   aus  dem  Namen  Ihres  Rechners.  Manche
              Upstream-Server  verlangen  allerdings  Message-IDs
              einer bestimmten Art. In diesem Fall knnen Sie den
              Teil der Message-ID nach dem @ auf einen beliebigen
              Wert  setzen.  Die  Verwendung  von  "hostname" zur
              Erzeugung  einer  Phantasie-Message-ID   ist   zwar
              mglich, ich rate aber dringend davon ab.

       create_all_links = 1
              blicherweise  speichert  fetchnews  Artikel nur in
	      den Newsgruppen,   die   in  
	      /var/spool/news/interesting.groups  vorhanden  sind, 
	      wenn Sie create_all_links  auf  1  setzen, erstellt
	      fetchnews jedoch  fr  jede  Newsgruppe,  die es im  
	      "Newsgroups:"-Header findet,  einen   harten  Link.
	      Dies kann  interessant fr Sie  sein, wenn  Sie ein 
	      Score-  oder   Kill-File  auf  den   "Xref:"-Header  
	      anwenden mchten.

       maxfetch = 1000
              "maxfetch"  begrenzt  die  Anzahl  der Artikel, die
              fetchnews(8) vom  Upstream-Server laden  darf.  Die
              Benutzung  dieses  Parameters  ist  jedoch nicht zu
              empfehlen, da Sie sonst nicht  alle  Artikel  einer
              Gruppe  bekommen.  In  der Grundeinstellung gibt es
              keine Obergrenze.

       initialfetch = 1
              "initialfetch" beschrnkt die Anzahl  der  Artikel,
              die  von  einer  vorher noch nicht bezogenen Gruppe
              geladen werden sollen.  Normalerweise  werden  alle
              alten   Artikel   geladen,   was   allerdings  sehr
              zeitaufwendig werden kann, wenn  in  dieser  Gruppe
              sehr   viele   Artikel   gepostet   werden.    Dies
              entspricht einem Wert von 0 fr initialfetch;  wenn
              Sie  keine  alten Artikel empfangen mchten, setzen
              Sie den Wert, wie im Beispiel, auf 1.

       groupexpire sehr.volle.Gruppe = 1

       groupexpire sehr.volle.Hierarchie.* = 1
              "groupexpire" macht  es  mglich,  unterschiedliche
              Haltezeiten  fr  verschiedene Gruppen festzulegen.
              Die Haltezeit wird in  Tagen  angegeben,  der  Wert
              wird  von  texpire (8) benutzt. Sie knnen so viele
              groupexpire-Eintrge anlegen wie  Sie  mchten  und
              dabei glob (7)-Wildcards verwenden.

       maxage = 10
              Wenn ein Artikel auf dem Upstream-Server auftaucht,
              der lter als "maxage" Tage ist, wird er von fetch
              news  nicht  geladen, auch wenn er noch nicht lokal
              vorhanden  ist.  Dies  ist   ntzlich,   wenn   Ihr
              Upstream-Server   gelegentlich   den   'Schluckauf'
              bekommt. Die Standardeinstellung betrgt  10  Tage;
              wenn  Sie  maxage  deaktivieren mchten, tragen Sie
              einen mglichst groen Wert ein, z. B. 100000 (also
              ca. 270 Jahre)

       maxlines = 2000
              Wenn  Sie  es vermeiden mchten, sehr groe Artikel
              zu laden, setzen Sie den  "maxlines"-Parameter  auf
              die  Anzahl  der  Zeilen, die ein Artikel hchstens
              haben darf. blicherweise ist dieses Feature  deak
              tiviert.

       minlines = 2
              Manchmal  werden  Newsgruppen  mit  leeren Artikeln
              geflutet. Um solche Artikel abzuweisen, knnen  sie
              "minlines"  verwenden.  "minlines"  auf  einen Wert
              grer als 4 zu setzen,  ist  wahrscheinlich  keine
              gute  Idee,  da  dann  u.  U.  auch  echte  Artikel
              abgelehnt werden knnten.  blicherweise ist dieses
              Feature deaktiviert.

       maxbytes = 100000
              Wenn Sie groe Artikel ablehnen mchten, knnen Sie
              statt "maxlines" auch  "maxbytes"  verwenden.  Auch
              dieses Feature ist normalerweise deaktiviert.

       maxcrosspost = 5
              Wenn  Sie  Spam  bekmpfen mchten, knnen Sie alle
              Artikel filtern, die ber mehr  als  "maxcrosspost"
              Gruppen  crossgepostet  werden.  Den Wert von "max
              crosspost" zu niedrig anzusetzen ist wahrscheinlich
              keine  gute  Idee.  Auch  dieses  Feature ist stan
              dardmig deaktiviert.

       filterfile = /etc/leafnode/filter
              leafnode kann die Header eingehender  Artikel  nach
              regulren  Ausdrcken  filtern, die in "filterfile"
              gespeichert sind. Das Format dieser Filterdatei ist
              einfach,   ein   regulrer   Ausdruck   pro  Zeile.
              Entspricht einer der regulren Ausdrcke dem Header
              eines  eingehenden  Artikels,  wird der Body dieses
              Postings abgelehnt. Dieses  Feature  ist  blicher
              weise deaktiviert.

       timeout_short = 2
              Normalerweise  wird  eine  Gruppe, die nur zufllig
              abonniert wurde, 2 Tage lang bezogen.  Hier  knnen
              Sie diese Zeit abndern.

       timeout_long = 7
              Normalerweise  wird  eine  Gruppe,  die  nicht mehr
              gelesen wird, noch sieben Tage lang bezogen.  Diese
              Zeitspanne kann hier gendert werden.

       timeout_active = 90
              Normalerweise wird das Active-File alle 90 Tage vom
              Upstream-Server  gezogen.   Dieser   Abstand   kann
              verndert  werden, indem Sie "timeout_active" einen
              anderen Wert zuweisen. Bedenken sie dabei aber, da
              beim  Laden  des Active-Files von einem Server, der
              ca 20000 Gruppen vorrtig hat, rund ein Megabyte an
              Informationen bertragen werden.

       delaybody = 1
              Wenn  dieser  Parameter gesetzt ist, ldt fetchnews
              (8) nur die Header eines Artikels zur Ansicht. Nur,
              wenn  die Header gelesen werden, ldt fetchnews (8)
              beim nchsten Start auch den Body des Postings. Sie
              knnen so Plattenplatz und On-Line-Zeit sparen.

       debugmode = 1
              Wenn  Sie diesen Parameter angeben, geben fetchnews
              (8), texpire (8) und leafnode (8)  Debugging-Infor
              mationen   via  syslog  (8)  nach  news.debug  aus.
              Benutzen Sie diese Option, wenn  Sie  Probleme  mit
              Ihrem Feed haben.

PROTOKOLL
       leafnode untersttzt die folgenden NNTP-Befehle.

       ARTICLE
              Gibt die Header und den Body eines Artikels zurck.
              leafnode   untersttzt    diesen    Befehl    nicht
              vollstndig.  Die  Message-ID und die Artikelnummer
              drfen nicht in der  Reply-Zeile  erscheinen.  Dies
              berhrt jedoch keinen getesteten Newsreader.

       BODY   Gibt den Body eines Artikels zurck. (s.  ARTICLE )

       GROUP  Setzt den Gruppen- und Artikel-Zeiger und gibt  die
              Statusinformationen der betreffenden Gruppe zurck.

       HEAD   Gibt die Header eines Artikels zurck.  (s.   ARTI
              CLE)

       HELP   Der  Befehl  wird  akzeptiert,  die  Ausgabe drfte
              allerdings nicht sehr hilfreich sein.

       IHAVE
              Der Befehl ist leafnode  zwar  bekannt,  wird  aber
              zurckgewiesen (s.  fetchnews (8)).

       LAST   Setzt den Artikel-Zeiger um eins zurck.

       LIST   Zeigt eine Liste der verfgbaren Newsgruppen an.

       LIST OVERVIEW.FMT
              Zeigt einige Erweiterungen an.

       LISTGROUP
              Zeigt  entweder  die  Artikel der aktuellen Gruppe,
              oder, falls der Name eine Newsgruppe  als  Argument
              bergeben  wird, die Artikel der angegebenen Gruppe
              an.

       MODE   Wird zwar akzeptiert, aber ignoriert.

       NEWGROUPS
              Zeigt neu angelegte Newsgruppen an.

       NEWNEWS
              Wird zwar akzeptiert, liefert aber nur  eine  leere
              Antwort  zurck.   Dieser Befehl macht fr leafnode
              keinen Sinn.

       NEXT   Setzt den Artikel-Zeiger um eins vor.

       POST   Postet einen neuen Artikel, dabei wird  die  Syntax
              nur drftig berprft.  fetchnews (8) sendet diesen
              Artikel dann zum Upstream-Server.

       QUIT   Beendet das Lesen von News.

       SLAVE
              Wird akzeptiert, aber ignoriert.

       STAT   Zeigt die  Verfgbarkeit  eines  Artikels  an.  (s.
              ARTICLE )

       XHDR   Wird  akzeptiert,  untersttzt  aber  nur die "Sub
              ject"-, "From"-,  "Date"-,  "Message-ID"-,  "Refer
              ences"-, "Bytes"- und "Lines"-Header.

       XOVER  Gibt  die  "Subject"-,  "From"-, "Date"-, "Message-
              ID"-, "References"-,  "Bytes"-  und  "Lines"-Header
              des angegebenen Artikels zurck.

       Die  restlichen  Befehle,  die  im NNTP-RFC angegeben sind
       oder von anderen Servern hinzugefgt wurden, werden  nicht
       untersttzt,  um leafnode einfach und fehlerfrei zu erhal
       ten.

BUGS
       Keine bekannt.

AUTOR
       Die ersten Versionen von leafnode  wurden  von  Arnt  Gul
       brandsen  <agulbra@troll.no>  geschrieben;  Copyright 1995
       Troll Tech AS, Postboks 6133 Etterstad, 0602 Oslo, Norway,
       fax +47 22646949.

       Weiterentwickelt  wurde  leafnode  von  Cornelius   Krasel
       <krasel@wpxx02.toxi.uni-wuerzburg.de>,   Randolf    Skerka
       <Randolf.Skerka@gmx.de>      und     Markus    Enzenberger
       <enz@cip.physik.uni-muenchen.de>.    Copyright   (an   den
       Vernderungen) 1997-1999.

       Die  ursprngliche  Entwicklung  wurde  durch  Uninett  AS
       (http://www.uninett.no/) finanziert.

       Deutsche   bersetzung:   Alexander   Reinwarth   <a.rein
       warth@gmx.de>

SIEHE AUCH
       tcpd(8),   hosts.allow(5),  fetchnews(8),  texpire(8),  
       checkgroups(8), glob(7), RFC 977
