.TH leafnode 8 "@VERSION@" leafnode \" -*- nroff -*-
.\" DO NOT EDIT: @configure_input@
.\"
.\" Written by Arnt Gulbrandsen <agulbra@troll.no> and copyright 1995 Troll
.\" Tech AS, Postboks 6133 Etterstad, 0602 Oslo, Norway, fax +47 22646949.
.\"
.\" Use, modification and distribution is allowed without limitation,
.\" warranty, or liability of any kind.
.\"
.\" $Id: leafnode.8.in,v 1.43 2005/06/07 20:26:01 emma Exp $
.\"
.\" hilit19 is stupid: "

.SH NAME
leafnode \- ein NNTP server f�r kleine Sites (mit W�hlverbindung)

.SH �BERSICHT
.B leafnode

.SH BESCHREIBUNG
.B Leafnode
ist ein USENET-Software-Paket, das f�r kleine Sites gedacht ist, wo
es wenige User und nur geringe Festplatten-Kapazit�t gibt, aber
trotzdem eine gro�e Zahl von Gruppen gew�nscht wird.
.PP
.B Leafnode
ist so entworfen, dass es Fehler selbst�ndig reparieren und keinerlei
manuelle Pflege ben�tigen soll.
.PP
Das
.B leafnode
-Programm selbst ist der NNTP-Server. Es wird von
.BR inetd (8),
.BR xinetd (8)
oder
.BR tcpserver
gestartet, wenn jemand News lesen m�chte. Die anderen Teile des
Paketes,
.B fetchnews
und
.B texpire,
sind daf�r zust�ndig, News von anderen Servern zu holen und nach
einer gewissen Zeit zu l�schen.

.SH ZUGANGSKONTROLLE
.B Leafnode
bietet keinerlei Authentifizierungs- oder Zugangskontrolle an. Eine
solche zu implementieren, ist eine Aufgabe, die nicht f�r jeden
einzelnen Dienst neu vorgenommen werden sollte.
.PP
.B Es ist daher dringendst anzuraten, externe Zugangskontrolle per
.B tcpd, inetd/xinetd mit libwrap-Unterst�tzung, tcpserver mit \-x
.B oder vergleichbarer Funktionalit�t einzurichten.
tcpd und libwrap sind Bestandteil des \fBtcp_wrappers\fR Pakets von
Wietse Venema.
.PP
Als grobe sichernde Ma�nahme gegen Mi�brauch verweigert
.B leafnode
Verbindungen, die nicht von einem lokalen Netz (LAN) stammen.  Dies kann
in der Konfiguration ausgestellt werden, ist aber nicht anzuraten (siehe
Option allowstrangers), da die Gefahr von Mi�brauch ohne weitere
Sicherungsma�nahmen sehr gro� ist.

.SH DATEIEN UND VERZEICHNISSE

F�r alle folgenden Dateien und Verzeichnisse mu� der User "news"
Leserechte besitzen.  Es wird angeraten, falls im weiteren nicht anders
angegeben, da� "news" der einige Benutzer in der Gruppe "news" sein sollte
und die Dateien "root:news" (Benutzer root, Gruppe news) geh�ren sollten,
so da� die Konfiguration- und Filterdateien von leafnode nicht ge�ndert
werden k�nnen.
.PP
.I @msysconfdir@
sollte f�r den Benutzer "news" nicht beschreibbar, f�r die Gruppe "news" aber
les- und ausf�hrbar sein (g+ux).
.PP
.I @msysconfdir@/config
enth�lt die Konfigurationseinstellungen f�r
.B leafnode.
Diese Datei \fBdarf nicht\fR schreibbar sein f�r den Benutzer "news".  Setzen
Sie diese Datei auf mode 640, Besitzer root:news.  Siehe auch KONFIGURATION
unten.
.PP
.I @SPOOLDIR@
mu� f�r den Benutzer "news" les- und schreibbar sein.
Es enth�lt die News-Artikel, so enth�lt z.\ B. das Verzeichnis
.I @SPOOLDIR@/alt/fan/agulbra
die Artikel der Newsgruppe alt.fan.agulbra. Jedes Verzeichnis enth�lt
die Artikel in durchnumerierten Dateien (Dezimalzahlen, streng monoton
steigend) und eine spezielle Datei
.I .overview
, die die "Subject"-, "From"-, "Date"-, "Message\-ID"-, "References"-,
"Bytes"- und "Lines"-Header f�r jeden einzelnen Artikel der Gruppe
enth�lt.
.PP
Mehrere Unterverzeichnisse haben spezielle Aufgaben:
.PP
.I @SPOOLDIR@/leaf.node
enth�lt diejenigen Dateien, die
.B leafnode
w�hrend des Betriebs anlegt, zum Beispiel die
.BR groupinfo-Datei
, die Informationen �ber jede einzelne
USENET-Gruppe enth�lt. Diese Datei wird von
.BR fetchnews
(8) erstellt,
Sie k�nnen diese Datei jederzeit neu erstellen lassen, indem
Sie
.BR fetchnews
mit dem Parameter \-f aufrufen (s.
.BR fetchnews
(8)).
.PP
.I @SPOOLDIR@/out.going
enth�lt lokale Artikel, die von
.BR fetchnews
(8) an den Upstream-Server weitergereicht werden sollen. W�hrend ein
Posting von einem Newsreader empfangen wird, ist das Leserecht f�r den
Benutzer "News" nicht gesetzt (u\-r). Nachdem ein Posting erfolgreich in
dieses Verzeichnis geschrieben wurde, wird das Leserecht f�r die Datei
gesetzt (u+r).
.BR fetchnews(8)
interpretiert dieses Recht als "dieses Posting darf ver�ffentlicht
werden", um zu verhindern, dass Postings verschickt werden, die noch
nicht vollst�ndig empfangen worden sind. Hinweis: Versionen von 1.9.23
bis 1.9.32 einschlie�lich haben statt des Leserechts das Recht zur
Ausf�hrung (u+x) benutzt. Wegen Unvertr�glichkeiten (Artikel werden von
Leafnode nicht weitergeleitet) nach Updates von Versionen vor 1.9.23
wurde mit Version 1.9.33 auf Leserecht umgestellt, damit sind alle von
�lteren leafnode-1.9-Versionen vertr�glich.
.PP
.I @SPOOLDIR@/failed.postings
enth�lt lokale Postings, die vom Upstream-Server zur�ckgewiesen
wurden.
.BR Fetchnews
erstellt Dateien in diesem Verzeichnis, allerdings l�scht keines der
.BR leafnode
-Programme dort Dateien.
.PP
.I @SPOOLDIR@/message.id
enth�lt harte Links zu jedem Artikel; dies ersetzt die
.B dbz
Datenbank,
die gr��ere Server einsetzen. (Ein solches Verzeichnis ist auf kleinen
Servern, f�r die
.BR leafnode
gedacht ist, effizienter, skaliert daf�r aber sehr schlecht.)
.PP
.I @SPOOLDIR@/interesting.groups
enth�lt pro Gruppe, die ein NNTP-Klient angefordert hat, eine Datei.
.BR Leafnode
aktualisiert die \fBctime\fR (ls\ \-l zeigt normalerweise die
\fBmtime\fR, versuchen Sie ls\ \-lc) der zugeh�rigen Datei, wenn ein
LISTGROUP-, XOVER-, XHDR-, STAT-, HEAD-, BODY- oder ARTICLE-Befehl
nach einem GROUP-Befehl ausgef�hrt wird, oder wenn ein GROUP- oder
LIST\ ACTIVE-Befehl f�r eine bereits "interessante" (bestellte) Gruppe
ausgef�hrt wird. LIST\ ACTIVE mit Muster frischt bestehende Bestellungen
nicht auf.
.BR fetchnews
(8) l�dt die Artikel derjenigen Gruppen, auf deren Dateien entweder
.IP
- innerhalb der letzten zwei Tage, oder
.IP
- mehr als einmal und mindestens einmal in der vergangenen
Woche zugegriffen wurde.

Diese Zeitspannen k�nnen mittels \fBtimeout_short\fR und
\fBtimeout_long\fR in der \fIconfig\fR-Datei angepa�t werden. Siehe auch
die \fB\-n\fR-Option in \fBfetchnews\fR(8).
.PP
.I /etc/inetd.conf
oder
.I /etc/xinetd.conf
enth�lt die Konfiguration, die
.BR leafnode
startet. Es
wird dringend angeraten,
.BR leafnode
vom User "news" starten zu
lassen.

.SH UMGEBUNGSVARIABLEN
.TP
LN_REJECT_POST_PRE
Wenn diese Variable existiert, wird jeder POST-Befehl mit einem
400-Fehlercode verweigert. Nur zum Debugging von Newsreadern benutzen!
.TP
LN_REJECT_POST_POST
Wenn diese Variable existiert, wird jeder POST-Befehl mit einem
400-Fehlercode verweigert, nach dem Artikel und CRLF.CRLF empfangen
worden sind. Nur zum Debugging von Newsreadern benutzen!

.SH KONFIGURATION

Die komplette Konfiguration wird in der Datei
.I @msysconfdir@/config
vorgenommen, die eine Filterbeschreibungsdatei, filterfile, aufrufen
kann, wie unten gezeigt.
.PP
Im Rahmen dieses Abschnitts sei "Whitespace" als eine beliebige Folge von
einem oder mehr SPACE (Leerzeichen) und HTAB (horizontaler Tabulator)
definiert, ASCII-Positionen 32 bzw. 9.
.PP
Die Konfigurationsdatei ist streng zeilenorientiert, sie kann als
Zeilenabschluss entweder LF (Zeilenvorschub) oder CRLF (Wagenr�cklauf +
Zeilenvorschub) verwenden.
.PP
Leere Zeilen und solche, die ausschlie�lich aus Whitespace bestehen,
optional von einem Kommentar gefolgt werden (der von einem #-Zeichen
eingeleitet wird und sich bis zum Zeilenende erstreckt), werden
�bersprungen.
.PP
Alle anderen Zeilen bestehen aus genau drei Pflichtfeldern, einem
Parameter im Klartext, einem Gleichheitszeichen (=), der von Whitespace
umgeben sein darf und einem Wert. Der Wert kann als Klartext angegeben
sein oder \[en] neu seit Leafnode v1.11 \[en] als Zeichenkette in Anf�hrungszeichen
mit trivialen Fluchtzeichen (siehe unten).
.PP
Klartext f�ngt beim ersten nicht-Whitespace-Zeichen an und erstreckt
sich bis zum letzten nicht-Whitespace-Zeichen, das nicht zu einem
Kommentar geh�rt. Ein Kommentar am Ende einer Zeile wird ignoriert.
.PP
Zeichenketten in Anf�hrungszeichen verwenden das doppelte
Anf�hrungszeichen oben ("). Das
Backslash-(R�ckw�rtsschr�gstrich)-Zeichen (\\) ist ein Fluchtzeichen und
wird �bersprungen, liest aber das unmittelbar folgende Zeichen
originalgetreu, sodass das Backslash-Zeichen (durch Verdopplung, als
\\\\) und Anf�hrungszeichen (als \\") in der Zeichenkette angegeben
werden k�nnen; das #-Zeichen verliert zwischen den Anf�hrungszeichen
seine besondere Bedeutung als Kommentareinleitung. Text nach dem Ende
der Zeichenkette wird stillschweigend ignoriert (das kann sich in
zuk�nftigen Versionen �ndern). Kommentare am Ende der Zeile werden
ignoriert.
.PP
.B OBLIGATORISCHE PARAMETER
.PP
Diese Parameter m�ssen angegeben werden, damit Leafnode
funktioniert.
.TP
server = news02.example.com
"server" wird von
.B fetchnews
(8) benutzt, um festzustellen, von welchem Server es News herunterladen
und wohin es neue Artikel posten soll.  Es ist m�glich, mehrere Server
anzugeben, sie werden der Reihe nach kontaktiert.  Sie brauchen auf
diesen Servern Leserechte, falls Sie selber Artikel ver�ffentlichen
m�chten, auf mindestens einem der Server auch Schreibrechte.  Im obigen
Beispiel ist news02.example.com der prim�re News-Server.
.IP
Dieser Parameter kann mehrmals angegeben werden.  Jeder \fBServer\fR erh�lt
dabei zun�chst einen Satz Standard-Optionen, die Einstellungen des vorherigen
Server-Eintrags werden nicht �bernommen.  Ebenso k�nnen Server-spezifische
Einstellungen nicht global get�tigt werden.
.TP
expire = 5
"expire" ist die Anzahl der Tage, die ein Artikel aufbewahrt werden
soll. Im Beispiel wird ein Artikel f�nf Tage, nachdem er zuletzt
gelesen wurde, durch
.BR texpire(8)
gel�scht. Dieser Wert MUSS wenigstens 1 sein.
.PP
.B SERVERUNABH�NGIGE OPTIONALE PARAMETER
.PP
Diese Optionen k�nnen nur einmal in der Konfigurationsdatei
angegeben werden und wirken sich auf Leafnode insgesamt aus. Es ist
unwichtig, an welcher Stelle diese Optionen \[en] auch relativ zu
server=-Zeilen \[en] stehen, es ist aber aus Gr�nden der �bersicht sinnvoll,
sie noch vor der ersten server=-Zeile anzugeben. Wird eine dieser Optionen
mehrfach anzugeben, wird die letzte Angabe verwendet; zuk�nftig kann
die mehrfache Angabe aber ein Fehler sein.
.TP
hostname = host.domain.country
.B Leafnode
versucht zun�chst, den Namen des Computers zu ermitteln und dabei
ung�ltige Namen auszulassen.  Der host name wird mit gethostname(3)
erfragt und mit bei Bedarf mit gethostbyname(3) aufgel�st.  Dieser
Name entstammt �blicherweise der Datei /etc/hosts oder NIS und DNS
(Details in der System-Dokumentation).

Falls Leafnode keinen host-Namen ermitteln kann, deutet das in der
Regel auf ein nicht sorgf�ltig konfiguriertes System oder auf
einen nicht eindeutigen Namen hin, der f�r die Erstellung von
Message\-IDs nicht verwendbar ist.  Namen wie "localhost.localdomain"
sind nicht eindeutig und daher zu �ndern.  Es gen�gt in der Regel,
einen sogenannten fully-qualified host name (FQDN) der Datei
/etc/hosts hinzuzuf�gen.  In der Datei \fIREADME\-FQDN\fR werden
weitere Informationen dazu (auf Englisch gegeben), weiterhin
finden sich in der Datei \fIINSTALL_de\fR Hinweise auf deutsche
Dokumentation zu diesem Thema.

Sie k�nnen den Teil der Message\-ID nach dem @ auch mit dem Parameter hostname
konfigurieren. Die Verwendung von "hostname" zur Erzeugung einer
Phantasie-Message\-ID ist zwar m�glich, aber dringend abzuraten.
.TP
create_all_links = 1
�blicherweise speichert
.B fetchnews
Artikel nur in den Newsgruppen, die in
.I @SPOOLDIR@/interesting.groups
vorhanden sind, wenn Sie create_all_links auf 1 setzen, erstellt
.B fetchnews
jedoch f�r jede Newsgruppe, die es im "Newsgroups:"-Header findet,
einen harten Link. Dies kann interessant f�r Sie sein, wenn Sie ein
Score- oder Kill-File auf den "Xref:"-Header anwenden m�chten.
.TP
maxfetch = 1000
"maxfetch" begrenzt die Anzahl der Artikel, die
.B 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.
.TP
initialfetch = 1
"initialfetch" beschr�nkt 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 f�r initialfetch; wenn Sie keine
alten Artikel empfangen m�chten, setzen Sie den Wert, wie im Beispiel,
auf 1.
.PP
groupexpire sehr.volle.Gruppe = 1
.TP
groupexpire sehr.volle.Hierarchie.* = 1
"groupexpire" erm�glicht es, unterschiedliche Haltezeiten f�r
verschiedene Gruppen festzulegen. Die Haltezeit wird in Tagen
angegeben, der Wert wird von
.B texpire
(8) benutzt. Sie k�nnen so viele
groupexpire-Eintr�ge anlegen wie Sie m�chten und dabei
.B glob
(7)-Wildcards verwenden. Der Wert 0 veranlasst leafnode, den Default zu
w�hlen, negative Werte verhindern das Entfernen alter Artikel (als eine
Art Archivmodus).
.TP
maxage = 10
Wenn ein Artikel auf dem Upstream-Server auftaucht, der �lter als
"maxage" Tage ist, wird er von fetchnews nicht geladen, auch wenn er noch
nicht lokal vorhanden ist. Dies ist n�tzlich, wenn Ihr Upstream-Server
gelegentlich den 'Schluckauf' bekommt. Die Standardeinstellung betr�gt
10 Tage; wenn Sie maxage deaktivieren m�chten, tragen Sie einen
m�glichst gro�en Wert ein, z. B. 100000 (also ca. 270 Jahre)
.TP
maxold = 10
Ist synonym zu maxage, siehe oben.
.TP
maxlines = 2000
Wenn Sie es vermeiden m�chten, sehr gro�e Artikel zu laden, setzen Sie
den "maxlines"-Parameter auf die Anzahl der Zeilen, die ein Artikel
h�chstens haben darf. �blicherweise ist dieses Feature deaktiviert.
.TP
minlines = 2
Manchmal werden Newsgruppen mit leeren Artikeln �berh�uft. Um solche
Artikel abzuweisen, k�nnen sie "minlines" verwenden. "minlines" auf
einen Wert gr��er als 4 zu setzen, ist wahrscheinlich keine gute Idee,
da dann u. U. auch echte Artikel abgelehnt werden k�nnten.
�blicherweise ist dieses Feature deaktiviert.
.TP
maxbytes = 100000
Wenn Sie gro�e Artikel ablehnen m�chten, k�nnen Sie statt "maxlines"
auch "maxbytes" verwenden. Auch dieses Feature ist normalerweise
deaktiviert.
.TP
maxcrosspost = 5
Wenn Sie Spam bek�mpfen m�chten, k�nnen Sie alle Artikel filtern, die
�ber mehr als "maxcrosspost" Gruppen crossgepostet werden. Den Wert
von "maxcrosspost" zu niedrig anzusetzen ist wahrscheinlich keine gute
Idee. Auch dieses Feature ist standardm��ig deaktiviert.
.TP
maxgroups = 5
Ist synonym zu maxcrosspost, siehe oben.
.TP
filterfile = @msysconfdir@/filters
leafnode kann die Header eingehender Artikel nach regul�ren Ausdr�cken
filtern, die im "filterfile" gespeichert sind. Das Format dieser
Filterdatei ist einfach, ein regul�rer Ausdruck pro Zeile. Entspricht
einer der regul�ren Ausdr�cke dem Header eines eingehenden Artikels,
wird der Body dieses Postings abgelehnt. Dieses Feature ist
�blicherweise deaktiviert.  Regul�re Ausdr�cke werden in
.BR pcre (3)
beschrieben.
.TP
timeout_short = 2
Normalerweise wird eine Gruppe, die nur zuf�llig abonniert wurde, 2
Tage lang bezogen. Hier k�nnen Sie diese Zeit ab�ndern.
.TP
timeout_long = 7
Normalerweise wird eine Gruppe, die nicht mehr gelesen wird, noch
sieben Tage lang bezogen. Diese Zeitspanne kann hier ge�ndert werden.
.TP
timeout_active = 90
Normalerweise wird das Active-File alle 90 Tage vom Upstream-Server
gezogen. Dieser Abstand kann ver�ndert werden, indem Sie
"timeout_active" einen anderen Wert zuweisen. Bedenken sie dabei aber,
da� beim Laden des Active-Files von einem Server, der ca 20.000 Gruppen
vorr�tig hat, rund ein Megabyte an Informationen �bertragen werden.
.TP
timeout_client = 900 (seit v1.9.23)
Normalerweise beendet
.B leafnode
nach 900 Sekunden (15 Minuten) Inaktivit�t die Verbindung zum
Newsreader.  Mit "timeout_client" kann diese Zeitspanne angepa�t werden,
etwa f�r defekte Newsreader, die sich nicht neu verbinden k�nnen.  Es
ist nicht ratsam, dies unter 5 Minuten zu setzen, da Neuverbindungen
die Systemlast steigern.
.TP
timeout_fetchnews = 300 (seit v1.9.52)
Fetchnews nimmt, seit v1.9.52, an, dass der Upstream-Server festh�ngt,
wenn es 300 Sekunden gewartet hat. Sie k�nnen die Frist hier ver�ndern.
.TP
timeout_lock = 5 (seit v1.9.54)
Mit dieser Variable, die als nat�rliche Zahl oder 0 interpretiert wird,
kann eingestellt werden, wie viele Sekunden die Programme (applyfilter,
checkgroups, fetchnews, texpire) versuchen sollen, die Lock-Datei zu
setzen. Voreingestellt sind 5 Sekunden. Der Wert 0 bedeutet, dass die
Programme unbegrenzt auf die Lock-Datei warten sollen.
.TP
delaybody = 1
Wenn dieser Parameter gesetzt ist, l�dt
.B fetchnews
(8) nur die Header eines Artikels zur Ansicht. Nur, wenn die Header
gelesen werden, l�dt
.B fetchnews
(8) beim n�chsten Start auch den Body des Postings. Sie k�nnen so
Plattenplatz und On-Line-Zeit sparen.
.TP
delaybody_in_situ = 1 (seit v1.9.41)
Gilt nur, wenn delaybody=1.

Normalerweise vergibt leafnode f�r komplett geladene Artikel neue
Artikelnummern, damit sie im Newsreader als neu angezeigt werden. Mit
einigen Newsreadern funktioniert dies aber nicht. Nach dem Setzen dieser
Option wird leafnode stattdessen beim Download die urspr�ngliche
Artikelnummer erhalten. Sie m�ssen Ihren Newsreader dazu alte Artikel
anzeigen lassen. Diese Option ist normalerweise abgeschaltet. Es wird
.B eindringlich
empfohlen, sie abgeschaltet zu lassen.
.TP
debugmode = 1
Wenn Sie diesen Parameter angeben, geben
.B fetchnews
(8),
.B texpire
(8) und
.B leafnode
(8) Debugging-Informationen
via
.B syslog
(8) mit "facitily" "news" und Priorit�t "debug" aus. Benutzen Sie diese
Option, wenn Sie Probleme mit Ihrem Feed haben. Im Normalfall sollte die
Option jedoch 0 sein, weil sie enorme Datenmengen erzeugen kann. Zum
Debugging werden Werte von 1 bis 3 verwendet. H�here Werte als 3 machen
derzeit keinen Unterschied zur 3.
.TP
allow_8bit_headers = 1 (seit v1.9.25)
Normalerweise l��t Leafnode das Posten von Artikeln, die 8-Bit-Daten im
Nachrichtenkopf tragen, nicht zu, weil diese gegen einschl�gige Normen,
speziell RFC-2822 (auf den RFC-1036 baut), verletzen, und die verlangen,
da� Usenet-News-K�pfe nur aus 7-bit US-ASCII-Zeichen bestehen, und aus
den Steuerzeichen nur die Freir�ume zul��t.

Da allerdings UTF-8 eingef�hrt werden soll und einige nationale
Hierarchien, besonders die norwegische und d�nische (no.*, dk.*) sich
darauf geeinigt zu haben scheinen, 8-bit Daten einer Codierung mittels
RFC-2047 vorzuziehen, k�nnen Sie diese Option benutzen, um 8-bit-Daten
im Nachrichtenkopf zuzulassen. Leafnode wird in diesem Fall, wenn
8-bit-Daten vorhanden sind, aber einen zus�tzliche Kopfzeile zur Warnung
einf�gen, die erw�hnt, da� der Administrator das erlaubt hat.

Es gibt derzeit keine M�glichkeit, beim Posten in Leafnode andere
Steuerzeichen als die Leerzeichen (einschlie�lich Tabulator) im
Nachrichtenkopf zuzulassen.
.TP
allowSTRANGERS = MAGIC (seit v1.9.23)
Normalerweise verweigert leafnode Verbindungen von au�erhalb des lokalen
Netzes (LAN).  In config.example, wird beschrieben, wie dieses Verhalten
ge�ndert werden kann.  An Stelle von MAGIC mu� eine Nummer eingesetzt
werden, siehe \fIconfig.example\fR. Beachten Sie die Gro�- und
Kleinschreibung.
.TP
linebuffer = 1
Leafnode verwendet normalerweise voll gepufferte Standardausgabe und
-fehlerausgabe, au�er bei Verbindung mit einem Terminal.  Mit diesem
Parameter kann explizit zeilengepufferte Ausgabe erzwungen werden.
.TP
clamp_maxage = 0
�blicherweise werden Artikel, die �lter sind als die f�r die aktuelle
Gruppe konfigurierte expire Zeit, nicht geladen (siehe expire und
groupexire neben dem Parameter maxage).  Dadurch wird verhindert, da�
Artikel, die von \fBtexpire\fR(8) gel�scht wurden, nochmal heruntergeladen
werden.  Mit clamp_maxage = 0 wird dieses Verhalten abgestellt.
.TP
article_despite_filter = 1 (seit v1.9.33)
Normalerweise fragt fetchnews Nachrichtenk�pfe und -r�mpfe separat ab,
wenn ein \fBfilterfile\fR definiert und \fBdelaybody\fR abgeschaltet
ist. F�r Verbindungen mit hoher Latenz, aber hohem Durchsatz (wie zum
Beispiel DSL mit Interleaving oder Satellitenverbindungen), kann es
schneller sein, den kompletten Artikel per "ARTICLE" zu verlangen und
bei zutreffenden Filtern den Nachrichtenrumpf mit wegzuwerfen (obwohl
das nicht preiswerter sein mu�, wenn die Verbindung nach Datenvolumen
bezahlt wird). Das Aktivieren dieser Option zwingt fetchnews dazu, den
ARTICLE-Befehl auch dann zu benutzen, wenn \fBfilterfile\fR definiert
ist. (Hinweis: wenn \fBdelaybody\fR aktiviert ist, werden
Nachrichtenk�pfe und -r�mpfe immer getrennt angefordert.)
.TP
newsadmin = news@leafnode.example.org (seit v1.9.47)
Diese Option stellt den Absender des Platzhalter-Artikels ein, der
sollte die Adresse des Leafnode-Administrators sein. Voreingestellt ist
news@HOSTNAME, wobei HOSTNAME Leafnodes Rechnername ist.
.PP
.B
SERVERSPEZIFISCHE OPTIONALE PARAMETER
.PP
Diese Optionen k�nnen nur nach der server=-Zeile desjenigen Servers
angegeben werden, dessen Funktion sie einstellen sollen, und geh�ren
immer zur vorausgegangenen server=-Zeile. Sie vor der ersten
server=-Zeile anzugeben, ist ein Fehler.
.TP
username = meinname
Wenn einer Ihrer News-Server eine Authentifizierung erwartet, k�nnen
Sie hier Ihren Usernamen auf diesem System eingeben. Dieses Feld darf
mehrmals erscheinen, einmal nach jeder Server-Definition. Der Anfang
dieses Abschnitts beschreibt, wie Sonderzeichen in \fImeinname\fR
angegeben werden k�nnen.
.TP
password = meinpasswort
Wenn einer Ihrer News-Server eine Authentifizierung erwartet, k�nnen
Sie hier Ihr Pa�wort auf diesem System eingeben. Dieses Feld darf
mehrmals erscheinen, einmal nach jeder Server-Definition. Da das
Pa�wort im Klartext angegeben wird, ist es ratsam, die Rechte an der
config-Datei so stark wie m�glich einzuschr�nken, da sonst andere
Benutzer Ihres Rechners Ihr/e Pa�wort/Pa�w�rter herausfinden k�nnten.
Der Anfang dieses Abschnitts beschreibt, wie Sonderzeichen in
\fImeinpasswort\fR angegeben werden k�nnen.
.TP
port = 8000
In den Grundeinstellungen versucht fetchnews, sich mit dem
Upstream-Server �ber den NNTP-Port (119) zu verbinden. Wenn ihr Server
auf einem anderen Port l�uft, k�nnen Sie ihn hier angeben. Dieses Feld
darf mehrmals erscheinen, einmal nach jeder Server-Definition.
.IP ""
.B Hinweis:
Um den Port einzustellen, auf dem Leafnode selbst Verbindungen
entgegennimmt, m�ssen Sie ihre Konfigurationsdatei inetd.conf,
xinetd.conf oder die Befehlszeile von tcpsvd oder tcpserver anpassen.
Leafnode �ffnet diesen Port nicht selbst.
.TP
timeout = 30
Normalerweise versucht
.B leafnode
10 Sekunden lang, mit einem Server Verbindung aufzunehmen und gibt
diesen Versuch dann auf. Wenn Sie einen langsamen Server haben, k�nnen
Sie
.B leafnode
mehr Zeit daf�r geben, indem Sie timeout auf einen h�heren Wert setzen
(im Beispiel 30 Sekunden). "timeout" kann f�r jeden Server einzeln
angepa�t werden.
.TP
noactive = 1 (seit v1.9.25)
Wenn diese Option gesetzt ist, wird die Liste der verf�gbaren Gruppen
nie von diesem Upstream-Server geladen.  Diese Option ist sinnvoll
f�r sehr langsame Verbindungen, wenn andere Server die Gruppen
ebenfalls f�hren.
.TP
nodesc = 1
Manche Server geben die Beschreibungen der Newsgroups nicht korrekt
an, da sie das "LIST NEWSGROUPS"-Kommando nicht verstehen. F�gen Sie
in diesem Fall nach dem "server"-Eintrag diese Zeile ein.
.TP
nopost = 1 (seit v1.9.23)
Zu diesem Server keine Postings versenden. N�tzlich, wenn Ihr Server das
Ver�ffentlichen von Artikel nicht erlaubt und dies falsch mitteilt
(NNTP-Antwort 200) oder Ihre Postings nicht zuverl�ssig weiterleitet.
.TP
noread = 1 (seit v1.9.33)
Von diesem Server keine Artikel oder Gruppenlisten beziehen. N�tzlich,
wenn dieser Server zwar gut zum Posten ist, aber zu langsam zum
Newsdownload.
.TP
noxover = 1 (seit v1.9.47)
Die Gruppen�bersichten werden von diesem Server mit XHDR statt XOVER
abgerufen.
.TP
only_groups_match_all = 1 (seit v1.9.52)
Normalerweise crosspostet fetchnews bei Definition der
only_groups_pcre-Option einen Artikel, wenn der regul�re Ausdruck (PCRE)
auf WENIGSTENS EINE der in der Newsgroups:-Kopfzeile aufgef�hre
Newsgruppe passt. Mit dieser Option muss der regul�re Ausdruck auf ALLE
Newsgruppen passen, damit er Artikel gepostet wird. Dies kann in
Verbindung mit mehreren Upstream-Servern zur Vermeidung von "poison"
(Gift)-Newsgroups verwendet werden.
.TP
only_groups_pcre = PCRE (seit v1.9.28)
Diese Option erlaubt es, einen Perl-kompatiblen, regul�ren Ausdruck
derjenigen Gruppen anzugeben, die von diesem Server geholt oder zu
diesem gepostet werden k�nnen. Der regul�re Ausdruck wird linker Hand
automatisch verankert, so dass der ^ am Anfang ausgelassen werden kann.
.IP
Wenn diese Option fehlt, werden alle Gruppen von diesem Server bezogen
und zu ihm gepostet.
.IP
Hinweis: Sie m�ssen fetchnews mit der "\-f"-Option laufen lassen wann
immer Sie eine only_groups_pcre-Option hinzugef�gt, entfernt oder
ver�ndert haben.
.IP
Denken Sie aber daran, Punkte zu "escapen" (ihre Joker-Funktion zu
unterbinden), zum Beispiel so:
.br
de\\.comp\\.|de\\.comm\\.
.IP
Tipp: Sie k�nnen ihre PCREs beispielsweise so testen:
.br
cut \-f1 \-d" " @spooldir@/leaf.node/groupinfo \\
.br
| pcregrep 'PCRE'
.TP
post_anygroup = 1 (seit v1.9.37)
Mit dieser Option wird das Posten auf einem Server ohne vorherige
Pr�fung der Verf�gbarkeit der Newsgroup erzwungen. Voreinstellung ist
post_anygroup=0, das hei�t, leafnode wird mit einem "GROUP"-Befehl
pr�fen, ob der Server die Newsgroup f�hrt, in die der Artikel gehen
soll. N�tzlich auf Servern, die nur Posten zulassen, aber den
"GROUP"-Befehl verweigern. Hinweis: unbedachter Einsatz dieser Option
kann zum Fehlschlag des Postings und Ablegen der Postings im Verzeichnis
failed.postings f�hren.
.PP
.B OBSOLETE PARAMETER
.TP
supplement
ist synonym zur Option server und bei neuen Installationen nicht mehr zu
verwenden.
.TP
fqdn
ist synonym zur Option hostname und bei neuen Installationen nicht mehr zu
verwenden.

.SH PROTOKOLL
.B leafnode
unterst�tzt die folgenden NNTP-Befehle:
.PP
ARTICLE, BODY, DATE, GROUP, HDR, HEAD, HELP, LAST, LIST, LIST ACTIVE, LIST
ACTIVE.TIMES, LIST EXTENSIONS, LIST NEWSGROUPS, LIST OVERVIEW.FMT,
LISTGROUP, MODE, NEWGROUPS, NEXT, POST, OVER, SLAVE, STAT, XHDR, XOVER.
.PP
Die Befehle, au�er HDR und OVER, sind in RFC-977 und RFC-2980 spezifiziert.
Zu beachten ist, da� sich die Syntax von HDR und OVER wegen bislang
fehlender Standardisierung noch �ndern kann.

.SH FEHLER
Leafnode weist Artikel mit UTF-8-Zeichen in Header-Zeilen, die nicht
nach RFC-2047 codiert sind, zur�ck.  Der Usefor-Standardentwurf schl�gt
UTF-8 ohne RFC-2047-Kodierung f�r Header vor.

Leafnode beendet das Einlesen einer Zeile beim ersten NUL-Zeichen.

Leafnode kann Probleme mit hierarchie�bergreifenden Crosspostings haben,
wenn mehr als ein Upstream-Server vorhanden und only_groups_pcre
konfiguriert ist.

Leafnode versucht nur auf Systemen, die die tm_gmtoff-Komponente in der
tm-Struktur haben (typisch BSD und GNU-Systeme), den Zeitversatz der
Zeitzone f�r von leafnode erzeugte Date:-Kopfzeilen zu ermitteln.

Die Rechtschreibung der Dokumentation ist gemischt alt/aktuell.

.SH AUTOR
Die ersten Versionen von leafnode wurden von Arnt Gulbrandsen
<agulbra@troll.no> geschrieben; Copyright 1995 Troll Tech AS,
Postboks 6133 Etterstad, 0602 Oslo, Norway, fax +47 22646949.
.PP
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 Ver�nderungen) 1997 \[en] 1999.
.PP
Weiterentwickelt von Matthias Andree <matthias.andree@gmx.de>, Copyright
1999 \[en] 2002, und Ralf Wildenhues <ralf.wildenhues@gmx.de>, Copyright
2002.
.PP
Jonathan Larmour <jlarmour@redhat.com> implementierte die timeout_client
Option.

Andreas Meininger <a.meininger@gmx.net> f�gte Code hinzu, so da� texpire
Gruppen mit 'groupexpire = \-1' ignoriert.

Mark Brown <broonie@debian.org> implementierte die noactive-Option.
.PP
Unz�hlige Beitr�ge von weiteren Personen.
.PP
Die urspr�ngliche Entwicklung wurde durch Uninett AS
(http://www.uninett.no/) finanziert.
.PP
Deutsche �bersetzung:
Alexander Reinwarth <a.reinwarth@gmx.de>, erg�nzt von
Ralf Wildenhues.

.SH SIEHE AUCH
.PP
.BR applyfilter (8),
.BR checkgroups (8),
.BR fetchnews (8),
.BR newsq (1),
.BR texpire (8).
.PP
.BR tcpd (8),
.BR hosts_access (5),
.BR glob (7),
.BR pcre (3),
.BR "RFC 977",
.BR "RFC 2980".
