Le service NIS

le service NIS permet a un ensemble de serveurs d'utiliser une banque centralisée d'utilisateurs. cette technique permet de diminuer la quantité de travail requis par l'administrateur du réseau lors de la création d'un nouvel utilisateur ou lors de sa suppression. le service NIS (Network Information Service) ou YP (Yellow Pages) permet sur un réseau a multiples serveurs d'exporter d'un ordinateurs a un autres les utilisateurs. il est donc possible avec le service NIS d'inscrire sur un seul ordinateur (serveur NIS) une grande quantité d'utilisateurs et d'exporter a d'autres utilisateurs(client NIS) cette base de données (nom d'utilisateurs, mot de passe, groupe et le répertoire personnel). la gestion d'utilisateurs se trouve grandement améliorée puisqu'elle est centralisée.

le service NIS utilise 2 démons pour le serveur NIS soit yppasswdd et ypserv, un client NIS quant a lui doit utiliser le démon ypbind.

 

Fichiers de configuration pour le serveur

/etc/sysconfig/network : la variable NISDOMAIN permet de spécifier le nom du domaine NIS.

/etc/exports: permet d'exporter en NFS le répertoire personnel (/home/xxx) d'un utilisateur vers un client NIS.

/var/yp/Makefile :permet de définir la configuration NIS du serveur.

/var/yp/securenets : permet de restreindre l'accees au service NIS en fonction d'un masque et d'une adresse de réseau

 

Fichiers de configuration pour le client

/etc/nsswitch : ce fichier permet de définir la méthode de recherche utilisée lors de l'activation d'un service ou l'interrogation de celui-ci

/etc/auto.master : permet de définir le montage automatique de ressources en fonction d'une demande précise ex: monter le répertoire personnel d'un utilisateur lorsque celui-ci se connecte  sur un client NIS.

/etc/passwd : l'ajout d'une ligne contenant : "+:::::::" pour un client NIS permet l'importation d'utilisateurs NIS

 

Configuration du serveur NIS

pour permettre la configuration d'un serveur NIS, les services portmap, nfs, ypserv et nfslock doivent être démarres /etc/init.d/portmap start.   /etc/init.d/nfslock start.  /etc/init.d/nfs start. en effet NIS utilise le service portmap et nfs pour exporter les utilisateurs. il est aussi impératif de définir le nom du domaine NIS avec la commande domainename(domainename nis.linux).il est possible de configurer le nom de domaine NIS a partir de la variable NISDOMAIN dans le fichier /etc/sysconfig/network (NISDOMAIN=nis.linux).cette dernier méthode ne permet pas de modifier le domaine courant mais permet de le rendre non volatile.

nous allons procéder a la configuration du domaine NIS linux:

  1. Exécuter la commande "domainname linux" elle définit le nom du domaine NIS

  2. Ajouter la variable NISDOMAIN=linux dans /etc/sysconfig/network (pour le prochain redémarrage)

  3. démarrer les services portmap, nfslock, nfs, ypserv, ce dernier active le service NIS d'un serveur

  4. modifier les variables MINUID et MINGID du fichier /var/yp/Makefile afin qu'elles respectent votre besoins. MINUID =4000 et MINGID=4000 exportera les utilisateurs et les groupes ayant un numéro égal ou supérieur a 4000.il est important de bien définir correctement ces variables car elles peuvent créer des trous de sécurité en exportant un utilisateur avec privilèges par exemple.

  5. exécuter a partit du répertoire la commande /var/yp la commande make target. cette commande permet de prendre une image du fichier /etc/passwd/, /etc/shadow, /etc/group et autres pour permettre l<exportation d'utilisateurs. il est important de remarquer que l'ajout d'un utilisateur sur le serveur oblige a re exécution de la commande make target pour reprendre une photo des fichiers. l'exécution de cette commande va créer un répertoire portant le nom du domaine NIS. ce répertoire contiendra la base de données des utilisateurs en fonction des variable MINUID et MINGID.le fichier /var/yp/ypserves permet de définir des serveurs NIS esclaves et le fichiers /var/yp/securenets permet de restreindre l'access au serveurs NIS ( la syntaxe est : masque    adresseIP ).

  6. redémarrer le service ypserv

  7. s vous désirez avoir la possibilité de modifier a partir d'un client NIS les informations d'un utilisateur  NIS (mot de passe, nom complet, ....) démarrer le service yppasswdd.

  8. pour permettre a un utilisateur d'obtenir son répertoire personnel en se connectant sur client NIS, vous devez exporter en NFS le répertoire /home en lecture et en écriture pour tous les clients NIS.n'oublier pas de redémarrer le service NFS.

 

Configuration d'un client NIS

pour permettre la configuration d'un client NIS, les services portmap et nfslock, nfs, ypserv  doivent être démarres (/etc/rc.d/init.d/portmap start et /etc/rc.d/init.d/nfslock start .en effet le service NIS utilise portmap et nfslock pour importer les utilisateurs. il est aussi impératif de définir le nom du domaine NIS avec la commande domainename(domainename nis.linux).il est possible de configurer le nom de domaine NIS a partir de la variable NISDOMAIN dans le fichier /etc/sysconfig/network (NISDOMAIN=nis.linux).cette dernière méthode ne permet pas de modifier le domaine courant mais permet de le rendre non volatile.

nous allons procéder a la configuration client du domaine NIS linux:

  1. Exécuter la commande "domainname linux" elle définit le nom du domaine NIS

  2. Ajouter la variable NISDOMAIN=linux dans /etc/sysconfig/network (pour le prochain redémarrage)

  3. ajouter a la fin du fichier /etc/passwd la ligne suivante +:::::::::::::::. cette ligne indique au serveur que certains utilisateurs sont inscrit par le service NIS. le signe + indique d'ajouter tous les utilisateurs exportes par le serveur NIS.il est aussi possible de spécifier le nom d'utilisateur en particulier.par exemple pour importer uniquement les utilisateurs Zorro du serveur NIS, il suffit de modifier la ligne:+Zorro::::::::::::

  4. Modifier les lignes suivantes dans le fichiers /etc/nsswitch.conf. passwd: files nisplus pour passwd: files nis. shadow: files nisplus pour shadow: files nis, group :   files nisplus pour group:    files nis

  5. démarrer le services : portmap, nfslock et ypbind.le service ypbind permet de rechercher le serveur NIS du domaine défini et d'importer les utilisateurs NIS.

  6. Pour permettre a un utilisateur d'obtenir son propre répertoire personnel sur le client NIS, ajouter  dans le fichier /etc/auto.master, la ligne: /home         /etc/auto.home        -nobrowse  elle permet au demon autofs de monter le répertoire /home automatiquement en fonction des déclarations dans le fichier /etc/aut.home

  7. créer le fichier auto.home et ajouter a ligne: AdresseIP_du_serveur_NIS:/home/&. cette ligne indique au demon autofs de monter en NFS le répertoire personnel d'un utilisateur se trouvant sur le serveur NIS lors de sa connexion sur le client

  8. redémarrer le service autofs.

 

 Les principales commandes NIS

  • ypwhich: permet d'obtenir le nom du serveur NIS courant , en fonction du nom de domaine NIS (domainname)

  • ypcat mapname :permet d'obtenir les informations sur les utilisateurs ou les groupes NIS si le demon yppasswdd est demare. pour obtenir la liste des utilisateurs NIS exporte utiliser la commande : ypcat passwd. pour connaître la liste des mapname consulter le fichier /var/yp/nicknames

  • yppasswdd utilisateur : permet de modifier le mot de passe d'un utilisateur si le demon yppasswdd est demare sur le serveur NIS.