  Le Linux NIS(YP)/NYS/NIS+ HOWTO
  Thorsten Kukuk
  Version 0.12, 12 Juin 1998

  Ce document dcrit la faon de configurer Linux en client de NIS(YP)
  ou de NIS+, et la faon d'installer un serveur NIS.
  ______________________________________________________________________

  Table des matires

























































  1. Version franaise

  2. Introduction

     2.1 Nouvelles versions de ce document
     2.2 Avertissement
     2.3 Retour d'information et corrections
     2.4 Remerciements

  3. Glossaire et informations gnrales

     3.1 Glossaire des termes employs
     3.2 Quelques informations gnrales

  4. NIS ou NIS+ ?

     4.1 libc 4/5 avec "NIS traditionnel" ou NYS ?

  5. Comment a marche ?

     5.1 Comment fonctionne NIS(YP) ?
     5.2 Comment fonctionne NIS+ ?

  6. Le RPC Portmapper

  7. De quoi avez-vous besoin pour configurer NIS ?

     7.1 Dterminez si vous tes un serveur, un esclave ou un client
     7.2 Les programmes
     7.3 Le dmon ypbind
     7.4 Configurer un client NIS en utilisant le NIS traditionnel
     7.5 Configurer un client NIS en utilisant NYS
     7.6 Configurer un client NIS en utilisant la glibc 2.x
     7.7 Le fichier nsswitch.conf

  8. Mots de passe Shadow avec NIS et PAM

  9. Que faut-il pour configurer NIS+ ?

     9.1 Les programmes
     9.2 Configurer un client NIS+
     9.3 NIS+, keylogin, login et PAM
     9.4 Le fichier nsswitch.conf

  10. Configurer un serveur NIS

     10.1 Le programme serveur ypserv
     10.2 Le programme serveur yps
     10.3 Le programme rpc.yppasswdd

  11. Vrifier l'installation de NIS ou de NYS

  12. Problmes et erreurs de fonctionnement de NIS

  13. FAQ : Les questions les plus frquemment poses



  ______________________________________________________________________

  11..  VVeerrssiioonn ffrraannaaiissee


  Ce document constitue la version franaise du NIS-HOWTO, adaptation
  ralise par Frdric Veynachter (frederic.veynachter@hol.fr), le 26
  juillet 1998, fortement inspire de la traduction prcdemment
  ralise par ric Dumas (dumas@Linux.EU.Org), le 19 Novembre 1997.

  Vous pouvez consulter ce document sur les sites suivants :

    http://www.freenix.fr/linux/HOWTO
     <http://www.freenix.fr/linux/HOWTO/>

    ftp://ftp.lip6.fr/pub/linux/french/docs/HOWTO
     <ftp://ftp.lip6.fr/pub/linux/french/docs/HOWTO/>

     ainsi que leurs nombreux miroirs.

  Pour plus de renseignements concernant la traduction en langue
  franaise des documents du LDP (_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),
  consultez le document "Liste-des-HOWTO" que l'on trouve aux mmex
  endroits.

  Les diffrents sites conseills dans  ce document possdent srement
  des miroirs plus proches de chez vous, comme par exemple ftp.lip6.fr,
  ftp.loria.fr ... utilisez-les !


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

  Les machines sous Linux sont de plus en plus souvent installes et
  connectes dans des rseaux informatiques.Pour simplifier
  l'administration systme, la plupart des rseaux (surtout ceux qui
  sont fonds sur du matriel Sun) fonctionnent avec le _N_e_t_w_o_r_k
  _I_n_f_o_r_m_a_t_i_o_n _S_e_r_v_i_c_e. Les machines Linux peuvent tirer de nombreux
  avantages des services NIS existant, ou fournir elles-mmes ces
  services. Elles peuvent galement se comporter comme des clients NIS+,
  mais il s'agit encore d'une version bta.

  Ce document tente de rpondre aux questions concernant la mise en
  place et la configuration de NIS(YP) et de NIS+ sur votre machine
  Linux. N'oubliez pas de lire la section concernant ``le Portmapper
  RPC''.

  Le NIS-Howto est rdig et maintenu par:


       Thorsten Kukuk, kukuk@vt.uni-paderborn.de


  La version initiale de ce document a t ralise par:



       Andrea Dell'Amico       <adellam@ZIA.ms.it>
       Mitchum DSouza          <Mitch.DSouza@NetComm.IE>
       Erwin Embsen            <erwin@nioz.nl>
       Peter Eriksson          <peter@ifm.liu.se>




  que nous tenons  remercier.


  22..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

  Vous pourrez toujours trouver la dernire version de ce document sur
  le web via l'URL http://sunsite.unc.edu/mdw/HOWTO/NIS-HOWTO.html
  <http://sunsite.unc.edu/mdw/HOWTO/NIS-HOWTO.html>.


  Les nouvelles versions de ce document seront galement prsentes sur
  diffrents sites ftp et web consacrs  Linux, y compris sur la page
  principale du LDP (Linux Documentation Project).

  Des liens vers les traductions de ce document peuvent tre trouvs 
  l'adresse http://www-vt.uni-paderborn.de/~kukuk/linux/nis-howto.html
  <http://www-vt.uni-paderborn.de/~kukuk/linux/nis-howto.html>.


  22..22..  AAvveerrttiisssseemmeenntt

  Mme si ce document rassemble le maximum de donnes selon notre
  connaissance, il peut contenir, et contient sans doute, certaines
  erreurs. Nous vous demandons de lire attentivement tous les fichiers
  README qui sont livrs avec les outils dcrits dans ce document, pour
  avoir plus de dtails et une information plus prcise.  Nous
  essayerons, dans la mesure du possible, d'viter que des erreurs se
  glissent ans ce document.


  22..33..  RReettoouurr dd''iinnffoorrmmaattiioonn eett ccoorrrreeccttiioonnss

  Si vous avez des questions ou des commentaires  propos de ce
  document, n'hsitez pas  envoyer un courrier lectronique 
  kukuk@vt.uni-paderborn.de.  J'accepte volontiers toutes les
  suggestions ou critiques. Si vous trouvez une anomalie ou une erreur
  dans ce document, merci de me le faire savoir, pour que je puisse la
  corriger dans la prochaine version.

  Merci de ne pas m'envoyer de questions concernant des problmes
  spcifiques  une distribution de Linux. Je ne les connais pas toutes.
  J'essayerai nanmoins d'intgrer toute solution qui me sera envoye.


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

  Nous voudrions remercier toutes les personnes qui ont contribu
  (directement ou indirectement)  ce document. Par ordre alphabtique :



       Byron A Jeff            <byron@cc.gatech.edu>
       Miquel van Smoorenburg  <miquels@cistron.nl>




  Theo de Raadt <deraadt@theos.com> est  l'origine du code yp-clients.
  Swen Thuemmler <swen@uni-paderborn.de> a port ce code pour Linux et
  il a galement port le code yp-routines pour la libc (toujours fond
  sur le travail de Theo). Thorsten Kukuk a totalement r-crit toutes
  les routines NIS(YP) et NIS+ pour la GNU libc 2.x.


  33..  GGlloossssaaiirree eett iinnffoorrmmaattiioonnss ggnnrraalleess

  33..11..  GGlloossssaaiirree ddeess tteerrmmeess eemmppllooyyss

  Dans ce document, bon nombre d'acronymes sont employs. Voici la liste
  des plus utiliss, avec une brve explication.


     DDBBMM
        DataBase Management (Gestion de la base de donnes):
        bibliothque de fonctions pour maintenir les clefs et le contenu
        de la base de donnes.
     DDLLLL
        Dynamically Linked Library (Bibliothque lie dynamiquement):
        bibliothque de fonctions charges dynamiquement  l'excution.


     ddoommaaiinnnnaammee
        Nom du domaine : nom "clef" utilis par les clients NIS pour
        qu'ils puissent trouver un serveur NIS convenable qui gre la
        clef du domaine. Notez que cela n'a rien  voir avec le
        "domaine" DNS (nom de la machine) des machines.


     FFTTPP
        File Transfer Protocol  (Protocole de transfert de fichiers) :
        protocole utilis pour transfrer des fichiers entre deux
        ordinateurs.


     lliibbnnssll
        Name services library  : bibliothque d'appels systmes (tels
        que getpwnam, getservbyname, ...)  sur les systmes Unix SVR4.
        La GNU libc utilise cette bibliothque pour les fonctions NIS
        (YP) et NIS+.


     lliibbssoocckkeett
        Bibliothque de fonctions de manipulation de sockets socket,
        bind, listen, ... sur les systmes SVR4.


     NNIISS
        Network Information Service (Service d'information du rseau):
        service qui permet  certaines informations d'tre connues par
        toutes les machines disponibles sur le rseau. Ce service est
        gr dans la bibliothque standard de la libc Linux. Il est
        considr par la suite comme tant le "NIS traditionnel".


     NNIISS++
        Network Information Service (Plus...)   : en gros, version de
        NIS amliore. NIS+ a t conu par Sun Microsystems Inc.  pour
        remplacer NIS, avec un niveau de scurit suprieur et une
        meilleure gestion pour les grosses installations.


     NNYYSS
        Il s'agit du nom d'un projet de dveloppement et de
        standardisation pour NIS+, YP et Switch.  Il est dirig par
        Peter Eriksson (<peter@ifm.liu.se>).  Il contient entre autres
        choses une rimplmentation complte du code de NIS
        (c'est--dire YP) qui utilise les fonctionnalits  _N_a_m_e _S_e_r_v_i_c_e_s
        _S_w_i_t_c_h de la bibliothque NYS.


     NNSSSS
        Name Service Switch (littralement, commutation des noms de
        service): le fichier /etc/nsswitch.conf dtermine l'ordre de
        recherche d'informations en fonction des services demands.


     RRPPCC
        Remote Procedure Call (Appel de procdure distante): les
        routines RPC permettent aux programmes C d'appeler d'autres
        machines  travers le rseau.  Lorsque des personnes parlent de
        RPC, elles parlent souvent en fait de la version Sun RPC.

     YYPP Yellow Pages(tm)  : marque dpose par British Telecom. (les
        pages jaunes... comme les ntres !).


     TTCCPP--IIPP
        Transmission Control Protocol/Internet Protocol : protocole de
        communication le plus frquemment utilis sur les machines Unix.


  33..22..  QQuueellqquueess iinnffoorrmmaattiioonnss ggnnrraalleess

  Les quatre lignes ci-dessous sont une citation du manuel
  d'administration rseau de Sun(TM) System.



           "NIS was formerly known as Sun Yellow Pages (YP) but
            the name Yellow Pages(tm) is a registered trademark
            in the United Kingdom of British Telecom plc and may
            not be used without permission."

           "NIS etait formellement connu sous le nom de
            Yellow Pages (YP) (Pages Jaunes) mais le nom
            Yellow Pages(tm) est une marque enregistree au
            Royaume Uni par British Telecom et ne peut etre
            utilisee sans autorisation."




  NIS est l'abrviation pour _N_e_t_w_o_r_k _I_n_f_o_r_m_a_t_i_o_n _S_e_r_v_i_c_e (Service
  d'Information Rseau).  Son but est de fournir des informations, qui
  doivent tre connues sur l'ensemble du rseau,  toutes les machines
  connectes. Les informations susceptibles d'tre distribues par NIS
  sont:


    noms de login, mots de passe, rpertoires d'ouverture (/etc/passwd)

    renseignements sur les groupes d'utilisateurs (/etc/group)

  Par exemple, si votre mot de passe et les informations s'y rattachant
  sont enregistrs dans la base de donnes NIS, vous pourrez vous loguer
  sur toutes les machines du rseau sur lesquelles un client NIS est
  lanc.

  Sun est une marque dpose de Sun Microsystems Inc, brevete par
  SunSoft, Inc.



  44..  NNIISS oouu NNIISS++ ??

  Le choix entre NIS et NIS+ est facile  faire : utilisez NIS tant que
  vous n'avez pas besoin d'utiliser NIS+ ou si vous avez des besoins de
  scurit importants. NIS+ est bien plus problmatique  administrer
  (c'est plutt facile  manipuler du ct du client, mais en ce qui
  concerne le ct serveur, c'est une horreur). Un autre problme est
  que le support de NIS+ pour Linux est encore en cours de dveloppement
  : vous devrez avoir la toute dernire version de glibc ou attendre la
  sortie de glibc 2.1. Il existe un portage du NIS+ glibc pour libc5,
  qui consiste  installer une libc de remplacement.




  44..11..  lliibbcc 44//55 aavveecc ""NNIISS ttrraaddiittiioonnnneell"" oouu NNYYSS ??

  Le choix entre "NIS traditionnel" ou le code NIS dans la bibliothque
  NYS est un choix entre paresse et maturit d'un ct, flexibilit et
  amour de l'aventure de l'autre.

  Le code "NIS traditionnel" se trouve dans la bibliothque C standard,
  existe depuis fort longtemps, et souffre parfois de son age et de son
  lger manque de souplesse.

  Le code NIS de la bibliothque NYS vous oblige  recompiler la
  bibliothque libc pour y inclure le code NYS ( moins que vous ne
  trouviez une version de libc prcompile chez quelqu'un qui l'a dj
  fait).

  Une autre diffrence est que le code "NIS traditionnel" gre en partie
  les groupes de rseaux NIS (_N_e_t_g_r_o_u_p_s), alors que le code NYS ne le
  fait pas. D'un autre ct, le code NYS vous permet d'utiliser les mots
  de passe Shadow d'une manire transparente.  Le code "NIS
  traditionnel" ne permet pas d'utiliser les mots de passe Shadow sur
  NIS.

  Vous pouvez cependant oublier tout a si vous utilisez la nouvelle
  bibliothque GNU C 2.x (alias libc6). Elle comporte un vrai support de
  NSS (_N_a_m_e _S_w_i_t_c_h _S_e_r_v_i_c_e), ce qui la rend vraiment souple, et elle est
  capable de grer les "maps" NIS/NIS+ suivantes : aliases, ethers,
  group, hosts, netgroups, networks, protocols, publickey, passwd, rpc,
  services et shadow. La bibliothque GNU C ne pose aucun problme avec
  les mots de passe Shadow sur NIS.


  55..  CCoommmmeenntt aa mmaarrcchhee ??

  55..11..  CCoommmmeenntt ffoonnccttiioonnnnee NNIISS((YYPP)) ??

  A l'intrieur d'un rseau, il doit y avoir au moins une machine
  faisant office de serveur NIS. Vous pouvez avoir plusieurs serveurs
  NIS, chacun grant plusieurs "domaines" NIS, ou bien vous pouvez avoir
  des serveurs NIS coopratifs. Dans ce cas, l'un d'entre eux est dit
  serveur NIS _m_a__t_r_e, les autres tant serveurs NIS esclaves. Vous
  pouvez galement mlanger les deux possibilits.

  Les serveurs esclaves n'ont qu'une copie de la base de donnes et la
  reoivent du serveur NIS matre lorsque des changement sont effectus
  dans la base de donnes. En fonction du nombre de machine et de la
  fiabilit de votre rseau, vous pouvez dcider d'installer un ou
  plusieurs serveurs esclaves. Lorsqu'un serveur NIS tombe en panne ou
  bien s'il est trop long pour rpondre aux requtes, un client NIS
  connect  ce serveur va alors essayer d'en trouver un en tat de
  marche.

  Les bases de donnes NIS sont au format DBM, un driv des bases de
  donnes ASCII. Par exemple, les fichiers /etc/passwd et /etc/group
  peuvent tre directement convertis dans le format DBM en utilisant un
  programme de conversion _A_S_C_I_I_-_t_o_-_D_B_M (makedbm est inclus dans les
  programmes du serveur). Le serveur NIS matre devrait avoir les deux
  types : la base ASCII et la base DBM.

  Les serveurs esclaves seront avertis de tout changement dans les
  tables NIS (grce au programme yppush), et effectueront
  automatiquement les changements ncessaires pour synchroniser leurs
  bases de donnes. Les clients NIS n'ont pas besoin d'effectuer cette
  opration puisqu'ils communiquent tout le temps avec le serveur NIS
  pour lire les informations ranges dans les bases de donnes DBM.


  L'auteur des clients YP pour Linux nous a inform que la nouvelle
  version de ypbind (situe dans l'archive ypbind-3.3.tar.gz) permet
  d'indiquer le serveur NIS  contacter dans un fichier de
  configuration, ce qui vite d'effectuer un _b_r_o_a_d_c_a_s_t (ce qui n'est pas
  scuris car n'importe qui peut installer un serveur NIS et peut donc
  rpondre aux requtes...).


  55..22..  CCoommmmeenntt ffoonnccttiioonnnnee NNIISS++ ??

  NIS+ est une nouvelle version du service d'information rseau de Sun.
  La diffrence la plus notable entre NIS et NIS+ est que NIS+ est
  capable de grer des donnes chiffres ainsi que l'authentification
  _v_i_a les RPC scuriss.

  Le modle de nommage de NIS+ est bas sur une structure arborescente.
  Chaque noeud de l'arbre correspond  un objet NIS+,  partir duquel
  nous avons six types : directory, entry, group, link, table et private
  (rpertoire, entre, groupe, lien, table et priv).

  Le rpertoire NIS+ qui constitue la racine de l'espace de nommage NIS+
  est appel le rpertoire racine. Il existe deux rpertoires spciaux
  NIS+ : org_dir et groups_dir. Le premier regroupe toutes les tables
  d'administration, telles que passwd, hosts, et mail_aliases.  Le
  second rpertoire contient les objets groupe NIS+ qui sont utiliss
  pour contrler les accs. L'ensemble des rpertoires org_dir,
  groups_dir et leurs parents sont considrs comme tant un domaine
  NIS+.


  66..  LLee RRPPCC PPoorrttmmaappppeerr

  Pour lancer n'importe lequel des programmes mentionns ci-dessous,
  vous aurez besoin de lancer le programme /usr/sbin/rpc.portmap.
  Certaines distributions de LLiinnuuxx ont dj dans le code du script
  /etc/rc.d/rc.inet2  ce qui est ncessaire pour lancer ce dmon.  Tout
  ce que vous avez  faire, c'est de dcommenter ce qui est ncessaire
  puis  rebooter votre machine pour l'activer.  Lisez la documentation
  de votre distribution pour plus de dtails.

  Le RPC portmapper (portmap(8)) est un serveur qui convertit les
  numros des programmes RPC en numros de ports pour le protocole
  TCP/IP (ou UDP/IP). Il doit tre lanc dans un certain ordre pour
  raliser les appels RPC (ce que fait le programme client NIS/NIS+)
  vers les serveurs (comme par exemple un serveur NIS/NIS+) sur cette
  machine.  Lorsque le serveur RPC est lanc, il va indiquer au dmon
  portmap quel numro de port il scrute, et quels sont les numros de
  programmes RPC avec lesquels il est prt  travailler. Lorsque le
  client souhaite raliser un appel RPC  certain numro de programme,
  il contacte dans un premier temps portmap sur le serveur de la machine
  pour dterminer le numro de port o il doit alors envoyer les paquets
  RPC.

  En principe, les serveurs RPC standards sont lancs par inetd (manuel
  inetd(8)), donc portmap doit tre lanc avant qu'inetd ne le soit.

  Pour les RPC scuriss, le portmapper a besoin des services d'horloge.
  Assurez-vous qu'ils sont activs dans le fichier /etc/inetd.conf sur
  toutes les machines :







  #
  # Time service is used for clock syncronization.
  #
  time    stream  tcp     nowait  root    internal
  time    dgram   udp     wait    root    internal




  IMPORTANT : n'oubliez pas de relancer inetd aprs toute modification
  de ce fichier !


  77..  DDee qquuooii aavveezz--vvoouuss bbeessooiinn ppoouurr ccoonnffiigguurreerr NNIISS ??



  77..11..  DDtteerrmmiinneezz ssii vvoouuss tteess uunn sseerrvveeuurr,, uunn eessccllaavvee oouu uunn cclliieenntt

  Pour rpondre  cette question, nous pouvons considrer deux cas :

  1. votre machine va tre insre dans un rseau avec des serveurs NIS
     dj existants ;

  2. vous n'avez pas encore de serveur NIS dans votre rseau.

  Dans le premier cas, vous n'aurez besoin que des programmes clients
  (ypbind, ypwhich, ypcat, yppoll, ypmatch). Le programme le plus
  important est ypbind. Ce dmon doit toujours tre lanc, c'est--dire
  qu'il doit toujours apparatre dans la liste des processus.  Comme
  c'est un dmon, il doit tre lanc au dmarrage de votre machine dans
  le fichier de dmarrage (/etc/rc.local, /etc/init.d/nis,
  /etc/rc.d/init.d/ypbind).  Ds que ypbind fonctionne, votre systme
  devient un client NIS.

  Dans le second cas, vous n'avez pas de serveur NIS, donc vous aurez
  galement besoin d'un programme serveur NIS (gnralement ypserv).  La
  section 10 ( _1_0 _C_o_n_f_i_g_u_r_e_r _u_n _s_e_r_v_e_u_r _N_I_S ) dcrit comment configurer
  un serveur NIS sur votre machine Linux en utilisant la version ypserv
  implmente par Peter Eriksson et Thorsten Kukuk. On peut remarquer
  qu' partir de la version 0.14 de cette implmentation, le concept de
  matre-esclave dont nous avons parl dans la section 5.1 est gr.

  Il existe galement un autre serveur NIS en libre distribution, appel
  yps, crit par Tobias Reber en Allemagne, et qui gre le concept de
  matre-esclave mais qui a d'autres limitations et qui n'est plus
  maintenu.


  77..22..  LLeess pprrooggrraammmmeess

  La bibliothque /usr/lib/libc.a (version 4.4.2 et suprieure) ou la
  bibliothque dynamique partage /lib/libc.so.x contient tous les
  appels systmes correspondants pour compiler sans problme les
  programmes clients et serveurs NIS.  Pour la glibc 2.x, vous aurez
  galement besoin de /lib/libnsl.so.1.

  Certaines personnes ont signal que NIS ne fonctionne qu'avec
  /usr/lib/libc.a version 4.5.21 et suprieure, donc, pour plus de
  sret, vitez d'utiliser des bibliothques plus anciennes.  Les
  clients NIS peuvent tre rcuprs sur les sites suivants :





    Site                   Repertoire                      Nom du fichier

    ftp.kernel.org        /pub/linux/utils/net/NIS         yp-tools-2.0.tar.gz
    ftp.kernel.org        /pub/linux/utils/net/NIS         ypbind-mt-1.2.tar.gz
    ftp.kernel.org        /pub/linux/utils/net/NIS         ypbind-3.3.tar.gz
    sunsite.unc.edu       /pub/Linux/system/Network/admin  yp-clients-2.2.tar.gz
    ftp.uni-paderborn.de  /linux/local/yp                  yp-clients-2.2.tar.gz
    ftp.uni-paderborn.de  /linux/local/yp                  ypbind-3.3.tar.gz




  Une fois que vous aurez rcupr ces programmes, suivez les
  instructions qui sont livres avec. yp-clients 2.2 doit tre utilis
  avec les bibliothques libc4 et libc5 jusqu' la version 5.4.20. Les
  libc 5.4.21 et glibc 2.x ncessitent yp-tools 1.4.1. La nouvelle
  version yp-tools 2.0 fonctionnera avec toutes les libc Linux. Vous ne
  devriez pas utiliser les libc 5.4.21 - 5.4.35 car elles prsentent de
  nombreux dfauts. Utilisez la libc 5.4.36 ou une version suprieure,
  sinon, la plupart des programmes de YP ne fonctionneront pas. ypbind
  3.3 fonctionnera galement avec toutes les bibliothques. Vous ne
  devriez jamais utiliser la version ypbind qui est fournie dans yp-
  clients 2.2.


  77..33..  LLee ddmmoonn yyppbbiinndd


  Nous supposons que vous avez compil correctement les programmes et
  que vous tes prt  les installer. L'endroit o installer le dmon
  ypbind est le rpertoire /usr/sbin. Certains peuvent vous dire que
  vous n'avez pas besoin de ypbind sur un systme qui utilise NYS. C'est
  faux : ypwhich et ypcat en ont besoin.

  Vous  devez raliser cette opration en tant que super-utilisateur
  (i.e. "root"), bien sr.  Les autres binaires (ypwhich, ypcat, yppoll,
  ypmatch) doivent tre placs dans un rpertoire accessible  tous les
  utilisateurs, normalement c'est le rpertoire /usr/bin qui est
  utilis.

  Le programme ypbind a besoin d'un fichier de configuration
  /etc/yp.conf. Vous pouvez y indiquer, en dur, le nom du serveur NIS.
  Pour plus d'informations, consultez la page de manuel de ypbind(8).
  Vous aurez galement besoin de ce ficher pour NYS.  Un court exemple :


         ypserver voyager
         ypserver ds9




  Si le systme est capable de rsoudre les noms de machine sans NIS,
  vous pouvez utiliser le nom de la machine. Dans le cas contraire,
  utilisez l'adresse IP.

  Il est souhaitable de tester ypbind avant de l'inclure dans les
  fichiers de /etc/rc.d/. Pour tester ypbind faites ceci :

    Vrifiez que votre nom de domaine est dfini. Si ce n'est pas le
     cas, faites





              /bin/domainname-yp nis.domain






  o nis.domain doit tre une chane, qui n'a normalement RIEN A VOIR
  avec le nom de votre machine ! La raison est que cela rend plus diffi
  cile le travail des pirates pour trouver les mots de passe de la base
  de donnes du serveurs NIS. Si vous ne connaissez pas le nom du
  domaine de votre rseau, contactez votre administrateur systme.

    Lancez /usr/sbin/rpc.portmap s'il ne tourne pas dj.

    Crez le rpertoire /var/yp s'il n'existe pas.

    Lancez /usr/sbin/ypbind

    Utilisez la commande rpcinfo -p localhost pour vrifier qu'ypbind
     est capable d'enregistrer ses services dans portmapper. La commande
     rpcinfo devrait produire un message de ce style :


              program vers proto   port
               100000    2   tcp    111  portmapper
               100000    2   udp    111  portmapper
               100007    2   udp    637  ypbind
               100007    2   tcp    639  ypbind
               300019    1   udp    660






    Vous pouvez galement lancer rpcinfo -u localhost ypbind.  Cette
     commande devrait alors produire :



               program 100007 version 2 ready and waiting





  Vous devriez alors tre capable d'utiliser les programmes clients tels
  que ypcat, etc. Par exemple, ypcat passwd vous donne la liste des mots
  de passe (chiffrs !) de la base de donnes NIS.

  IMPORTANT : si vous avez vit la procdure de test, vrifiez que vous
  avez positionn le nom de votre domaine, et cr le rpertoire :



           /var/yp




  Ce rpertoire DOIT exister pour qu'ypbind soit correctement lanc.

  Pour vrifier que le nom de domaine est correctement configurer,
  utilisez le programme /bin/ypdomainname, fourni avec yp-tools 2.0. Il
  utilise la fonction _y_p___g_e_t___d_e_f_a_u_l_t___d_o_m_a_i_n, qui est plus restrictive.
  Elle n'autorise pas, par exemple, le nom de domaine "(none)", qui est
  celui par dfaut avec Linux et qui cre de nombreux problmes.

  Si le test a fonctionn, vous pouvez alors modifier les fichiers
  /etc/rc.d sur votre systme pour qu'ypbind soit lanc lors de
  l'amorage de la machine et pour que votre machine se comporte comme
  un client NIS. Assurez-vous que le nom de domaine soit configur lors
  de l'amorage.

  Normalement, tout est prt. Relancez votre machine et observez les
  messages pour voir si ypbind est lanc.


  77..44..  CCoonnffiigguurreerr uunn cclliieenntt NNIISS eenn uuttiilliissaanntt llee NNIISS ttrraaddiittiioonnnneell


  Pour la recherche de noms de machines, vous devez ajouter "nis" dans
  la ligne "host" du fichier /etc/host.conf. Lisez la page de manuel
  "resolv+.8" pour plus de dtails.

  Ajoutez ensuite la ligne suivante dans le fichier /etc/passwd de vos
  machines clientes :



       +::::::




  Vous pouvez galement utiliser les caractres + et - pour
  inclure/exclure ou modifier certains utilisateurs. Si vous souhaitez
  exclure l'utilisateur guest, ajoutez -guest  votre fichier
  /etc/passwd. Si vous souhaitez utiliser un interprteur de commandes
  diffrent (par exemple ksh) pour l'utilisateur "linux", ajoutez la
  ligne +linux::::::/bin/ksh.  Les champs que vous ne souhaitez pas
  modifier doivent rester vides.  Vous pouvez galement utiliser les
  Netgroups pour grer les utilisateurs.

  Par exemple, pour n'utiliser que les login miquels, dth et ed, ainsi
  que tous les membres du netgroup sysadmin, tout en ayant quand mme
  accs aux comptes des autres utilisateurs :



             +miquels:::::::
             +ed:::::::
             +dth:::::::
             +@sysadmins:::::::
             -ftp
             +:*::::::/etc/NoShell




  Remarquez qu'avec Linux, vous pouvez galement surcharger le champ mot
  de passe, comme nous l'avons fait dans cet exemple. Nous avons
  galement supprim le login "ftp" : cet utilisateur n'est plus connu
  sur la machine et le ftp anonyme ne fonctionnera pas.

  Le netgroup peut tre dfini de la sorte :


       sysadmins (-,software,) (-,kukuk,)


  IMPORTANT : la fonctionnalit de netgroup n'est implmente qu'
  partir de la libc version 4.5.26. Mais si vous possdez une libc plus
  ancienne que la 4.5.26, tout utilisateur dans la base de donne des
  mots de passe peut accder  la machine linux si vous lancez ypbind.


  77..55..  CCoonnffiigguurreerr uunn cclliieenntt NNIISS eenn uuttiilliissaanntt NNYYSS


  Il vous suffit d'avoir le fichier de configuration NIS (/etc/yp.conf)
  qui pointe sur le (ou les) serveur(s) adquat(s), ainsi qu'un fichier
  /etc/nsswitch.conf correctement configur.

  Vous devriez galement installer ypbind. Il n'est pas ncessaire pour
  la libc, mais les outils NIS(YP) en ont besoin.

  Si vous souhaitez utiliser les fonctionnalits d'inclusion/exclusion
  d'utilisateurs (+/-guest/+@admins), vous devez utiliser "passwd:
  compat" et "group: compat".  Notez qu'il n'existe pas de "shadow:
  compat" !  Vous devez utiliser "shadow: files nis" dans ce dernier
  cas.

  Les sources de NYS sont fournies avec les sources de libc5. Lorsque
  vous lancez la configuration pour la premire fois, rpondez "NO"  la
  question "Values correct" (NDT: en franais, "Est-ce que les valeurs
  sont correctes ?"), puis rpondez "YES"  la question "Build a NYS
  libc from nys" (NDT: en franais, "Construire une libc NYS  partir de
  nys ?").


  77..66..  CCoonnffiigguurreerr uunn cclliieenntt NNIISS eenn uuttiilliissaanntt llaa gglliibbcc 22..xx


  La glibc utilise la version "NIS traditionnelle", donc vous devrez
  lancer ypbind. Le fichier /etc/nsswitch.conf doit galement tre
  correctement configur. Si vous utilisez le mode compat pour les
  tables passwd, shadow ou group, vous devez ajouter le caractre "+" 
  la fin de ces fichiers, et vous pourrez alors utiliser les
  fonctionnalits d'inclusion/d'exclusion d'utilisateurs.  La
  configuration est exactement la mme que sous Solaris 2.x.


  77..77..  LLee ffiicchhiieerr nnsssswwiittcchh..ccoonnff


  Le fichier de configuration /etc/nsswitch.conf dtermine l'ordre dans
  lequel sont effectues les recherches de certaines informations, en
  fonction des donnes et des services, de la mme manire que le
  fichier /etc/host.conf dtermine la faon dont les recherches de noms
  de machines se font. Par exemple, la ligne



           hosts: files nis dns




  indique que la recherche d'un nom de machine sera d'abord effectue
  dans le fichier local /etc/hosts, puis dans la table NIS et enfin en
  utilisant le DNS (/etc/resolv.conf et named). Si aucune machine ne
  correspond, alors une erreur est renvoye. Ce fichier doit tre
  accessible en lecture pour tous les utilisateurs !

  Voici un bon exemple de fichier /etc/nsswitch.conf pour NIS:

  #
  # /etc/nsswitch.conf
  #
  # Un exemple de configuration de NSS (Name Service Switch). Ce fichier doit
  # etre trie en mettant en tete les services les plus utilises.
  #
  # L'entree '[NOTFOUND=return]' signifie que la recherche d'une entree
  # doit s'arreter si la recherche dans l'entree precedente n'a rien donne
  # Notez que si la recherche echoue pour tout autre raison
  # (par exemple, le serveur NIS ne repond pas), alors la recherche continue
  # avec l'entree suivante.
  #
  # Les entrees connues sont :
  #
  #       nisplus                 NIS+ (NIS version 3)
  #       nis                     NIS (NIS version 2), connu comme YP
  #       dns                     DNS (Domain Name Service)
  #       files                   Fichiers locaux
  #       db                      Bases de donnees /var/db
  #       [NOTFOUND=return]       Arret de la recherche si l'on n'a rien trouve
  #

  passwd:     compat
  group:      compat
  shadow:     compat

  passwd_compat: nis
  group_compat: nis
  shadow_compat: nis

  hosts:      nis files dns

  services:   nis [NOTFOUND=return] files
  networks:   nis [NOTFOUND=return] files
  protocols:  nis [NOTFOUND=return] files
  rpc:        nis [NOTFOUND=return] files
  ethers:     nis [NOTFOUND=return] files
  netmasks:   nis [NOTFOUND=return] files
  netgroup:   nis
  bootparams: nis [NOTFOUND=return] files
  publickey:  nis [NOTFOUND=return] files
  automount:  files
  aliases:    nis [NOTFOUND=return] files




  Les entres passwd_compat, group_compat et shadow_compat ne sont
  gres qu'avec la glibc 2.x. S'il n'y a pas d'entre shadow dans
  /etc/nsswitch.conf, la glibc utilisera l'entre passwd pour effectuer
  ses recherches. Il existe certaines entres supplmentaires avec la
  glibc comme hesoid. Pour plus d'informations, consultez la
  documentation de la glibc.


  88..  MMoottss ddee ppaassssee SShhaaddooww aavveecc NNIISS eett PPAAMM

  L'utilisation des mots de passe Shadow avec NIS est toujours une
  mauvaise ide.  Vous perdez toute la scurit apporte par le systme
  Shadow. Une bonne faon d'viter les mots de passe Shadow avec NIS est
  de ne mettre dans le fichier /etc/shadow que les utilisateurs du
  systme local. Enlevez de la base de donnes Shadow toutes les entres
  correspondant aux utilisateurs NIS, et remettez les mots de passe dans
  /etc/passwd. Vous pourrez ainsi utiliser le systme Shadow pour le
  super-utilisateur (i.e. "root"), et les mots de passe classiques pour
  les utilisateurs NIS. Cette solution a l'avantage de pouvoir
  fonctionner avec tous les clients NIS.

  Si cette option n'est pas possible pour vous, il faudra utiliser la
  bibliothque GNU C 2.x. C'est la seule bibliothque libc pour Linux
  qui gre l'utilisation des mots de passe Shadow avec NIS. Sous Linux,
  la libc5 ne le permet pas. La libc5 compile avec le support de NYS
  contient une partie de code permettant le mlange Shadow - NIS, mais
  ce code prsente de srieuses erreurs dans certains cas et ne
  fonctionne pas correctement avec toutes les entres Shadow.

  Le problme suivant est PAM. La bibliothque GNU C gre l'utilisation
  des mots de passe Shadow avec NIS, mais PAM ne le fait pas,
  essentiellement  pam_pwdb/libpwdb.  C'est un gros problme pour les
  utilisateurs de RedHat 5.x. Si vous avez glibc et PAM, vous devez
  changer les entres dans /etc/pam.d/*. Changez toutes les entres de
  pam_pwdb par l'intermdiaire des modules pam_auth_unix_*. Cette
  mthode devrait fonctionner.


  99..  QQuuee ffaauutt--iill ppoouurr ccoonnffiigguurreerr NNIISS++ ??



  99..11..  LLeess pprrooggrraammmmeess


  Le code de NIS+ pour Linux a t dvelopp pour la bibliothque GNU C
  2.  Il existe galement une version pour la libc5 de Linux, puisque
  toutes les applications commerciales sont compiles en dition de lien
  avec cette bibliothque, et que vous ne pouvez pas les recompiler en
  utilisant la glibc. Il y a des problmes avec la libc5 et NIS+: Vous
  ne pourrez pas raliser d'dition de lien statique de vos programmes,
  et les programmes compils avec cette bibliothque ne fonctionneront
  pas avec les autres versions de la libc5.

  Vous devez rcuprer et recompiler la dernire version de la glibc2,
  et une distribution base sur cette bibliothque comme la Redhat
  Mustang ou l'instable Debian. Mais attention : il s'agit toujours
  d'une version bta. Lisez la documentation concernant la glibc et
  celle fournie par la distribution.  La glibc2.0.x ne gre pas
  pleinement NIS+, et ne l'intgrera jamais. La premire version avec la
  gestion NIS+ sera la 2.1.

  Les programmes clients NIS+ peuvent tre rcuprs sur les sites :


         Site                   Repertoire                 Nom du fichier

         ftp.kernel.org         /pub/software/libs/glibc   libc-*, glibc-crypt-*,
                                                           glibc-linuxthreads-*
         ftp.kernel.org         /pub/linux/utils/net/NIS+  nis-tools-1.4.2.tar.gz
         ftp.kernel.org         /pub/linux/utils/net/NIS+  pam_keylogin-1.2.tar.gz




  Les distributions bases sur la glibc peuvent tre rcupres sur les
  sites :


         Site                   Repertoire

         ftp.redhat.com         /pub/redhat/redhat-5.1
         ftp.debian.org         /pub/debian/dists/hamm


  Pour compiler la glibc, suivez les instructions livres avec les
  sources.  Vous pouvez trouver  l'adresse suivante la version patche
  de la libc5, base sur NYS et sur les sources de la glibc, qui peut
  tre utilise pour remplacer la libc5.



         Site                   Repertoire                 Nom du fichier

         ftp.kernel.org         /pub/linux/utils/net/NIS+  libc-5.4.44-nsl-0.4.10.tar.gz




  Vous pouvez galement consulter le site http://www-vt.uni-
  paderborn.de/~kukuk/linux/nisplus.html <http://www-vt.uni-
  paderborn.de/~kukuk/linux/nisplus.html> pour plus d'informations ainsi
  que pour avoir les dernires sources.


  99..22..  CCoonnffiigguurreerr uunn cclliieenntt NNIISS++


  IMPORTANT : pour configurer un client NIS+, lisez la documentation
  NIS+ Solaris pour voir ce qu'il convient de faire du ct serveur.  Ce
  document ne dcrit que le ct client !

  Aprs avoir install la nouvelle libc ainsi que nis-tools, crez les
  rfrences pour le nouveau client sur le serveur NIS+. Assurez vous
  que portmap est lanc.  Ensuite, vrifiez que votre PC Linux est  la
  mme heure que le serveur NIS+. Pour raliser des RPC scuriss, vous
  disposez d'une courte priode de 3 minutes, durant lesquelles les
  rfrences sont valides. Lancer xntpd sur toutes les machines peut
  tre une bonne ide. Aprs tout a, excutez les commandes suivantes :



       domainname nisplus.domain.
       nisinit -c -H <serveur NIS+>




  pour initialiser le systme de lancement. Lisez la page de manuel de
  nisinit pour connatre les diffrentes options existantes.  Assurez-
  vous que le nom de domaine est toujours bien positionn lors d'un
  ramorage. Si vous ne connaissez pas votre nom de domaine NIS+ sur
  votre rseau, demandez-le  votre administrateur systme.

  Pensez galement  modifier votre ficher /etc/nsswitch.conf.  Assurez-
  vous que le seul service situ avec publickey est nisplus ("publickey:
  nisplus"), et rien d'autre !

  Ensuite, lancez keyserv et assurez-vous qu'il sera toujours lanc lors
  de l'amorage de la machine. Lancez


       keylogin -r




  pour conserver la clef prive sur votre systme (j'espre que vous
  avez ajout la clef publique de la nouvelle machine sur le serveur
  NIS+ !).

  "niscat passwd.org_dir" doit dsormais vous donner toutes les entres
  contenues dans la base de donnes passwd.


  99..33..  NNIISS++,, kkeeyyllooggiinn,, llooggiinn eett PPAAMM

  Lorsque l'utilisateur se connecte, il a besoin de fixer sa clef
  secrte sur le serveur de clef. Cela est effectu en appelant
  keylogin.  Le login  partir du paquetage shadow fera cela  la place
  de l'utilisateur. Pour un login de type PAM, vous devez installer
  pam_keylogin-1.1.tar.gz et modifier le fichier /etc/pam.d/login pour
  utiliser pam_unix_auth, et non pwdb qui ne gre pas NIS+. Voici un
  exemple :



       #%PAM-1.0
       auth       required     /lib/security/pam_securetty.so
       auth       required     /lib/security/pam_keylogin.so
       auth       required     /lib/security/pam_unix_auth.so
       auth       required     /lib/security/pam_nologin.so
       account    required     /lib/security/pam_unix_acct.so
       password   required     /lib/security/pam_unix_passwd.so
       session    required     /lib/security/pam_unix_session.so





  99..44..  LLee ffiicchhiieerr nnsssswwiittcchh..ccoonnff


  Le fichier de configuration /etc/nsswitch.conf dtermine l'ordre dans
  lequel sont effectues les recherches de certaines informations, en
  fonction des donnes et des services, de la mme manire que le
  fichier /etc/host.conf dtermine la faon dont les recherches de noms
  de machines se font. Par exemple, la ligne



           hosts: files nisplus dns




  indique que la fonction de recherche doit dans un premier temps
  chercher dans le fichier local /etc/hosts, suivi par une recherche
  NIS+ et enfin _v_i_a le service de recherche de noms (/etc/resolv.conf et
  named).   ce moment l, si aucune machine n'est trouve, alors une
  erreur est renvoye.

  Voici un exemple de bon fichier /etc/nsswitch.conf














  # Un exemple de configuration de NSS. Ce fichier doit etre trie en
  # mettant en tete les services les plus utilises.
  #
  # L'entree '[NOTFOUND=return]' signifie que la recherche d'une entree
  # doit s'arreter si la recherche dans l'entree precedente n'a rien donne
  # Notez que si la recherche echoue pour tout autre raison
  # (par exemple, le serveur NIS ne repond pas), alors la recherche continue
  # avec l'entree suivante.
  #
  # Les entrees connues sont :
  #
  #       nisplus                 NIS+ (NIS version 3)
  #       nis                     NIS (NIS version 2), connu comme YP
  #       dns                     DNS (Domain Name Service)
  #       files                   Fichiers locaux
  #       db                      Bases de donnees /var/db
  #       [NOTFOUND=return]       Arret de la recherche si l'on a rien trouve
  #
  passwd:     compat
  # pour libc5: passwd: files nisplus
  group:      compat
  # pour libc5: group: files nisplus
  shadow:     compat
  # pour libc5: shadow: files nisplus

  passwd_compat: nisplus
  group_compat:  nisplus
  shadow_compat: nisplus

  hosts:      nisplus files dns

  services:   nisplus [NOTFOUND=return] files
  networks:   nisplus [NOTFOUND=return] files
  protocols:  nisplus [NOTFOUND=return] files
  rpc:        nisplus [NOTFOUND=return] files
  ethers:     nisplus [NOTFOUND=return] files
  netmasks:   nisplus [NOTFOUND=return] files
  netgroup:   nisplus
  bootparams: nisplus [NOTFOUND=return] files
  publickey:  nisplus
  automount:  files
  aliases:    nisplus [NOTFOUND=return] files





  1100..  CCoonnffiigguurreerr uunn sseerrvveeuurr NNIISS



  1100..11..  LLee pprrooggrraammmmee sseerrvveeuurr yyppsseerrvv


  Ce document ne dcrit que la manire de configurer le serveur NIS
  "ypserv".

  Les programmes serveur NIS peuvent tre trouvs sur :



         Site                   Repertoire                    Nom de fichier

         ftp.kernel.org         /pub/linux/utils/net/NIS      ypserv-1.3.2.tar.gz
         wauug.erols.com        /pub/net/nis                  ypserv-1.3.2.tar.gz

  Vous pouvez galement regarder le document http://www-vt.uni-
  paderborn.de/~kukuk/linux/nis.html <http://www-vt.uni-
  paderborn.de/~kukuk/linux/nis.html> pour obtenir de plus amples
  informations ainsi que les sources.

  La configuration du serveur est la mme que cela soit le NIS
  traditionnel ou NYS.

  Compilez les sources pour gnrer les programmes "ypserv" et
  "makedbm".  Si votre serveur est considr comme matre, dterminez
  quels fichiers vous souhaitez rendre disponibles via NIS et ajoutez ou
  supprimez les entres appropries dans /var/yp/Makefile.

  Il y a une seule grande diffrence entre ypserv 1.1 et ypserv 1.2.
  Depuis la version 1.2, ypserv utilise une mmoire cache pour les
  manipulations de fichiers.  Cela signifie que vous devez toujours
  appeler makedbm avec l'option -c si crez de nouvelles maps. Assurez-
  vous que vous utilisez le nouveau /var/yp/Makefile fourni avec ypserv
  1.2 ou une version suprieure, ou ajoutez l'option -c  makedbm dans
  le Makefile. Si vous ne le faites pas, ypserv continuera  utiliser
  les anciennes maps, et non les nouvelles.

  ditez ensuite /var/yp/securenets et /etc/ypserv.conf. Pour plus
  d'information, lisez les pages de manuel ypserv(8) et ypserv.conf(5).

  Assurez-vous que le portmapper (portmap(8)) fonctionne et lancez le
  serveur ypserv. La commande



           % rpcinfo -u localhost ypserv




  doit vous rpondre un message du genre



           program 100004 version 2 ready and waiting




  Maintenant, gnrez la base de donne NIS (YP).  Sur le serveur
  matre, lancez :



           % /usr/lib/yp/ypinit -m




  sur un esclave, assurez-vous que ypwhich -m fonctionne. C'est  dire
  que votre esclave doit tre configur en tant que client NIS, puis
  lancez:


           % /usr/lib/yp/ypinit -s masterhost




  pour que la machine soit un esclave NIS.

  a y est, votre serveur fonctionne.

  Si vous avez de plus gros problmes, vous pouvez lancer ypserv et
  ypbind en mode debug sur des xterms diffrents. La sortie cran du
  mode dbug devrait vous montrer ce qui ne va pas.

  Il est possible que vous souhaitiez ajouter les lignes suivantes sur
  le serveur esclave dans la crontab root :



             20 *    * * *    /usr/lib/yp/ypxfr_1perhour
             40 6    * * *    /usr/lib/yp/ypxfr_1perday
             55 6,18 * * *    /usr/lib/yp/ypxfr_2perday




  De cette manire, vous tes sr que les maps NIS sont synchronises et
  sont  jour, mme s'il peut arriver qu'une mise  jour soit rate
  parce que l'esclave tait arrt lors de la mise  jour du matre.

  Vous pouvez ajouter un esclave n'importe quand, ensuite. Tout d'abord,
  assurez-vous que le nouveau ypserv a les droits pour contacter le
  serveur matre. Ensuite, lancez


           % /usr/lib/yp/ypinit -s masterhost




  sur l'esclave, et ajoutez le nom du serveur au fichier
  /var/yp/ypservers. Aprs cela, lancez la commande "make" dans le
  rpertoire /var/yp pour mettre les maps  jour.

  Si vous souhaitez restreindre l'accs au serveur NIS, vous devez
  configurer le serveur NIS comme s'il tait galement un client en
  lanant ypbind et en ajoutant les entres "+" dans le fichier
  /etc/passwd. La bibliothque de fonctions va alors ignorer les entres
  normales aprs la premire entre NIS et va rcuprer le reste des
  informations en utilisant NIS.  C'est de cette manire que sont
  maintenues les rgles d'accs NIS.  Par exemple :



            root:x:0:0:root:/root:/bin/bash
            daemon:*:1:1:daemon:/usr/sbin:
            bin:*:2:2:bin:/bin:
            sys:*:3:3:sys:/dev:
            sync:*:4:100:sync:/bin:/bin/sync
            games:*:5:100:games:/usr/games:
            man:*:6:100:man:/var/catman:
            lp:*:7:7:lp:/var/spool/lpd:
            mail:*:8:8:mail:/var/spool/mail:
            news:*:9:9:news:/var/spool/news:
            uucp:*:10:50:uucp:/var/spool/uucp:
            nobody:*:65534:65534:noone at all,,,,:/dev/null:
            +miquels::::::
            +:*:::::/etc/NoShell
            [ Tous les utilisateurs normaux APRES cette ligne !]
            tester:*:299:10:Just a test account:/tmp:
            miquels:1234567890123:101:10:Miquel van Smoorenburg:/home/miquels:/bin/zsh



  L'utilisateur _t_e_s_t_e_r existera toujours mais il aura l'interprteur de
  commandes /etc/NoShell. L'utilisateur _m_i_q_u_e_l_s aura un accs normal.

  Sinon, vous pouvez galement diter le fichier /var/yp/Makefile et
  configurer NIS pour qu'il utilise un autre fichier passwd.  Sur de
  gros systmes, les fichiers passwd et group sont gnralement
  conservs dans le rpertoire /var/yp/ypfiles/. Si vous utilisez les
  outils standards pour administrer le fichier mot de passe ("passwd",
  "chfn", "adduser"), cela ne fonctionnera plus et devrez alors crer
  vos propres outils.

  Toutefois, yppasswd, ypchsh et ypchfn fonctionneront bien sur.


  1100..22..  LLee pprrooggrraammmmee sseerrvveeuurr yyppss


  Pour mettre en place le serveur NIS yps, consultez les paragraphes
  prcdents. Sa configuration est assez similaire sans tre exactement
  la mme, donc faites attention si vous essayez d'appliquer les
  instructions de ypserv  yps! Cependant, yps n'est plus maintenu par
  son auteur, et contient un certain nombre de failles de scurit. Vous
  devriez viter de vous en servir.

  Ce serveur NIS peut tre trouv sur :



           Site                Repertoire               Nom du Fichier

         ftp.lysator.liu.se  /pub/NYS/servers            yps-0.21.tar.gz





  1100..33..  LLee pprrooggrraammmmee rrppcc..yyppppaasssswwdddd

   chaque fois qu'un utilisateur change son mot de passe, le mot de
  passe de la  base de donnes NIS, ainsi que celui des autres bases de
  donnes NIS, doit tre mis  jour. Le programme rpc.yppasswd est un
  serveur qui gre les modifications de mot de passe et qui s'assure que
  les informations NIS seront correctement mises  jour. rpc.yppasswdd
  est dsormais intgr dans ypserv. Vous n'avez plus besoin des
  vieilles versions spares yppasswd-0.9.tar.gz ou
  yppasswd-0.10.tar.gz, et vous ne devriez plus les utiliser. La version
  de rpc.yppasswdd qui est comprise dans ypserv 1.3.2 gre totalement
  les Shadow. yppasswd fait maintenant parti de yp-tools-1.2.tar.gz.

  Le lancement de rpc.yppasswdd n'est ncessaire que sur le serveur
  matre.  Par dfaut, les utilisateurs ne sont pas autoriss  changer
  leur Nom complet (NDT: Prnom + Nom), ni leur shell. Vous pouvez
  cependant les y autoriser en utilisant l'option -e de chfn ou l'option
  -e de -e de chsh.


  1111..  VVrriiffiieerr ll''iinnssttaallllaattiioonn ddee NNIISS oouu ddee NNYYSS

  Si tout fonctionne correctement (comme cela devrait tre), vous
  devriez tre capable de vrifier votre installation avec quelques
  commandes simples. Supposons que le fichier de mots de passe soit gr
  par NIS, la commande




      % ypcat passwd




  devrait alors vous donner le contenu du fichier des mots de passe.  La
  commande



           % ypmatch id_utilisateur passwd




  (o _i_d___u_t_i_l_i_s_a_t_e_u_r est le nom de login d'un utilisateur) devrait vous
  donner l'entre de l'utilisateur dans le fichier des mots de passe
  NIS.  Les commandes ypcat et ypmatch doivent tre incluses dans la
  distribution du NIS (ou NYS) traditionnel.

  Si un utilisateur ne peut pas se connecter, lancez le programme
  suivant sur la machine cliente :



       #include <stdio.h>
       #include <pwd.h>
       #include <sys/types.h>

       int
       main(int argc, char *argv[])
       {
         struct passwd *pwd;

         if(argc != 2)
           {
             fprintf(stderr,"Usage: getwpnam username\n");
             exit(1);
           }

         pwd=getpwnam(argv[1]);

         if(pwd != NULL)
           {
             printf("name.....: [%s]\n",pwd->pw_name);
             printf("password.: [%s]\n",pwd->pw_passwd);
             printf("user id..: [%d]\n", pwd->pw_uid);
             printf("group id.: [%d]\n",pwd->pw_gid);
             printf("gecos....: [%s]\n",pwd->pw_gecos);
             printf("directory: [%s]\n",pwd->pw_dir);
             printf("shell....: [%s]\n",pwd->pw_shell);
           }
         else
           fprintf(stderr,"User \"%s\" not found!\n",argv[1]);

         exit(0);
       }




  Faites tourner ce programme avec le nom de l'utilisateur en paramtre.
  Il va afficher toutes les informations renvoyes par la fonction
  getpwnam concernant l'utilisateur.  Cela peut vous permettre de savoir
  si l'entre est correcte. Un problme assez frquemment rencontr est
  une redfinition du champ de mot de passe par un "*".
  1122..  PPrroobbllmmeess eett eerrrreeuurrss ddee ffoonnccttiioonnnneemmeenntt ddee NNIISS

  Voici certains problmes rencontrs par diffrents utilisateurs :


  1. Les bibliothques 4.5.19 sont dfectueuses. NIS ne fonctionnera pas
     avec.

  2. Si vous faites une mise  jour de 4.5.19  4.5.24 alors la commande
     su plante. Vous devez rcuprer la commande su  partir de la
     distribution de la _s_l_a_c_k_w_a_r_e 1.2.0 ou suprieure. ventuellement,
     vous pouvez galement y rcuprer les bibliothques mises  jour.

  3. Vous pouvez avoir quelques problmes avec NIS et DNS sur la mme
     machine si vous utilisez une vieille distribution en _a_._o_u_t.  Le
     serveur DNS ne supporte pas toujours NIS.

  4. Lorsqu'un serveur NIS tombe et est relanc, ypbind dmarre avec des
     messages du genre :

              yp_match: clnt_call:
                          RPC: Unable to receive; errno = Connection refused



  et les logins sont refuss pour les utilisateurs rfrencs dans la
  base de donne NIS. Loguez vous en tant que root si vous le pouvez,
  tuez ypbind puis relancez-le.

  5. Aprs avoir mis  jour la libc version suprieure  5.4.20, les
     outils YP ne fonctionneront plus. Vous devez utiliser les yp-tools
     version 1.2 ou suprieure pour la libc >= 5.4.21 et glibc 2.x, et
     la version yp-clients 2.2 pour les versions prcdentes.  yp-tools
     2.0 devrait fonctionner avec toutes les bibliothques.

  6. Dans les libc 5.4.21 - 5.4.35, yp_maplist est dfectueux.  Vous
     devrez prendre une version 5.4.36 ou suprieure, sinon, certains
     programmes pour YP comme ypwhich gnreront une erreur _s_e_g_._f_a_u_l_t.

  7. La libc5 avec le NIS traditionnel ne gre pas l'utilisation des
     mots de passe Shadow avec NIS. Vous devez donc utiliser la libc5
     avec NYS ou la glibc 2.x.

  8. ypcat shadow ne montre pas la map Shadow. C'est l quelque chose de
     correct, puisque le nom de la map Shadow est "shadow.byname", et
     non "shadow".


  1133..  FFAAQQ :: LLeess qquueessttiioonnss lleess pplluuss ffrrqquueemmmmeenntt ppoosseess

  Bon nombre de questions doivent tre rsolues dsormais. Si vous avez
  des questions sans rponse, vous pouvez poster un message dans les
  forums de discussion :


           comp.os.linux.help




  ou



           comp.os.linux.networking

  ou contacter l'un des auteurs de ce HOWTO.

































































