Inn + UUCP - Le tutoriel

De Site à Mans
Aller à la navigation Aller à la recherche
AVERTISSEMENT
Ce tutoriel a été écrit en 1996 pour répondre a des demandes régulières dans fcola sur "comment installer inn sous linux". En effet ce service de news d'USENET était relativement compliqué à installer pour le néophite, car il n'existait pas de procédure d'installation automatique comme c'est le cas aujourd'hui




    1. (c) Jose Mans 1 Mai 1996
    2. Upgrade: 24 Janvier 1998 v1.9.3
    3. Tout droits de modification reserves
  1. Ce doccument peut etre diffuse autant qu'il vous plaira SANS MODIFIER
  2. LES DROITS D'AUTEURS OU SI VOUS DECIDEZ DE PRENDRE UNE PARTIE DE METTRE
  3. MON NOM!
    1. MERCI DE RESPECTER CE QUI A SUIVI!!.
    2. Correction: Stephane Calabrese (scalabrese@pacwan.mm-soft.fr)


Salut


Voici un petit resume qui explique la manier dont j'ai procede pour intaller un serveur News local avec innd.

Je precise aussi que certaines personnes pourront voir des manipulations qui ne sont peut-etre pas necessaires pour configurer un server de News avec innd. Pour ma part, j'ai respecte, au plus fidele possible, ce qui m'a permis - apres 1 semaine de tentative - de demarrrer enfin mon serveur de News !!! Toutes fois ces personnes ont inviter a faire toutes remarques !



________________________________________________________________________________


SOMMAIRE:

0 AVANT-PROPOS

1 Installation du serveur.

 1.1 Faire le menage.
1.2 Installation avec la slackware > 3.0
1.3 Autres distributions.

2 Configuration.

 2.1 Copie de fichier.
2.2 Edition de fichiers.
2.3 Divers.

3 Lancement de innd!.

 3.1 Lancement au demarrage.
3.2 Lancement au shell.

4 Creation des packets (indispensable !)

 4.1 Creation pour une machine
  4.1.1 Methode a la main.
  4.1.2 Avec crontab.
4.2 Creation pour tous les machines.
  4.2.1 Methode a la main.
  4.2.2 Avec crontab.

A. Annexe 1 FAQs!


                                   ---------

AVANT-PROPOS

==

Dans tous les cas il faut imperativement avoir une machine qui fonctionne correctement en reseau, meme seule.


1. Installation des programmes necessaire.

1.1 Faire le menage.

  Si vous voulez ne pas rencotrer de probleme avec innd. Il est

conseille d'effacer tous ce qui se rapporte aux anciens serveur.

  Il existe rnews de CNEWS qui reste apres l'intallation d'innd. Ce qui

a pour effet de tout chambouler le serveur innd; la solution est donnee en section 2.1.

 Sans rentrer dans les detailles, EFFACEZ tout ce qui appartient a cnews

et autre serveur!

1.2 Installation avec la slackware > 3.0

Choisir le packtage N, avec les modules : <!> Procedez a une install "normal". Ceci est demande lors de l'installion.

       1.  Deliver.
    2.  Netconfig (netcfg)
    3.  Rdist.
    4.  smailcfg.
    5.  tin (un reader quand meme :)
    6.  inn 1.4 (enfin !!)
    7.  nn-spool
    8.  BSD 8.6.12 sendmail
    9.  uucp Taylor.

1.3 Autres distributions.

       Si vous n'avez pas de distribution autre que la slackware ceci

m'interesse afin de completer cette aide le mieux possible. Ceci etant j'imagine bien qu'il y est quelque part dans votre distribution un coin, un repertoire, ou sont les fichier binaire de "innd.".

       Par exemple sur les mirrors "sunsite.uiuc.edu" vous trouverez

les programme pre-compile et source de innd.

       [[Ftp:
    [[Ftp:

<!> Noubliez pas que la verion de inn1.4 peut changer; donc ne m'en voulez pas si vous trouvez inn1.5 :)


2 Configuration.

2.1 Copie de fichier.


- Copier le fichier /usr/lib/news/etc/rc.news /etc/rc.d/


- Mettre en remarque 'nntp' dans /etc/inetd.conf:

#nntp   stream  tcp     nowait  root    /usr/sbin/tcpd /usr/sbin/in.nntpd
Puis relancez inetd de la maniere suivante :
   ps aux |grep inetd
kill -HUP pid               - Ou pid est le numero se trouvant dans
                              la deuxieme colones de la ligne
                              qu'affiche la commande 'ps'.


- Creer un lien rnews de bin a news :

  cd /usr/bin
ln -s ~news/rnews

<!> ATTENTION: Ne pas garder le fichier rnews du serveur CNEWS !
D'ailleur pour plus de security effacez tout ce qui appartien a CNEWS !


2.2 Edition de fichiers.

ATTENTION: Dans tous les fichiers ou cela ne sera pas specifie, mettre en remarque toutes les lignes n'etant pas stipulees dans ce fichier d'aide.

DE PLUS les exemple seront donnes pour la machine ASTERIX possedent le domain PROVENCE.FR. Par consequent si vous avez un autre nom, domain, il faudra IMPERATIVEMENT les chnager :))


Pour ce faire utiliser # dans chacun des fichiers.

  • Editer control.ctl
       Rajouter all:*:*:mail
  • Editer inn.conf
       - Ramplacer/Ajouter :
               organization:   Votre ogranisation
            server:         L'adresse de votre serveur
            domain:         Votre domain.

fromhost: ... pathhost: ...

       - Exemple (ex:) : Pour la machine asterix qui possede le domain
                      provence.fr :
               organization:   Hall des Stars
            server:         asterix.provence.fr
            domain:         provence.fr

fromhost: provence.fr pathhost: provence

  • Editer newsfeeds
 Le newsfeeds sert a l'envois des messages aux machines

connu de votre systeme de news.

 Toutes ces machines son repertoriees dans ce fichier. Le newsfeed

contient aussi les groupes de news, ou conferences, que vous lui envoyez.

 Biensur si vous etes un particulier et branche a un provider et

qu'aucunes autres machine viennent prendre des conferences, par uucp, chez vous. Newsfeeds ne doit contenir que les parametre de votre provider.

 Par contre si vous possedez des machines qui viennent poller regulierement

vous devez, en plus de votre provider, faire connaitre a votre serveur 'innd' le nom de ces machines et, biensur, les conferences qu'elles prennent!

 Voici un exemple, le premier, qui configure votre feed (newsfeed) pour

un provider. Puis le deuxieme example celui d'une machine a qui vous procurez les news.

       - Ajouter/remplacer votre domain et nom ce machine ainsi que ceux des 

visiteurs:

       ME\
            :*\
            :Tf,Wfb:


   SI vous avez un provider uucp ... rajoutez ce champ :
      ex: Si votre provider a cette adresse : provider.son_domain.fr
      provider/provider.uucp,provider.son_domain.fr,unknowna\
            :*,!junk*,!local*,!control*,!general*\
            :Tf,Wfb:


  SI vous avez des utilisateur uucp :
      nom_machine_user/nom_machine_user.uucp\
            :!*,fr.*,comp.os.linux.*,local.*,junk\
            :Tf,Wfb:


  Ou   !junk, !local.... sont les groups que votre provider ne recevra
    pas !
En d'autres termes tous les nom de conferences possedent le '!'

devant leurs noms ne seront pas envoyees a la machine concernee.


  • Editer hosts.nntp
       - Ajouter :
               #/usr/lib/news/hosts.nntp
            localhost:

asterix.provence.fr: 193.50.131.200:

  • Editer nnrp.acces

Ajouter :

localhost:RP:::* *.domain.fr:RP:::* 193.50.131.*:RP:::*

  • Editer /etc/NNTP_INEWS_DOMAIN
       Rempalcer l'adresse par la votre.
            ex:
                    #/etc/NNTP_INEWS_DOMAIN
                    asterix.provence.fr
  • Creer history
       Avec l'utilisateur news creer les fichiers suivant :


               :> history
            :> history.pag
            :> history.dir

<!> les symboles ":>" peuvent etre remplaces par le programme "touch" qui a pour effet de creer un fichier vide.

2.3 Divers

Creer un l'alias usenet vers vous :

 exemple pour l'utilsateur 'mans' :
    Editez le fichier /etc/aliases
 usenet: mans
    Puis recompilez la base de donnees alias.db :
    	newaliases



3 Lancement de innd!.

3.1 Lancement au demarrage.

       - Ajoutez dans rc.local :

<!> Ne mettez pas tout en remarque !!! :)

               #/etc/rc.d/rc.local
            ...
            #Demarrage des News
            /etc/rc.d/rc.news&
            ...


3.2 Lancement au shell.

- Tout simplement :

cd ~news/etc rc.news


4 Creation des packets (indispensable !)

4.1 Creation pour une machine

 Pour que vos destinataire puissent recevoir ce que vous ecrivez dans

le conferences il est imperatif de creer les packets !

 Sinon attendez toujours que ca parte !!!


4.1.1 Methode a la main.

 Tout simplement en tapent :

  ~news/bin/sendbatch -g mahcine
    Ou -g      pour la compression des packets avec gunbath (gzip)
            Certains systems comme WAffle utilise la compression avec
            compress. Il faudra donc utiliser l'option -c a la place de
            -c.
   machine  est le nom de la machine qui va recevoir les packets.
            En generale soit votre provider, soit vos utilisateur.


4.1.2 Avec crontab.

 Avec l'utilisateur root ajouter cette chaine :
  bash#: crontab -e

chaine -> 15 6,17,22 * * * /usr/lib/news/bin/sendbatch -g gyptis > /dev/null


 Comme ca tous les packets destineis pour la machine appellee "Gyptis"
seront cree touts les jours et 6h15, 17h15 t 22h15 de la journnee.
 Pour plus d'information sur les possibilite de lancement du programme

sendbatch me contacter ou lire le : man crontab :)


4.2 Creation pour tous les machines.

4.2.1 Methode a la main.

 Tout simplement en tapent :
     ~news/bin/sendbatch -g `uuname|sort|uniq`


4.2.2 Avec crontab.

 Avec l'utilisateur root ajouter cette chaine :
  bash#: crontab -e

chaine -> 15 6,17,22 * * * /usr/lib/news/bin/sendbatch -g `uuname|uniq|sort` > /dev/null


 Tous les packets destines a toutes les machines seront crees a 6h15, 17h15 
et 22h15 de la journnee.


A. Annexe 1 FAQs!

MESSAGE d'erreur:


1. Q Quand je lance rc.news le serveur me reponds ce message :

       May  1 11:29:25 asterix innd: /usr/lib/news/history cant dbminit

ME No such file or directory

1. A En fait ce probleme est du au fichier ~news/bin/makehistory qui, quand on le lance, creait les fichier :

history.n.dir & history.n.pag

Je vous dis ca car il m'a fallu 1 semaine pour comprendre qu'innd et makehistory n'etati pas compatible :(

Ceci dit, n'attendez plus 1 semaine !. Normalement en creant les fichier :

               touch history
            touch history.dir
            touch history.pag
    Cela devrait marcher correctement :)


2. Q je viends d'ecrire dans les confs local mais rien n'est envoye chez lui :(.

2. A Ceci me fait penser a votre newsfeeds. Car j'ai deja eu un probleme

    similaire et je l'ais resolu comme suit :
    Mon enciens newsfeeds qui n'emovyait pas les news a mes amis UUCPchiens ...
 
          provider/provider.uucp,provider.son_domain.fr,unknowna\
            :!*,fr.comp.os.linux,fr.ta.mere,!local*,!junk*,!local*,!control*,!general*\
            :Tf,Wfb:
                    a pour effet de n'en voyer que  fr.comp.os.linux et
                                                 fr.ta.mere
   Depuis en modifiant mon newsfeeds pour le meme resultat j'ai pu
recevoir et envoyer a mes utilisateur de mon BBS les confs local.*


provider/provider.uucp,provider.son_domain.fr,unknowna\

                 :!*,fr.comp.os.linux,fr.ta.mere\
              :Tf,Wfb:
   Il semblerait que la rodendense des interdictions soit a l'origine
de ce probleme ... Donc evitez-les :)
    ATTENTION:    ou provider peut-etre aussi un de vos utilisateur.


3. Q Note: si j'ai tout compris a inn le fichier newsfeeds permet de dire

    a sa machine ou plutot son serveur a qui et quelle config _transmettre_

3. R En fait newsfeed permet de savoir les groups qui doivent etre creer

    pour chaque machines. Si ton champs comporte :
       zilog/zilog.uucp\
           :fr.*,comp.os.*,!*
           :Tf,Wfb:
    Le serveur, contenent cela dans son newsfeed, preparera les packets pour
 zilog, fr.*, comp.os.* et rien
 d'autre. Et donc quand les deux machine seront connectees seul c'est
 conferences seront transferees.

4. Q Quand 'innd' refuse de poster les articles que dois-je faire ?

4. R Tu dois ajouter l'adresse l'adresse de ton serveur, celui d'ou tu

    postes, dans le fichier : ~news/hosts.nntp
    Ex:   localhost:
       zilog:
       zilog.uucp:
       # Toutes y les adressses possible que ce serveur peut
       # prendre...

5. Q Si il vous affiche :

     inndstart: inndstart cant bind Address already in use
 C'est que vous ne savez pas lire :) Car c'est ecrit dans cette doc,

qu'il faut enlever la ligne 'nntp' dans le fichier /etc/inetd.conf!


6. Q Si il vous affiche :

     innd: /usr/lib/news/history cant dbminit ME No such file or directory
 La aussi vous ne savez pas lire; Alors SVP! Allez creer ce fichier

history dans ~news (/usr/lib/news) comme suit :


      bash#: :> history
          :> history.dir
          :> history.pag

7. Q Il trouve pas /ucb/sendmail!

8. A Editez le fichier ~news/innshellvar et remplacer /ucb/sendmail par /bin/mail dans la variable MAILCMD!!!!