Page suivante - Page précédente - Table des matières

5. Les News

5.1 Comment configurer un lecteur de News online ?

Tant que PPP est actif, on peut lire les news online. Il y a beaucoup de programmes disponibles pour cela, deux possibilités simples étant rtin et trn.

Pour commencer à lire les news, la seule chose nécessaire pour la configuration est, dans la plupart des cas, de configurer NNTPSERVER (généralement une fois pour toutes dans le fichier .profile) :

export NNTPSERVER=news.acme.xz

Pour avoir une adresse From correcte dans les envois, certains programmes nécessitent éventuellement :

export NNTP_INEWS_DOMAIN=acme.xz

5.2 Comment configurer un lecteur de News offline ?

Pour pouvoir lire les news en étant offline, réduire la note de téléphone et avoir une plus grande souplesse, on peut mettre en place un serveur local de News. Ceci nécessite un peu de configuration ainsi que de l'espace sur le disque. Après l'installation, les choses fonctionneront plus ou moins d'elles-mêmes. Un peu d'attention sera nécessaire de temps en temps.

Deux solutions différentes seront décrites.

5.3 Comment installer C News?

Cette solution est basée sur le serveur de News C News et sur le protocole NNTP. C News était prévu, à l'origine, pour un autre type de configuration, mais est suffisamment souple pour gérer aussi notre situation. On peut aussi utiliser le serveur de News INN plus récent mais aussi plus gourmand en ressources. Quel que soit le choix, il faut veiller a ne pas installer les deux : ils cohabitent difficilement.

Il est crucial d'effectuer les travaux de maintenance des News sous le compte news. De plus, tous les fichiers de configuration doivent être placés dans le répertoire /usr/lib/news. Une façon de faire, lorsqu'on est sous le compte root, est de taper su news; cd.

Les fichiers les plus importants de la configuration sont :

  • active est un panorama des groupes de news actifs. Il est mis à jour par la commande addgroup, par exemple : addgroup comp.os.linux.networking y.
  • organization contient simplement ce que l'on veut mettre dans le champ Organization: des en-têtes. Dans notre cas :
Dirk Gently's Holistic Detective Agency

  • mailname dans notre cas doit contenir : acme.xz.
  • whoami contient le nom de notre site dans le thread Path:. Dans une configuration telle qu'elle est décrite ici, où l'on utilise le programme newsx, ce nom ne quittera jamais la machine, on peut donc y mettre ce que l'on veut pourvu que l'on soit sûr qu'il est unique. Dans notre cas roderick.
  • Le fichier sys contrôle la recherche et la distribution des News. On supposera que, dans notre cas, le F.A.I. ajoute acme.xz à Path et que c'est la seule source de News que l'on ait. L'exemple donné fait que l'on accepte tout ce qui arrive, et que l'on poste seulement sur acme.xz ce qui n'a pas été vu avant et qui est posté au départ sur notre propre site. Dans cette configuration simplifiée, on suppose que tous les groupes viennent du même endroit. ./all précise la distribution, et doit être inclus. La lettre F indique que les articles de news sortants seront regroupés dans un fichier.
ME:all/all::
acme/acme.xz:all,!junk/all:FL:

  • Un sous-répertoire pour les News sortantes doit être créé. Ici :
mkdir /var/spool/news/out.going/acme

  • mailpaths s'occupe du postage dans les groupes modérés, bien que cette tâche puisse être habituellement laissée au F.A.I.

C News nécessite un peu de maintenance journalière, mais ceci peut être spécifié une fois pour toute en utilisant la commande crontab -e en tant qu'utilisateur news. Voici une configuration possible qui peut être ajustée selon les besoins :

# maintenance des lots entrants et sortants
10,40 * * * * /usr/lib/newsbin/input/newsrun
# expiration des C News, une fois par jour
30 0  * * * /usr/lib/newsbin/expire/doexpire
# surveillance et rapports si nécessaire
00 2  * * sat /usr/lib/newsbin/maint/addmissing
40 3  * * * /usr/lib/newsbin/maint/newswatch
50 3  * * * /usr/lib/newsbin/maint/newsdaily

newsrun place les articles entrants et sortants toutes les demi-heures, doexpire détruit les articles lorsqu'ils sont périmés chaque nuit à 00:30 et les trois dernières commandes réalisent différentes tâches d'administration et de correction d'erreur.

On doit aussi s'assurer que tout est correct lorsqu'on démarre la machine. En tant qu'utilisateur root, il faut ajouter la ligne suivante dans /etc/rc.d/rc.local :

su news -c /usr/lib/newsbin/maint/newsboot
Les News peuvent être récupérées en utilisant le programme newsx , qui les prend sur un serveur NNTP. Ce programme peut être trouvé à l'adresse suivante :

ftp://sunsite.unc.edu/pub/Linux/system/news/transport/newsx-0.9.tar.gz Ou :

ftp://ftp.sol.no/user/egilk/newsx-0.9.tar.gz

La configuration de newsx est très simple. Son installation est classique :

make
su
make install
exit

Avec cette configuration, tout ce que l'on a à faire est de créer les groupes que l'on veut lire en utilisant la commande addgroup.

Pour récupérer les articles, l'utilisateur >news lance les commandes suivantes (en supposant une connexion PPP ou similaire établie) :

newsrun
newsx acme news.acme.xz
newsrun

L'option -d permet un affichage continu à l'écran. La documentation de newsx donne toutes les informations nécessaires.

newsx s'occupe aussi de poster les articles sortants.

Pour contrôler la suppression des articles périmés, on a besoin d'un fichier explist. Les commentaires de cet exemple devraient expliquer ce que l'on cherche à faire :

# maintenu dans l'historique 14 jours, rien ne dure plus de 120 jours
/expired/                          x    14      -
/bounds/                           x    0-1-120 -
# on garde ça pendant 2 mois
comp.sources,comp.os.linux.all     x    60      -
# les déchets sont vite supprimés
junk,control                       x    2       -
# défaut:  14 jours, pas  d'archivage
all                                x    14      -

ALT : Pour les petits serveurs de News, on n'a pas souvent besoin du contrôle newgroup. Le trafic est énorme comparé à son utilité possible. Le point essentiel est que les articles soient supprimés et que les groupes puissent être créés automatiquement. Pour être sûr que les messages de contrôle contenant newgroup ne brouillent pas les choses, un fichier nommé newgroupperm spécifie ce que l'on autorise :

comp.os.linux  tale@uunet.com yv
all            any            nq
Dans cet exemple, tous les groupes sous comp.os.linux seront crées (y), et l'utilisateur news en sera averti (v). Tout le reste sera silencieusement (q) ignoré (n). La dernière ligne suffit si l'on veut créer tous les groupes manuellement.

ALT : Une alternative à newsx est suck.

5.4 Comment configurer Leafnode?

Une tout autre solution consiste à installer le paquetage intégré leafnode. Celui-ci gère toutes les tâches nécessaires à un serveur de News personnel et est facile à configurer. Il est disponible à :

http://www.troll.no/freebies/leafnode.html

Comme pour C News, tous les travaux de maintenance doivent absolument être faits par l'utilisateur news.

Le répertoire de base de leafnode est /usr/lib/leafnode. Pour l'installer, faire :

cd /usr/lib/leafnode
tar -xzvf leafnode-0.8.tgz
cd leafnode-0.8
make
su
make install

Notez que, dans ce qui suit, le préfixe /usr/local/sbin devra être remplacé par /usr/sbin si vous avez installé leafnode à partir d'un paquetage.

Toujours sous le compte root, on change la ligne qui contrôle NNTP dans le fichier /etc/inetd.conf :

nntp  stream  tcp  nowait  news  /usr/sbin/tcpd /usr/local/sbin/leafnode
Puis, on l'active par :
killall -HUP inetd

On retourne sous le compte news en tapant exit. Dans /usr/lib/leafnode/config, on change la ligne qui déclare le serveur NNTP. Dans notre cas :

server = news.acme.xz

Leafnode se recherchera lui-même en ajoutant la commande suivante par crontab -e comme utilisateur news :

# expiration de Leafnode, une fois par jour
0 4 * * * /usr/local/sbin/texpire

L'échange de News est aussi réalisé sous le compte news par la commande suivante (PPP est sensé fonctionner) :

/usr/local/sbin/fetch

Les utilisateurs voulant lire les news doivent alors utiliser la recette décrite dans Comment configurer un lecteur de News on-line ?, en la configurant pour la machine locale, i.e :

export NNTPSERVER=localhost

C'est tout ce qu'il y a à faire. Le premier fetch transférera une liste des groupes de news disponibles. Leafnode s'occupera alors des groupes que les utilisateurs désirent et s'adaptera la prochaine fois qu'il est activé.

Notez que leafnode semble ne pas fonctionner dans les cas où une autorisation NNTP est nécessaire.

ALT : Une alternative à leafnode est nntpcache, disponible à :

ftp://ftp.suburbia.net/pub/nntpcache/nntpcache.tgz

ALT : Une autre possibilité est d'utiliser le lecteur de news slrn en même temps que le paquetage slrn-pull. Le lecteur de news doit avoir été compilé avec l'option spool.


Page suivante - Page précédente - Table des matières