  ISP-Hookup-HOWTO
  Par Egil Kvaleberg, egilk@sn.no.
  v1.24, 14 Fevrier 1997

  Ce  document  decrit  la facon d'utiliser Linux pour se connecter a un
  fournisseur d'acces Internet au moyen d'un   modem.   Il  explique  la
  procedure  d'appel  telephonique  et  d'etablissement du protocole IP,
  ainsi que la facon de gerer le courrier electronique et les forums  de
  discussion USENET.

  11..  IInnttrroodduuccttiioonn

  Ce  document  est  fait  pour  repondre  aux questions des clients des
  F.A.I.  (Fournisseurs  d'Acces  Internet)  concernant  la   facon   de
  configurer et d'utiliser Linux.

  Afin  d'aider  ceux  qui  veulent  connecter leurs machines Linux a un
  F.A.I. pour la premiere fois, ce document essaie de couvrir la plupart
  des  situations  possibles.  Ceci  provoque, inevitablement, plusieurs
  recoupements  avec  les  autres  HowTo  Linux  et  livres   du   Linux
  Development  Project (L.D.P.).  Pour mieux apprehender les details, il
  est conseille de se referer a ces documents.

  La  plupart  des   documentations   existantes   s'adressent   a   des
  utilisateurs  ayant  une  certaine  experience,  et  les  utilisateurs
  debutants ont souvent des problemes pour en extraire les  informations
  interessantes.

  Pour simplifier, les exemples de ce document supposeront ce qui suit :

  +o  Nom d'utilisateur : dirk

  +o  Mot de passe: SuperSecret

  +o  Fournisseur d'acces Internet : acme.net

  +o  Serveur de mail : mail.acme.net

  +o  Serveur de news : news.acme.net

  +o  Serveur de noms : 193.212.1.0

  +o  Numero de telephone : 12345678

  La machine de dirk s'appelle roderick.

  Toutes  les  informations   ci-dessus   doivent   naturellement   etre
  remplacees  par  celles  concernant  le  F.A.I.  que vous utilisez. La
  plupart du temps, un minimum de modifications doivent  etre  apportees
  pour   les   utilisateurs  ayant  plusieurs  F.A.I.  Informez-moi  des
  problemes que vous rencontrez sur ce point.

  11..11..  NNoouuvveelllleess vveerrssiioonnss ddee ccee ddooccuummeenntt

  Les nouvelles versions de ce  document  seront  regulierement  postees
  dans   _c_o_m_p_._o_s_._l_i_n_u_x_._a_n_s_w_e_r_s.    Elles  seront  aussi  mises  sur  les
  differents sites FTP qui archivent le L.D.P. Parmi ceux-ci :

  ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO

  De plus, vous pourrez generalement trouver ce document sur la page  du
  Linux Development Project WWW a :

  http://sunsite.unc.edu/LDP/

  Enfin,  la derniere version de ce document sera disponible sous divers
  formats a :

  ftp://ftp.sn.no/user/egilk/ISP-Hookup-HOWTO.txt

  ftp://ftp.sn.no/user/egilk/ISP-Hookup-HOWTO.ps.gz

  ftp://ftp.sn.no/user/egilk/ISP-Hookup-HOWTO.tar.gz

  http://home.sn.no/home/egilk/ISP-Hookup-HOWTO.html

  11..22..  CCrriittiiqquueess

  Tous commentaires, erreurs constatees, informations supplementaires et
  critiques de toutes sortes doivent etre envoyees a :

  egil@kvaleberg.no

  http://home.sn.no/home/egilk/

  Tous  commentaires  concernant  la  traduction, les eventuelles fautes
  commises par le traducteur doivent etre envoyees a :

  jaco@mail.dotcom.fr

  11..33..  CCoonnssiiddeerraattiioonnss lleeggaalleess

  Aucune responsabilite quant au contenu de ces documents ne  peut  etre
  acceptee.  L'utilisation  des concepts, exemples et autres contenus se
  fait sous  votre  responsabilite.  De  plus,  ceci  est  une  premiere
  version,   ayant   donc   de   nombreuses  possibilites  d'erreurs  et
  d'imprecisions.

  Une seule des nombreuses configurations possibles est decrite. Dans le
  monde Linux, il y a generalement plusieurs facons de faire les choses.
  Les paragraphes contenant des alternatives aux  choix  possibles  sont
  marques  par  AALLTT::.  Notez  aussi  que  les  references  FTP  changent
  legerement lorsque les nouvelles versions des programmes arrivent.

  Seuls les programmes qui,  sous  certaines  conditions,  peuvent  etre
  utilises  ou  evalues  pour  des besoins personnels seront decrits. La
  plupart des programmes sont disponibles avec  leurs  sources  complets
  sous les conditions GNU ou assimilees.

  11..44..  CCooppyyrriigghhtt

  Ce  document est copyright(c)1996 Egil Kvaleberg et distribue sous les
  conditions suivantes :

  +o  Les documents HOWTO Linux peuvent  etre  reproduits  et  distribues
     totalement  ou en partie, sur tout support physique ou electronique
     aussi longtemps que ce  copyright  est  reproduit  sur  toutes  les
     copies.  La  distribution  commerciale  est  permise et encouragee.
     Cependant, l'auteur souhaiterait en etre informe.

  +o  Toutes traductions, travaux derives ou travaux de synthese incluant
     des  documents  HOWTO Linux doivent etre couverts par ce copyright.
     Ceci signifie que vous ne pouvez produire un travail a partir  d'un
     HOWTO   et   imposer   des   restrictions  supplementaires  sur  sa
     distribution. Des exceptions a ces regles  peuvent  etre  accordees
     sous  certaines  conditions  ;  contactez le coordinateur des HOWTO
     Linux a l'adresse ci-dessous.

  +o  Pour toute question, contactez Greg Hankins,  le  coordinateur  des
     HOWTO a :

  gregh@sunsite.unc.edu

  22..  CCoommmmeenntt ssee ccoonnnneecctteerr aauu rreessttee dduu mmoonnddee ??

  Je  suppose  que  les composants logiciels reseau essentiels (i.e. les
  parties principales des series N de la Slackware) ont  ete  installes,
  et  qu'il a ete decide quel sera le port serie utilise par /dev/modem.

  En general, la configuration par defaut  permet  uniquement  un  acces
  direct a /dev/modem sous le compte root.

  Pour  se  connecter  directement  a un F.A.I, et pour experimenter les
  sequences  de  connexion,  on  peut  utiliser  le  programme  minicom,
  relativement simple a utiliser.

  22..11..  LLaa ccoonnffiigguurraattiioonn ddee bbaassee

  La configuration de la machine pour son utilisation sur le reseau doit
  se faire sous le compte  root.   Avant  d'aller  plus  loin,  il  faut
  verifier que le fichier /etc/hosts.deny contient la ligne suivante :

       ALL: ALL

  Normalement,  on  veut  s'autoriser  soi-meme, il faut donc ajouter la
  ligne suivante au fichier /etc/hosts.allow:

       ALL: LOCAL

  Ou, si on veut insister :

       ALL: 127.0.0.1

  Pour tout ce qui suit, on suppose des  connexions  via  PPP  au  moyen
  d'une  adresse  IP dynamique.  Si on fait partie des privilegies ayant
  une adresse fixe, il y aura quelques differences a prendre en  compte.

  Il   est  pratique  d'avoir  un  nom  pour  sa  machine,  un  nom  que
  l'utilisateur IP peut choisir comme il,  ou  elle,  le  desire.   Pour
  cela, il faut mettre ce nom dans /etc/HOSTNAME:

       roderick

  L'etape   suivante  consiste  a  declarer  le  serveur  de  noms  dans
  /etc/resolv.conf:

       search .
       nameserver 193.212.1.0

  Le serveur de noms soit etre specifie par une adresse IP numerique qui
  depend  du F.A.I. On peut avoir jusqu'a trois serveurs de noms differ-
  ents, chacun sur une ligne differente, ils seront appeles dans l'ordre
  ou ils sont listes.

  Si  l'on  veut pouvoir utiliser des noms comme unemachine pour resumer
  le nom complet unemachine.acme.net,  on  doit  remplacer  la  premiere
  ligne par :

       search acme.net

  Un minimum de configuration sera aussi necessaire dans /etc/hosts.  La
  plupart des utilisateurs seront ainsi capable de gerer :

       127.0.0.1 localhost
       0.0.0.0   roderick

  Ceux possedant une adresse IP fixe remplaceront evidemment 0.0.0.0 par
  celle-ci...

  De plus, le minimum que doit contenir le fichier /etc/networks est :

       loopback  127.0.0.0
       localnet  0.0.0.0

  On  doit  aussi  configurer  son domaine de courrier electronique dans
  /etc/mailname:

       acme.net

  Le nom d'utilisateur et le mot de passe necessaires pour se  connecter
  au F.A.I. doivent etre specifies dans /etc/ppp/pap-secrets

       dirk * SuperSecret

  Dans  le  cas  ou  le  F.A.I.  utilise  CHAP au lieu de PAP, le nom de
  fichier est /etc/ppp/chap-secrets.

  Enfin, les points fondamentaux concernant la  procedure  de  connexion
  elle-meme  doivent  etre precises avant que PPP soit demarre. Ceci est
  fait dans /etc/ppp/chatscript:

       TIMEOUT 5
       "" ATZ
       OK ATDT12345678
       ABORT "NO CARRIER"
       ABORT BUSY
       ABORT "NO DIALTONE"
       ABORT WAITING
       TIMEOUT 45
       CONNECT ""
       TIMEOUT 5
       "name:" ppp

  Ces lignes peuvent etre  peaufinees  pour  les  cas  particuliers.  Le
  numero de telephone dans la troisieme ligne doit, bien sur, etre celui
  du fournisseur d'acces. Certains peuvent remplacer  la  chaine  d'ini-
  tialisation  ATZ  du modem par une autre, plus adaptee au modem qu'ils
  utilisent. La derniere ligne specifie que l'on attend le prompt name:,
  et  que  la  reponse  doit  etre  ppp. D'autres systemes peuvent avoir
  d'autres procedures de connexion.

  Pour reellement lancer une  connexion,  le  protocole  PPP  peut  etre
  initialise en lancant la commande suivante :

       exec pppd connect \
            'chat -v -f /etc/ppp/chatscript' \
             -detach crtscts modem defaultroute \
             user dirk \
             /dev/modem 38400

  normalement,  on  doit  etre  en ligne, et le rester jusqu'a ce que le
  programme soit detruit en tapant Ctrl-C.  Tous les messages concernant
  la connexion seront ajoutes aux fichiers diagnostics du systeme.  Pour
  les lire, il suffit de faire :

       tail /var/adm/messages

  Aussi longtemps que la connexion PPP fonctionne, on a acces a Internet
  et  on  peut utiliser des programmes comme ftp, ncftp, rlogin, telnet,
  finger etc.  Tous ces programmes font partie du paquetage reseau.

  De plus amples informations sur  PPP sont disponibles dans :

  /usr/lib/ppp/README.linux

  /usr/lib/ppp/README.linux-chat

  Enfin, un mot sur la securite. Le fichier /etc/inetd.conf enumere tous
  les  services  que  notre  machine offrira au monde exterieur. Avec le
  fichier /etc/hosts.deny  que  l'on  a  cree  plus  haut,  aucun  acces
  exterieur n'est permis. Pour ceux qui en ont besoin, les acces doivent
  etre explicitement permis au moyen du  fichier  /etc/hosts.allow.  Les
  transactions locales peuvent etre permises par la ligne suivante :

       ALL: LOCAL

  Voir aussi man 5 hosts_access.

  Une derniere remarque : une certaine confusion existe sur les noms des
  protocoles  POP.  Une  definition  dans   le   fichier   /etc/services
  compatible avec a peu pres tout est :

       pop2      109/tcp   pop-2          # PostOffice V.2
       pop3      110/tcp   pop-3 pop      # PostOffice V.3

  AALLTT:: A la place de chatscript, on peut utiliser le programme dip, bien
  plus souple : mais pas en meme temps que diald.

  AALLTT:: Les  privilegies  ayant  une  connexion  TCP/IP  permanente,  par
  exemple par un reseau Ethernet, peuvent sans probleme tout ignorer sur
  PPP et se concentrer sur la configuration de leur carte reseau.

  AALLTT:: Certains  peuvent ne pas avoir  la  possibilite  d'utiliser  PPP,
  mais  peuvent  utiliser  SLIP  a  la  place.  Ce dernier protocole est
  supporte  de  la  meme  facon  que  PPP.  Une  autre  possibilite  est
  d'utiliser  UUCP. D'autres peuvent echanger du courrier et des news au
  moyen de SOUP. Une description de ce dernier cas est donne dans :

  ftp://ftp.sn.no/user/bjorn/Linux-offline.tgz

  Le programme TERM est aussi envisageable. Pour l'utiliser, voir  _T_e_r_m_-
  _H_O_W_T_O.

  33..  CCoommmmeenntt _s_u_r_f_e_r ?

  Si l'on considere que le mode texte est ce qu'il y a de mieux, on peut
  utiliser  l'explorateur  Web  Lynx,  que  l'on  trouvera  a  l'adresse
  suivante :

  ftp://sunsite.unc.edu/pub/Linux/system/Network/info-
  systems/lynx-2.3.bin2.tar.gz

  Si on travaille  sous  X-Window,  on  peut  aussi  utiliser  l'un  des
  nombreux  explorateurs  graphiques.  Chimera  se  trouve  a  l'adresse
  suivante :

  ftp://sunsite.unc.edu/pub/Linux/system/Network/info-
  systems/chimera-1.65.bin.ELF.tar.gz

  http://www.unlv.edu/chimera/

  Mosaic :

  ftp://sunsite.unc.edu/pub/Linux/system/Network/info-
  systems/Mosaic-2.7b1-aout.tgz

  ftp://ftp.NCSA.uiuc.edu/Web/Mosaic/Unix/binaries/2.6

  Mozilla (Netscape) :

  ftp://sunsite.unc.edu/pub/Linux/system/Network/info-systems/netscape-
  v11b3.tar.gz

  ftp://ftp.cs.uit.no/pub/www/netscape

  Ces  navigateurs  sont  toujours  disponibles  dans  de  nouvelles  et
  _p_a_s_s_i_o_n_n_a_n_t_e_s versions.

  L'utilisation  et  l'evaluation  de  ces  programmes  sont  sujets   a
  certaines conditions. Respectez-les.

  44..  CCoommmmeenntt eennvvooyyeerr eett rreecceevvooiirr dduu ccoouurrrriieerr eelleeccttrroonniiqquuee ??

  D'abord,  il  faut s'assurer que sendmail est installe.  Sendmail trie
  le courrier interne et a destination de  l'exterieur  et  conserve  ce
  dernier jusqu'au moment ou il peut l'envoyer.

  Sendmail   est  base  sur  une  configuration  que  l'on  trouve  dans
  /etc/sendmail.cf.  Un exemple convenant aux utilisateurs de F.A.I.  se
  trouve dans :

  ftp://ftp.sn.no/user/egilk/sendmail.cf

  Celui-ci utilise _p_r_o_c_m_a_i_l comme agent postal mais peut etre facilement
  modifie pour utiliser _d_e_l_i_v_e_r.

  Il est, bien sur, necessaire d'avoir une adresse de domaine ooffffiicciieellllee
  pour   le  courrier  exterieur.  Cette  information  est  donnee  dans
  /etc/sendmail.cf:

       # who I masquerade as (null for no masquerading)
       DMacme.net

  Ceci suppose que l'on ait le meme nom d'utilisateur local que pour son
  F.A.I.   Sendmail est maintenant configure pour envoyer ddiirreecctteemmeenntt au
  destinataire. Pour eviter de longues connexions repetitives  dans  les
  cas  ou  la connexion du destinataire est lente et irreguliere, il est
  generalement pratique d'utiliser un F.A.I. comme  moyen  de  stockage.
  Ceci doit etre precise par une specification DS :

       # "Smart" relay host (may be null)
       DSmail.acme.net

  Attention : sendmail est quelque peu  sensible a la presence de carac-
  teres de tabulation dans sendmail.cf.  On peut utiliser  l'editeur  vi
  pour   s'assurer   que  ces  caracteres  de  tabulation  sont  laisses
  inchanges.

  La reception de courrier est souvent realisee par  le  protocole  POP3
  qui  peut  etre demarre a chaque fois que la connexion est etablie. On
  peut tester ca par le script suivant :

       sendmail -q
       popclient -3 -v mail.acme.net -u dirk -p "SuperSecret" \
              -k -o /usr/spool/mail/dirk

  Ce script peut etre lance apres que la connexion PPP ait ete  etablie.
  Attention  :  ce  script  est  uniquement  pour  tester,  il faut donc
  s'assurer que la boite a lettres locale  n'est  pas  modifiee  pendant
  l'execution  du  script. L'option -k indique que le courrier doit etre
  llaaiissssee dans la boitre a lettre du F.A.I. et que l'on  recupere  seule-
  ment  une  copie  du courrier. Bien sur, une fois que l'on sait que la
  configuration fonctionne, on enleve cette option.

  Attention : le mot de passe apparaitra sur la ligne de commande. On  a
  donc interet a regler ca le plus vite possible...

  Une  version  sure  et  amelioree  de  ce script peut etre recuperee a
  l'adresse suivante :

  ftp://ftp.sn.no/user/egilk/pop-script.tar.gz

  Cette version du script necessite  l'installation  de  procmail,  mais
  c'est un travail que l'on ne regrettera jamais de toutes facons :

  ftp://sunsite.unc.edu/pub/Linux/system/Mail/mailhandlers/procmail-3.10-2.tar.gz

  Procmail est un outil simple et souple  qui  peut  trier  le  courrier
  entrant  selon  un  grand  nombre de criteres. Il est aussi capable de
  gerer des taches automatiques comme les messages d'absences et autres.

  Il  faut  noter  que  lorsqu'on utilise procmail directement comme ci-
  dessus, la situation est quelque peu differente de celle decrite  dans
  la  documentation  de  ce  programme.  Le  fichier  .forward nn''eesstt ppaass
  necessaire, et l'on n'a pas besoin non plus de fichier .procmailrc. Ce
  dernier est uniquement requis si on veut trier le courrier.

  Une  interface utilisateur pour la lecture et l'envoi de courrier peut
  etre trouvee dans des programmes comme Pine ou Elm.

  AALLTT:: Fetchmail est maintenant  une  alternative  tres  interessante  a
  popclient. La derniere version est disponible a :

  AALLTT::  S'il  n'est  pas reellement necessaire d'avoir le demon sendmail
  active, on peut  mettre  en  commentaires  le  demarrage  de  sendmail
  (generalement fait dans /etc/rc.d/rc.M) pour reduire l'utilisation des
  ressources.

  AALLTT:: A la place de sendmail on peut utiliser le programme ssmmaaiill,  plus
  simple.   On  trouve  une  bonne  description  de celui-ci (et de bien
  d'autres choses evoquees ici) dans le _G_u_i_d_e _d_e _l_'_a_d_m_i_n_i_s_t_r_a_t_i_o_n _r_e_s_e_a_u
  _s_o_u_s _L_i_n_u_x.

  AALLTT::  Il  existe  aussi  un  ensemble  de  macros  m4 pour realiser un
  sendmail.cf tout neuf. Il peut  convenir  a  une  simple  installation
  aussi bien que pour modifier une configuration existante.

  AALLTT::  Il  y  a  encore  d'autres  possibilites plus simples mais moins
  souples. Par exemple, le programme Pine peut  fonctionner  de  maniere
  autonome  s'il  est  configure  correctement.  On  peut aussi utiliser
  certains explorateurs Web.

  AALLTT:: Utilise comme gestionnaire de courrier et de news, le module Gnus
  de  Emacs  a de nombreux fans. De plus amples informations se trouvent
  a :

  http://www.ifi.uio.no/ larsi/

  AALLTT:: Une alternative a popclient est pop-perl5, disponible a :

  ftp://sunsite.unc.edu/pub/Linux/System/Mail/pop-perl5-1.1.tar.gz

  55..  LLeess NNeewwss

  55..11..  CCoommmmeenntt ccoonnffiigguurreerr uunn lleecctteeuurr ddee NNeewwss oonnlliinnee ??

  Tant que PPP est actif, on peut lire les News oonnlliinnee.  Il y a beaucoup
  de  programmes  disponibles pour cela. Deux choix simples sont rtin et
  trn.

  Pour commencer a lire les News, la  seule  chose  necessaire  pour  la
  configuration est, dans la plupart des cas, de faire (generalement une
  fois pour toutes dans le fichier .profile) :

       export NNTPSERVER=news.acme.net

  Pour avoir  une  adresse  _F_r_o_m  correcte  dans  les  envois,  certains
  programmes necessitent _e_v_e_n_t_u_e_l_l_e_m_e_n_t :

       export NNTP_INEWS_DOMAIN=acme.net

  55..22..  CCoommmmeenntt ccoonnffiigguurreerr uunn lleecctteeuurr ddee NNeewwss oofffflliinnee ??

  Pour  pouvoir  lire  les  News en etant deconnecte, reduire la note de
  telephone et avoir une plus grande souplesse, on peut mettre en  place
  un serveur local de News. Ceci necessite un peu de configuration ainsi
  que de l'espace  sur  le  disque.  Apres  l'installation,  les  choses
  fonctionneront  plus  ou  moins d'elles-memes. Un peu d'attention sera
  necessaire de temps en temps.

  Deux solutions differentes seront decrites.

  55..33..  CCoommmmeenntt iinnssttaalllleerr CC NNeewwss??

  Cette solution est basee sur le serveur de  News  CC  NNeewwss  et  sur  le
  protocole  NNTP.   C News etait prevu, a l'origine, pour un autre type
  de configuration, mais est suffisamment souple pour gerer aussi  notre
  situation.  On  peut aussi utiliser le serveur de News IINNNN plus recent
  mais aussi plus gourmand en ressources. Quel que  soit  le  choix,  il
  faut   veiller   a   nnee  ppaass  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 etre
  places dans le repertoire /usr/lib/news. Une facon de faire, lorsqu'on
  est sous le compte root, est de taper su news; cd.

  Les fichiers les plus importants de la configuration sont :

  +o  active  est  un  panorama  des groupes de news actifs. Il est mis a
     jour  par  la   commande   addgroup,   par   exemple   :   addgroup
     comp.os.linux.networking y.

  +o  organization  contient  simplement  ce que l'on veut mettre dans le
     champ _O_r_g_a_n_i_z_a_t_i_o_n_: des en-tetes. Dans notre cas :

       Dirk Gently's Holistic Detective Agency

  +o  mailname dans notre cas doit contenir : acme.net.

  +o  whoami contient le nom de notre site dans le  thread  _P_a_t_h_:.   Dans
     une configuration telle qu'elle est decrite ici, ou 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 sur qu'il est
     unique. Dans notre cas roderick.

  +o  sys controle la recherche et la distribution des News. On supposera
     que,  dans notre cas, le F.A.I. ajoute acme.net a Path et que c'est
     la seule source de News que l'on ait. L'exemple donne fait que l'on
     accepte  tout  ce  qui  arrive,  et  que  l'on  poste seulement sur
     acme.net ce qui n'a pas ete vu avant et qui est poste au depart sur
     notre propre site.  Dans cette configuration simplifiee, on suppose
     que tous les groupes viennent du meme  endroit.   distribution,  et
     ddooiitt  etre  inclus.   La  lettre F indique que les articles de News
     sortants seront regroupes dans un fichier.

       ME:all/all::
       acme/acme.net:all,!junk/all:FL:

  +o  Un sous-repertoire pour les News sortantes doit etre cree. Ici :

       mkdir /var/spool/news/out.going/acme

  +o  mailpaths s'occupe du postage dans les groupes  moderes,  bien  que
     cette tache puisse etre habituellement laissee au F.A.I.

  C  News  necessite  un  peu de maintenance journaliere, mais ceci peut
  etre specifie une fois pour toute en utilisant la commande crontab  -e
  en tant qu'utilisateur news. Voici une configuration possible qui peut
  etre ajustee 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 necessaire
       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  detruit les articles lorsqu'ils sont perimes chaque
  nuit a 00:30 et les trois dernieres  commandes  realisent  differentes
  taches d'administration et de correction d'erreur.

  On  doit  aussi  s'assurer  que  tout est correct lorsqu'on demarre 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 etre recuperees en utilisant le programme NNeewwssXX, qui
  les prend sur un serveur  NNTP.   Ce  programme  peut  etre  trouve  a
  l'adresse suivante :

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

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

  La configuration de  NewsX  est  tres  simple.  Son  installation  est
  classique :

       make
       su
       make install
       exit

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

  Pour recuperer les articles, l'utilisateur news  lance  les  commandes
  suivantes (en supposant une connexion PPP ou similaire etablie) :

       newsrun
       newsx acme news.acme.net
       newsrun

  L'option -d permet un affichage continu a l'ecran. La documentation de
  NewsX donne toutes les informations necessaires.
  NewsX s'occupe aussi de poster les articles sortants.

  Pour controler la suppression des articles perimes, on a  besoin  d'un
  fichier  explist.  Les commentaires de cet exemple devraient expliquer
  ce que l'on cherche a faire :

       # maintenu dans l'historique 14 jours, rien ne dure plus de 120 jours
       /expired/           x    14   -
       /bounds/            x    0-1-120 -

       # on garde ca pendant 2 mois
       comp.sources,comp.os.linux.all     x    60   -

       # les dechets sont vite supprimes
       junk,control             x    2    -

       # defaut:  14 jours, pas  d'archivage
       all                 x    14   -

  AALLTT:: Pour les petits serveurs de News, on n'a pas souvent besoin de la
  commande  newgroup.  Le  trafic  est  eennoorrmmee compare a son utilite. Le
  point essentiel est que les  articles  soient  supprimes  et  que  les
  groupes  puissent  etre  crees  automatiquement. Pour etre sur que les
  messages de commande contenant newgroup ne brouillent pas les  choses,
  un fichier nomme newgroupperm specifie 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 crees
  (y), et l'utilisateur news en sera averti (v).   Tout  le  reste  sera
  silencieusement (q) ignore (n).  La derniere ligne suffit si l'on veut
  creer tous les groupes manuellement.

  AALLTT:: Des alternatives a  NewsX  sont  suck,  ou  slurp  combines  avec
  postit.   Slurp utilise NNTP NEWNEWS qui provoque de serieuses charges
  sur beaucoup de serveurs de News.

  55..44..  CCoommmmeenntt ccoonnffiigguurreerr LLeeaaffnnooddee??

  Une tout autre solution consiste  a  installer  le  paquetage  integre
  leafnode.  Celui-ci gere toutes les taches necessaires a un serveur de
  News personnel et est facile a configurer.  Il est disponible a :

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

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

  Le  repertoire  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

  Toujours sous le compte root, on change la  ligne  qui  commande  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  declare  le  serveur
  NNTP.  Dans notre cas :

       server = news.acme.net

  Leafnode  se recherchera lui-meme 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'echange de News est  aussi  realise  sous  le  compte  news  par  la
  commande suivante (PPP est sense fonctionner) :

       /usr/local/sbin/fetch

  Les  utilisateurs  voulant  lire  les  news  doivent alors utiliser la
  recette decrite dans _C_o_m_m_e_n_t _c_o_n_f_i_g_u_r_e_r _u_n _l_e_c_t_e_u_r _d_e _N_e_w_s _o_n_-_l_i_n_e  _?,
  en la configurant pour la machine locale, i.e :

       export NNTPSERVER=localhost

  C'est  tout  ce  qu'il  y  a a faire. Le premier fetch transferera une
  liste des groupes de news disponibles. Leafnode s'occupera  alors  des
  groupes  que les utilisateurs desirent et s'adaptera la _p_r_o_c_h_a_i_n_e _f_o_i_s
  qu'il est active.

  AALLTT:: Une alternative a leafnode est nntpcache, disponible a :

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

  66..  CCoommmmeenntt aauuttoommaattiisseerr llaa pprroocceedduurree ddee ccoonnnneexxiioonn ??

  La gestion automatisee des news et du courrier est simple  a  realiser
  sous Linux.

  Tout  d'abord, on doit creer un script /usr/lib/ppp/ppp-on qui demarre
  la connexion au F.A.I. Souvent,  ce  fichier  contient  simplement  la
  ligne suivante :

       /usr/sbin/pppd

  Les precisions supplementaires sont faites dans : /etc/ppp/options:

       connect "/usr/lib/ppp/chat -v -f /etc/ppp/chatscript"
       crtscts
       modem
       defaultroute
       asyncmap 00000000
       user dirk
       /dev/modem 38400

  Pour  terminer  une  connexion,  on  utilise  la  version  fournie  de
  /usr/lib/ppp/ppp-off.

  Apres avoir teste le fonctionnement  de  ces  deux  scripts,  on  doit
  ecrire  ceux  qui  realisent  les  differentes  taches. Le script pour
  recuperer le courrier a ete decrit plus haut et on  suppose  qu'il  se
  trouve dans /home/dirk/pop.

  Un script pour l'envoi de courrier peut etre cree dans /root/mail :

  #! /bin/sh
  #
  # echange de courrier
  # timeout de 10 minutes :
  TIMEOUT=600
  DT=10

  # lancer sendmail :
  sendmail -q &

  # recuperer le courrier :
  su dirk -c /home/dirk/pop

  # attendre que sendmail se termine :
  t=0
  while ! mailq | grep -q "Mail queue is empty"; do
      t=$[$t+$DT]
      if [ $t -gt $TIMEOUT ] ; then
       echo "sendmail -q timeout ($TIMEOUT).."
       exit 1
      fi
      sleep $DT
  done

  exit 0

  Le    script   pour   envoyer   des   News   peut   etre   cree   dans
  /usr/lib/news/news :

       #!/bin/sh
       #
       # echange des news
       # doit etre lance par l'utilisateur news :
       cd /usr/lib/news

       # mettre a jour le lot de sortie (C News) :
       /usr/lib/newsbin/input/newsrun < /dev/null

       # echange des news :
       /usr/lib/newsbin/newsx acme news.acme.net

       # vidage du lot entrant :
       /usr/lib/newsbin/input/newsrun < /dev/null

  Un  script  pour  rassembler   tout   cela   reste   a   ecrire   dans
  /root/news+mail:

  #!/bin/sh
  #
  # echange de courrier et de news
  # doit etre lance par root
  #
  if ! /usr/lib/ppp/ppp-on; then
      exit 1
  fi
  trap "/usr/lib/ppp/ppp-off" 1 2 3 15

  # echange de news+mail :
  /root/mail &
  su news -c _news/news
  wait

  # deconnexion...
  /usr/lib/ppp/ppp-off

  # mise a jour du lot entrant (C News) :
  su news -c /usr/lib/newsbin/input/newsrun < /dev/null &

  exit 0

  Il est tres facile d'etendre tout ceci afin de n'etablir une connexion
  que si du courrier ou des news sortants sont presents.   On  appellera
  ce  script  /root/news+mail.cond,  et  on  se rappellera que le nom du
  spool de news sortant doit etre modifie pour que cela fonctionne :

       #!/bin/sh
       #
       # echange de news et courrier, seulement s'il y a des news ou du courrier sortant.
       # (C News spool)
       if [ -s /var/spool/news/out.going/acme/togo ] ||
           ! ( mailq | grep -q "Mail queue is empty"); then
            /root/news+mail
       fi

  La seule chose restant a faire est de dire le moment ou tout cela doit
  se passer. Pour cela, on utilise la commande crontab -e sous le compte
  root. On suppose que l'on  veut  toujours  echanger  les  news  et  le
  courrier  a  7  heures du matin, puis toutes les 4 heures s'il y a des
  news et du mail sortant :

       00 7      * * *     /root/news+mail
       00 11,15,19,23 * * *     /root/news+mail.cond

  Il faut s'assurer que chaque partie fonctionne correctement  avant  de
  les  integrer ensemble. On peut ajouter plusieurs autres taches par la
  suite, comme le reglage de l'horloge (en  utilisant  ntpdate),  et  la
  mise  a  jour  automatique (miroir) des fichiers WWW er FTP locaux par
  rapport a ceux du F.A.I (en utilisant make et ftp).

  AALLTT:: Selon les preferences, il est  aussi  possible  de  renverser  le
  processus.  Chaque  fois  qu'une  connexion PPP est etablie, le script
  /etc/ppp/ip-up sera demarre.  On  peut  y  ajouter  tout  ce  qui  est
  necessaire  pour  demarrer l'echange de courrier et des news. Voir man
  pppd pour plus de details.

  AALLTT:: On peut aussi se connecter en PPP  a  chaque  fois  qu'un  trafic
  reseau  est  detecte.   C'est,  dans bien des cas, la solution la plus
  elegante mais elle  est  tributaire  d'une  bonne  configuration  pour
  eviter  l'etablissement  de  connexions frequentes et couteuses.  Plus
  d'information peut etre trouvee a :

  http://www.dna.lth.se/ erics/diald.html

  L'utilitaire diald est disponible a :

  ftp://sunsite.unc.edu/pub/Linux/system/Network/serial/diald-0.16.tar.gz

  Au  meme  endroit,  on  trouvera  aussi  d'autres  variations  sur les
  connexions PPP.

  77..  PPoouurr ffiinniirr

  77..11..  YY aa tt''iill dd''aauuttrreess cchhoosseess qquuee jjee ddeevvrraaiiss ssaavvooiirr ??

  +o  Les differents messages d'erreurs  du  systeme  seront  normalement
     envoyes  en  courrier  interne. Pour s'assurer qu'ils pourront etre
     lus, on doit creer un  fichier  /etc/aliases.  Ne  pas  oublier  la
     commande  newaliases  a  chaque  fois  qu'on  change ce fichier. Un
     exemple qui devrait couvrir la plupart des eventualites est :

       PostMaster: root
       ftp: root
       news: root
       usenet: root
       FaxMaster: root
       fax: root
       WebMaster: root
       MAILER.DAEMON: root

  +o  Un grand nombre de programmes pour Linux peuvent etre  trouves  sur
     SSuunnssiittee, qui est generalement plutot encombre. Cependant, il y a de
     nombreux   miroirs   et   chaque   fois    qu'une    reference    a
     ftp://sunsite.unc.edu/pub/Linux/..   est  faite,  on  doit  essayer
     d'utiliser  un  miroir   proche   de   chez   soi,   par   exemple,
     ftp://ftp.lip6.fr/pub/linux/sunsite/...

  +o  Pour  ceux  qui  viennent  du  monde  Yarn, une conversion vers les
     repertoires  standards  est  possible  en  utilisant  le  programme
     yarn2mf disponible a :

  ftp://ftp.sn.no/user/egilk/yarn2mf.zip

  88..  IInnffoorrmmaattiioonnss ssppeecciiffiiqquueess aauuxx FF..AA..II..

  Des informations plus specifiques a certains F.A.I. sont disponibles a
  partir de plusieurs sources :

  DDeemmoonn IInntteerrnneett ((ddeemmoonn..ccoo..uukk))

  ftp://ftp.demon.co.uk/pub/unix/linux/Demon/slack3.0.help.tgz

  EEaassyynneett TBA

  NNeettccoomm
  http://www.netcom.com/bin/webtech/NetCruiser/Operating_Systems/Linux/linux.cfg.html

  PPoowweerrTTeecchh,, SScchhiibbsstteeddnneetttt,, TTeelleennoorr OOnnlliinnee

  http://home.sn.no/home/egilk/no-isp.html

  PPrriimmeenneett TBA

  SSttaannffoorrdd

  http://www-leland.stanford.edu/ wkn/Linux/network/network.html

  Si une information specifique a un F.A.I n'est pas listee  ici,  merci
  de le signaler.

  88..11..  CCoommmmeenntt eenn ssaavvooiirr pplluuss ??

  Le  livre  du   _L_i_n_u_x  _D_o_c_u_m_e_n_t_a_t_i_o_n  _P_r_o_j_e_c_t,  intitule _L_i_n_u_x _N_e_t_w_o_r_k
  _A_d_m_i_n_i_s_t_r_a_t_o_r_'_s _G_u_i_d_e  (NDT  :  traduit  en  francais  sous  le  titre
  "Administration  reseau  sous  Linux")  et  ecrit  par  Olaf Kirch est
  obligatoire pour celui qui veut configurer et maintenir  tout  ce  qui
  touche a TCP/IP et a Internet.

  ftp://sunsite.unc.edu/pub/Linux/docs/linux-doc-project/network-
  guide/nag-1.0.ascii.tar.gz

  La documentation  fournie  avec  chaque  paquetage  donne  normalement
  toutes les informations necessaires, en tout cas, un survol.  Les man-
  pages sont toujours le premier endroit pour chercher une  information.
  Par exemple, on peut essayer :

       man pppd

  On peut aussi trouver de la documentation sur certains programmes dans
  l'arborescence /usr/doc,  bien  qu'elle  ne  soit  pas  toujours  bien
  structuree.

  Les HOWTOS suivants sont particulierement pertinents :

  +o  IInnssttaallllaattiioonn--HHOOWWTTOO donne toutes les bases.

  +o  NNEETT--22--HHOOWWTTOO  est  une description tres minutieuse de l'installation
     et de la configuration du code NET.  La plupart de  ces  operations
     doit  surement  avoir deja ete faite si on utilise une distribution
     Linux  standard  (par  ex.  Slackware,  Red  Hat,  Debian).    Mais
     plusieurs sections sur la configuration et les problemes rencontres
     valent vraiment la peine d'etre lues.

  +o  MMaaiill--HHOOWWTTOO explique comment configurer les differents outils. Comme
     precedemment, la plupart de ces reglages auront deja ete faits lors
     de l'installation d'une distribution Linux standard.

  +o  NNeewwss--HHOOWWTTOO concerne la mise en place d'un spool de News  classique.

  +o  TTiinnyy--NNeewwss  couvre  encore  une autre possibilite pour recuperer les
     News.

  +o  PPPPPP--HHOOWWTTOO est une bonne description des problemes que que l'on peut
     rencontrer lorsqu'on met en place une connexion PPP.

  +o  SSeerriiaall--HHOOWWTTOO   contient  tout  ce  que  l'on  doit  savoir  sur  la
     configuration des ports serie.

  +o  MMaaiill--QQuueeuuee  explique  comment  configurer  _s_e_n_d_m_a_i_l  pour  toujours
     mettre en attente le courrier distant tout en delivrant le courrier
     local en meme temps.

     Red Hat a une liste de diffusion specialisee pour  PPP  ;  pour  en
     faire partie, envoyez un message a

  redhat-ppp-list-request avec le champ sujet suivant :

       subscribe

  88..22..  RReemmeerrcciieemmeennttss

  Toutes  ces  informations  viennent  de  nombreuses sources. Merci aux
  personnes suivantes qui ont participe directement, ou indirectement :

       Adam Holt <holt@graphics.lcs.mit.edu>
       Arne Coucheron <arneco@oslonett.no>
       Arne Riiber <riiber@oslonett.no>
       Arnt Gulbrandsen <agulbra@troll.no>
       Bjorn Steensrud <bjornst@powertech.no>
       Gisle Hannemyr <gisle@a.sn.no>
       Hans Amund Rosbach <haro@sesam.dnv.no>
       Hans Peter Verne <hpv@ulrik.uio.no>
       Harald T Alvestrand <Harald.T.Alvestrand@uninett.no>
       Harald Terkelsen  <Harald.Terkelsen@adm.hioslo.no>
       Haavard Engum <hobbes@interlink.no>
       James Youngman <JYoungman@vggas.com>
       Johan S. Seland <johanss@sn.no>
       John Phillips <john@linux.demon.co.uk>
       Jorn Lokoy <jorn@oslonett.no>
       Kenneth Tjostheim <kenneth.tjostheim@asplanviak.no>
       Kjell M. Myksvoll <kjell.myksvoll@fou.telenor.no>
       Kjetil T. Homme <kjetilho@math.uio.no>
       Michael Meissner <meissner@cygnus.com>
       N J Bailey <N.J.Bailey@leeds.ac.uk>
       Nicolai Langfeldt <janl@math.uio.no>
       Ove Ruben R Olsen <Ove.R.Olsen@ub.uib.no>
       R. Bardarson <ronb@powernet.net>
       Steinar Fremme <steinar@fremme.no>
       Sverre H. Huseby <sverrehu@ifi.uio.no>
       Trond Eivind Glomsrod <teg@stud.imf.unit.no>
       Tommy Larsen <tommy@mix.hive.no>

