このページは大阪弁化フィルタによって翻訳生成されたんですわ。

翻訳前ページへ


Le Linux NIS(YP)/NYS/NIS+ HOWTO

Le Linux NIS(YP)/NYS/NIS+ HOWTO

Thorsten Kukuk

Version 0.12, 12 Juin 1998
Ce document d馗rit la fa輟n de configurer Linux en client de NIS(YP) ou de NIS+, et la fa輟n d'installer un serveur NIS.

1. Version fran軋ise

Ce document constitue la version fran軋ise du NIS-HOWTO, adaptation r饌lis馥 par Fr馘駻ic Veynachter (frederic.veynachter@hol.fr), le 26 juillet 1998, fortement inspir馥 de la traduction pr馗馘emment r饌lis馥 par ノric Dumas (dumas@Linux.EU.Org), le 19 Novembre 1997.

Vous pouvez consulter ce document sur les sites suivants :

ainsi que leurs nombreux miroirs.

Pour plus de renseignements concernant la traduction en langue fran軋ise des documents du LDP (Linux Documentation Project), consultez le document "Liste-des-HOWTO" que l'on trouve aux m麥ex endroits.

Les diff駻ents sites conseill駸 dans ce document poss鐡ent s?ement des miroirs plus proches de chez vous, comme par exemple ftp.lip6.fr, ftp.loria.fr ... utilisez-les !

2. Introduction

Les machines sous Linux sont de plus en plus souvent install馥s et connect馥s dans des r駸eaux informatiques.Pour simplifier l'administration syst鑪e, la plupart des r駸eaux (surtout ceux qui sont fond駸 sur du mat駻iel Sun) fonctionnent avec le Network Information Service. Les machines Linux peuvent tirer de nombreux avantages des services NIS existant, ou fournir elles-m麥es ces services. Elles peuvent 馮alement se comporter comme des clients NIS+, mais il s'agit encore d'une version b騁a.

Ce document tente de r駱ondre 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.

2.1 Nouvelles versions de ce document

Vous pourrez toujours trouver la derni鑽e version de ce document sur le web via l'URL

2.2 Avertissement

M麥e si ce document rassemble le maximum de donn馥s selon notre connaissance, il peut contenir, et contient sans doute, certaines erreurs. Nous vous demandons de lire attentivement tous les fichiers README qui sont livr駸 avec les outils d馗rits dans ce document, pour avoir plus de d騁ails et une information plus pr馗ise. Nous essayerons, dans la mesure du possible, d'騅iter que des erreurs se glissent ans ce document.

2.3 Retour d'information et corrections

Dans ce document, bon nombre d'acronymes sont employ駸. Voici la liste des plus utilis駸, avec une br钁e explication.

DBM

DataBase Management (Gestion de la base de donn馥s): biblioth鑷ue de fonctions pour maintenir les clefs et le contenu de la base de donn馥s.

pour les fonctions NIS (YP) et NIS+.

libsocket

Biblioth鑷ue de fonctions de manipulation de sockets socket, bind, listen, ... sur les syst鑪es SVR4.

NIS

Network Information Service (Service d'information du r駸eau): Lorsque des personnes parlent de RPC, elles parlent souvent en fait de la version Sun RPC.

YP

Yellow Pages(tm) : marque d駱os馥 par British Telecom. (les pages jaunes... comme les n?res !).

Sun™ 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'abr騅iation pour Network Information Service (Service d'Information R駸eau). Son but est de fournir des informations, qui doivent 黎re connues sur l'ensemble du r駸eau, le code NYS vous permet d'utiliser les mots de passe Shadow d'une mani鑽e transparente. Le code "NIS traditionnel" ne permet pas d'utiliser les mots de passe Shadow sur NIS.

Vous pouvez cependant oublier tout 軋 si vous utilisez la nouvelle biblioth鑷ue GNU C 2.x (alias libc6). Elle comporte un vrai support de NSS (Name Switch Service), ce qui la rend vraiment souple, et elle est capable de g駻er les "maps" NIS/NIS+ suivantes : aliases, ethers, group, hosts, netgroups, networks, protocols, publickey, passwd, rpc, services et shadow. La biblioth鑷ue GNU C ne pose aucun probl鑪e avec les mots de passe Shadow sur NIS.

5. Comment 軋 marche ?

5.1 Comment fonctionne NIS(YP) ?

A l'int駻ieur d'un r駸eau, il doit y avoir au moins une machine faisant office de serveur NIS. Vous pouvez avoir plusieurs serveurs NIS, chacun g駻ant plusieurs "domaines" NIS, ou bien vous pouvez avoir des serveurs NIS coop駻atifs. Dans ce cas, l'un d'entre eux est dit serveur NIS ma?re, les autres 騁ant serveurs NIS esclaves. Vous pouvez 馮alement m駘anger les deux possibilit駸.

Les serveurs esclaves n'ont qu'une copie de la base de donn馥s et la re輟ivent du serveur NIS ma?re lorsque des changement sont effectu駸 peuvent 黎re directement convertis dans le format DBM en utilisant un programme de conversion ASCII-to-DBM (makedbm est inclus dans les programmes du serveur). Le serveur NIS ma?re devrait avoir les deux types : la base ASCII et la base DBM.

Les serveurs esclaves seront avertis de tout changement dans les tables NIS (gr稍e au programme yppush), et effectueront automatiquement les changements n馗essaires pour synchroniser leurs bases de donn馥s. Les clients NIS n'ont sp馗iaux NIS+ : org_dir et groups_dir. Le premier regroupe toutes les tables d'administration, telles que passwd, hosts, et mail_aliases. Le second r駱ertoire contient les objets groupe NIS+ qui sont utilis駸 pour contr?er les acc鑚. L'ensemble des r駱ertoires org_dir, groups_dir et leurs parents sont consid駻駸 comme 騁ant un domaine NIS+.

6. Le RPC Portmapper

Pour lancer n'importe lequel des programmes mentionn駸 ci-dessous, vous

#
# 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 apr鑚 toute modification de ce fichier !

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

7.1 D騁erminez si vous 黎es un serveur, un esclave ou un client

Dans le second cas, vous n'avez pas de serveur NIS, donc vous aurez 馮alement besoin d'un programme serveur NIS (g駭駻alement ypserv). La section 10 ( 10 Configurer un serveur NIS ) d馗rit comment configurer un serveur

7.2 Les programmes

La biblioth鑷ue /usr/lib/libc.a (version 4.4.2 et sup駻ieure) ou la biblioth鑷ue dynamique partag馥 /lib/libc.so.x contient tous les appels syst鑪es correspondants 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

glibc 2.x n馗essitent 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 pr駸entent de nombreux d馭auts. Utilisez la libc 5.4.36 ou une version sup駻ieure, sinon, la plupart des programmes de YP ne fonctionneront pas. ypbind 3.3 fonctionnera 馮alement avec toutes les ypbind est le r駱ertoire /usr/sbin. Certains peuvent vous dire que vous n'avez pas besoin de ypbind sur un syst鑪e qui utilise NYS. C'est faux : ypwhich et ypcat en ont besoin.

Pour plus d'informations, consultez la page de manuel de ypbind(8). Vous aurez 馮alement besoin de ce ficher pour NYS. Un court exemple :
  ypserver voyager
  ypserver ds9

Si le syst鑪e est capable de r駸oudre 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 :

    VOIR avec le nom de votre machine ! La raison est que cela rend plus difficile le travail des pirates pour trouver les mots de passe de la base de donn馥s du serveurs NIS. Si vous ne connaissez pas le nom
  • Utilisez la commande rpcinfo -p localhost pour v駻ifier 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 馮alement lancer rpcinfo -u localhost ypbind. Cette commande devrait alors produire :
            program 100007 version 2 ready and waiting
          
    

Vous devriez alors 黎re capable d'utiliser les programmes clients tels que ypcat, etc. Par exemple, ypcat passwd vous donne la liste des mots de passe (chiffr駸 !) de la base de donn馥s NIS.

Pour v駻ifier que le nom de domaine est correctement configurer, utilisez le programme /bin/ypdomainname, fourni avec yp-tools 2.0. Il utilise la fonction yp_get_default_domain, qui est plus restrictive. Elle n'autorise pas, page de manuel "resolv+.8" pour plus de d騁ails.

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

+::::::

un interpr騁eur de commandes diff駻ent (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 馮alement utiliser les Netgroups pour g駻er 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 m麥e acc鑚 aux comptes des autres utilisateurs :

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

Remarquez qu'avec Linux, vous pouvez 馮alement surcharger le champ mot de passe, comme nous l'avons fait dans cet exemple. Nous avons 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 fonctionnalit駸 d'inclusion/d'exclusion d'utilisateurs. La configuration est exactement la m麥e que sous Solaris 2.x.

7.7 Le fichier nsswitch.conf

Le fichier de configuration /etc/nsswitch.conf d騁ermine l'ordre dans lequel sont effectu馥s les recherches de certaines informations, en fonction des donn馥s et des services, de la m麥e mani鑽e que le fichier /etc/host.conf d騁ermine la fa輟n 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 effectu馥 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 renvoy馥. Ce fichier doit 黎re 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 entr馥s passwd_compat, group_compat et shadow_compat ne sont g駻馥s qu'avec la glibc 2.x. S'il n'y a pas d'entr馥 shadow dans /etc/nsswitch.conf, la glibc utilisera l'entr馥 passwd pour effectuer ses recherches. Il existe certaines entr馥s suppl駑entaires avec la glibc comme hesoid. Pour plus d'informations, consultez la documentation de la glibc.

8. Mots de passe Shadow avec NIS et PAM

L'utilisation des mots de passe Shadow avec NIS est toujours une mauvaise id馥. donn馥s Shadow toutes les entr馥s correspondant aux utilisateurs NIS, et remettez les mots de passe dans /etc/passwd. Vous pourrez ainsi utiliser le syst鑪e 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 biblioth鑷ue GNU C 2.x. C'est la seule biblioth鑷ue libc pour Linux qui g鑽e l'utilisation des mots de passe Shadow avec NIS. Sous Linux, la libc5 ne le permet pas. La libc5 compil馥 avec le support de NYS contient une partie de code permettant le m駘ange Shadow - NIS, mais ce code pr駸ente de s駻ieuses erreurs dans certains cas et ne fonctionne pas correctement avec toutes les entr馥s Shadow.

Le probl鑪e suivant est PAM. La biblioth鑷ue GNU C g鑽e l'utilisation des mots de passe Shadow avec NIS, mais PAM ne le fait pas, essentiellement pam_pwdb/libpwdb. C'est un gros probl鑪e pour les utilisateurs de RedHat 5.x. Si vous avez glibc et PAM, vous devez changer les entr馥s dans /etc/pam.d/*. Changez toutes les entr馥s de pam_pwdb par l'interm馘iaire des modules pam_auth_unix_*. Cette m騁hode devrait fonctionner.

commerciales sont compil馥s en 馘ition de lien avec cette biblioth鑷ue, et que vous ne pouvez pas les recompiler en utilisant la glibc. Il y a des probl鑪es avec la libc5 et NIS+: Vous ne pourrez pas r饌liser d'馘ition de lien statique de vos programmes, et les programmes compil駸 avec cette biblioth鑷ue ne fonctionneront pas avec les autres versions de la libc5.

Vous devez r馗up駻er et recompiler la derni鑽e version de la glibc2, et une distribution bas馥 sur cette biblioth鑷ue comme la Redhat Mustang ou l'instable Debian. Mais attention : il s'agit toujours d'une version b黎a. Lisez la documentation concernant la glibc et celle fournie par la distribution. La glibc2.0.x ne g鑽e pas pleinement NIS+, et ne l'int馮rera jamais. La premi鑽e version avec la gestion NIS+ sera la 2.1.

Les programmes clients NIS+ peuvent 黎re r馗up駻駸 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 bas馥s sur la glibc peuvent 黎re r馗up駻馥s sur les sites :

  Site                   Repertoire

  ftp.redhat.com         /pub/redhat/redhat-5.1
  ftp.debian.org         /pub/debian/dists/hamm
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 馮alement consulter le site http://www-vt.uni-paderborn.de/~kukuk/linux/nisplus.html pour plus d'informations ainsi que pour avoir les derni鑽es sources.

r饌liser des RPC s馗uris駸, vous disposez d'une courte p駻iode de 3 minutes, durant lesquelles les r馭駻ences sont valides. Lancer xntpd sur toutes les machines peut 黎re une bonne id馥. Apr鑚 tout 軋, ex馗utez les commandes suivantes :

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

pour initialiser le syst鑪e de lancement. Lisez la page de manuel de nisinit pour conna?re les diff駻entes options existantes.

"niscat passwd.org_dir" doit d駸ormais vous donner toutes les entr馥s contenues dans la base de donn馥s passwd.

9.3 NIS+, keylogin, login et PAM

Lorsque l'utilisateur se connecte, il a besoin de fixer sa clef secr鑼e /etc/pam.d/login pour utiliser pam_unix_auth, et non pwdb qui ne g鑽e 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.4 Le fichier nsswitch.conf

Le fichier de configuration /etc/nsswitch.conf d騁ermine l'ordre dans lequel sont effectu馥s les recherches de certaines informations, en fonction des donn馥s et des services, de la m麥e mani鑽e que le fichier /etc/host.conf d騁ermine la fa輟n 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 # 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

10. Configurer un serveur NIS

10.1 Le programme serveur ypserv

Ce document ne d馗rit que la mani鑽e de configurer le serveur NIS "ypserv".

Les programmes serveur NIS peuvent 黎re trouv駸 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 馮alement regarder le document 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 m麥e que cela soit le NIS traditionnel ou NYS.

Compilez les sources pour g駭駻er les programmes "ypserv" et "makedbm". la version 1.2, ypserv utilise une m駑oire cache pour les manipulations de fichiers. Cela signifie que vous devez toujours appeler makedbm avec l'option -c si

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

    % rpcinfo -u localhost ypserv

doit vous r駱ondre un message du genre

    program 100004 version 2 ready and waiting

Maintenant, g駭駻ez la base de donn馥 NIS (YP). Sur le serveur ma?re, lancez :

    % /usr/lib/yp/ypinit -m
pour que la machine soit un esclave NIS.

ヌa y est, votre serveur fonctionne.

Si vous avez de plus gros probl鑪es, vous pouvez lancer ypserv et ypbind en mode debug sur des xterms diff駻ents. La sortie 馗ran du mode d饕ug 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 mani鑽e, vous 黎es s? que les maps NIS sont synchronis馥s nouveau ypserv a les droits pour contacter le serveur ma?re. Ensuite, lancez

    % /usr/lib/yp/ypinit -s masterhost
sur l'esclave, et ajoutez le nom du serveur au fichier /var/yp/ypservers. Apr鑚 fichier /etc/passwd. La biblioth鑷ue de fonctions va alors ignorer les entr馥s normales apr鑚 la premi鑽e entr馥 NIS et va r馗up駻er le reste des informations en utilisant NIS. C'est de cette mani鑽e que sont maintenues les r鑒les d'acc鑚 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 tester existera toujours mais il aura l'interpr騁eur de commandes /etc/NoShell. L'utilisateur miquels aura un acc鑚 normal.

Sinon, vous pouvez 馮alement 馘iter le fichier /var/yp/Makefile et configurer NIS pour qu'il utilise un autre fichier passwd. Sur de gros syst鑪es, les fichiers passwd et group sont g駭駻alement conserv駸 dans le r駱ertoire /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 cr馥r vos propres outils.

Toutefois, yppasswd, ypchsh et ypchfn fonctionneront bien sur.

10.2 Le programme serveur yps

Pour mettre en place le serveur NIS yps, consultez les paragraphes pr馗馘ents. Sa configuration est assez similaire sans 黎re exactement la m麥e, donc faites attention si vous essayez d'appliquer les

    Site                Repertoire               Nom du Fichier

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

10.3 Le programme rpc.yppasswdd

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 g鑽e totalement les Shadow. yppasswd fait maintenant parti de yp-tools-1.2.tar.gz.

l'option -e de chfn ou l'option -e de -e de chsh.

11. V駻ifier l'installation de NIS ou de NYS

vous donner l'entr馥 de l'utilisateur dans le fichier des mots de passe NIS. Les commandes ypcat et ypmatch doivent 黎re 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 param鑼re. Il va afficher toutes les informations renvoy馥s par la fonction getpwnam concernant l'utilisateur. RPC: Unable to receive; errno = Connection refused et les logins sont refus駸 pour les utilisateurs r馭駻enc駸 dans la base de donn馥 NIS. Loguez vous en tant que root si vous le les outils YP ne fonctionneront plus. Vous devez utiliser les yp-tools version 1.2 ou sup駻ieure pour la libc >= 5.4.21 et glibc 2.x, et la version yp-clients 2.2 pour les versions pr馗馘entes. yp-tools 2.0 devrait fonctionner avec toutes les biblioth鑷ues.

  • Dans les libc 5.4.21 - 5.4.35, yp_maplist est d馭ectueux. Vous devrez prendre une version 5.4.36 ou sup駻ieure, sinon, certains programmes pour YP comme ypwhich g駭駻eront une erreur seg.fault.
  • puisque le nom de la map Shadow est "shadow.byname", et non "shadow".

    13. FAQ : Les questions les plus fr駲uemment pos馥s

    Bon nombre de questions doivent 黎re r駸olues d駸ormais. Si vous avez des questions sans r駱onse, 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.