Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
nis [Le 03/06/2015, 22:52]
82.244.41.19 [NIS : Configurer un serveur NIS]
nis [Le 11/09/2022, 11:39] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 2: Ligne 2:
 ---- ----
  
-====== ​NIS : Configurer ​un serveur NIS ======+ 
 +====== ​Configuration d'un serveur NIS ======
  
 <note warning>​FIXME Cette page n'a pas été vérifiée pour les dernières versions supportées d'​ubuntu. Si vous pouvez valider ces informations ou les compléter, merci d'​éditer cette page et de rajouter le tag de la version d'​Ubuntu sur laquelle cela fonctionne.</​note>​ <note warning>​FIXME Cette page n'a pas été vérifiée pour les dernières versions supportées d'​ubuntu. Si vous pouvez valider ces informations ou les compléter, merci d'​éditer cette page et de rajouter le tag de la version d'​Ubuntu sur laquelle cela fonctionne.</​note>​
  
-Lien : [[http://​tldp.org/​HOWTO/​NIS-HOWTO/​index.html ]]\\ +D'​après [[https://​fr.wikipedia.org/​wiki/​NIS|Wikipedia]] ​NIS a pour but //« de distribuer les informations contenues dans des fichiers de configuration contenant par exemple les noms d'​hôte (/​etc/​hosts),​ les comptes utilisateurs (/​etc/​passwd),​ etc. sur un réseau ​»//. Un serveur NIS stocke et distribue donc les informations administratives du réseau et qui se comporte ainsi comme un ensemble cohérent de comptes utilisateurs,​ groupes, machines, etc.
-Consultez également le HOWTO du paquetage.  +
- +
- +
-D'​après [[http://​fr.wikipedia.org/​wiki/​NIS|Wikipedia]] ​(encyclopédie libre) : +
-"​Son ​but est de distribuer les informations contenues dans des fichiers de configuration contenant par exemple les noms d'​hôte (/​etc/​hosts),​ les comptes utilisateurs (/​etc/​passwd),​ etc. sur un réseau. +
- +
-Un serveur NIS stocke et distribue donc les informations administratives du réseau et qui se comporte ainsi comme un ensemble cohérent de comptes utilisateurs,​ groupes, machines, etc.+
  
-A l'​origine,​ NIS est sorti sous le nom de « Yellow Pages » (YP) ou Pages jaunes mais le nom étant déposé par la compagnie anglaise British Telecom, Sun a renommé son protocole NIS. Cependant, ​les commandes NIS commencent toutes par yp.+A l'​origine,​ NIS est sorti sous le nom de « Yellow Pages » (YP) ou Pages jaunes mais le nom étant déposé par la compagnie anglaise British Telecom, Sun a renommé son protocole NIS. Cet héritage transparaît dans les commandes NIS commencent toutes par "yp".
  
-__NIS est réputé pour être faible en termes de sécurité."__ voir :+De nos jours, NIS est réputé pour être faible en termes de sécurité. ​C'est pourquoi il est recommandé de se tourner vers des solutions alternatives,​ comme par exemple  ​:
   * [[:​slapd|LDAP]]   * [[:​slapd|LDAP]]
   * Kerberos   * Kerberos
   * RADIUS   * RADIUS
 +===== Installation du serveur NIS =====
  
 +  * [[:​tutoriel:​comment_modifier_sources_maj|Activer le dépôt universe]].
 +  * [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​nis]]**.
 +  * Il sera demandé le nom de votre domaine NIS. C'est un choix arbitraire, il faut juste que ce soit le même pour le serveur et les clients.
  
 +===== Configuration du serveur NIS =====
  
- +Nous partirons du principe que votre serveur et les clients disposent d'​adresses IP statiques. 
- +<note important>​NIS en adresses IP dynamiques présente un sérieux risque en terme de sécurité. ​[[:​nis#​securite|Lire ​la  section "​Sécurité"​]] pour comprendre ​problèmes inhérents de sécurité liés à NIS et comment les éviter.</​note>​ 
- +  
-===== Note ===== +  ​Si vous utilisez Ubuntu ​Warty, [[:​tutoriel:​comment_editer_un_fichier|éditer le fichier]] **/​etc/​hosts** et y ajouter pour chaque nom de client les adresses IP correspondantes. L'​adresse IP du serveur devrait ​déjà ​être présente. ​On ne parle pas ici de 127.0.0.1, mais de l'​adresse IP assignée au serveur NIS dans son réseau localCe faisant, ​NIS pourra fonctionner ​même si le serveur ​DNS est hors-service. Vous pouvez ​si vous le souhaitez ​également relayer vers le DNS. Exemple : 
- +<​file>​ 
-Nous partirons du principe que votre serveur et les clients disposent d'​adresses IP statiques. NIS en adresses IP dynamiques présente un sérieux risque en terme de sécurité. ​Lisez la section "​Sécurité"​, plus loin, elle aborde les problèmes inhérents de sécurité liés à NIS et comment les éviter.  +192.168.1.1 hostname_client1 
-    (Warty uniquement) Ajoutez ​chaque nom de client ​et les adresses IP dans le fichier ​ "/​etc/​hosts"​. L'​adresse IP du serveur devrait ​déja être présente. ​Je ne parle pas de 127.0.0.1, mais de l'​adresse IP réelle visible de l'​extérieurCela assurera le fonctionnement de NIS même si le DNS est planté. Vous pouvez également relayer vers le DNS, c'est vous qui voyez.  +192.168.1.2 hostname_client2 
-  * Ajoutez la ligne suivante dans le fichier ​"/​etc/​hosts.allow"+</​file>​ 
-<code+  * [[:​tutoriel:​comment_editer_un_fichier|Éditer ​le fichier]] le fichier de configuration du serveur NIS **/​etc/​hosts.allow** et ajouter la ligne 
-portmap ypserv ypbind : "liste d'addresses ​IP" +<file
-</code+portmap ypserv ypbind : "liste d'adresses ​IP" 
-Où "liste d'addresses ​IP" sera la liste de toutes les adresses IP des clients ainsi que celle du serveur. ​Mettez ​uniquement des adresses IP ceci étant rendu obligatoire suite à une limitation de portmap qui ne supporte pas les noms d'​hôtes.  +</file
-  * Installez NIS +... où "liste d'adresses ​IP" sera la liste de toutes les adresses IP des clients ainsi que celle du serveur. ​Il faut mettre ​uniquement des adresses IP. Ceci a devenu ​obligatoire suite à une limitation de portmap qui ne supporte pas les noms d'​hôtes. 
-<​code>​ +  * [[:tutoriel:​comment_editer_un_fichier|Éditer ​le fichier]] **/​etc/​default/​portmap** et commenter ​la ligne 
-sudo apt-get install portmap nis +<​file>​ 
-</​code>​ +ARGS="​-i 127.0.0.2"​ 
-Il vous sera demandé ​le nom de votre domaine NIS. Cela peut-être n'​importe quoi ; assurez vous juste qu'il soit identique entre le serveur et les clients.  +</​file>​ 
-  ​Editez ​ "/​etc/​default/​portmap" ​et commentez ​la ligne ARGS="​-i 127.0.0.2"​  +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​default/​nis** et définir ​la ligne NISSERVER à 
-  * Editez "/​etc/​default/​nis" ​et définissez ​la ligne NISSERVER à NISSERVER=master  +<​file>​ 
-  * Editez "/​etc/​yp.conf" ​et ajoutez ​une ligne de serveur sur la forme:  +NISSERVER=master 
-<code>+</​file>​ 
 +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​yp.conf** et ajouter ​une ligne de serveur sur la forme :  
 +<file>
 ypserver 127.0.0.1 ypserver 127.0.0.1
-</code+</file
-  * Editez "/​var/​yp/​Makefile" ​et lisez les instructions. Il n'y aura probablement pas besoin de faire beaucoup de modifications. La seule chose que j'ai changé a été la ligne MINGID qui définit si l'​appartenance au groupe doit être propagée à travers le domaine. Je l'ai définie à 1. +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​var/​yp/​Makefile** et lire les instructions. Il n'y aura probablement pas besoin de faire beaucoup de modifications. La seule chose que j'ai changé a été la ligne MINGID qui définit si l'​appartenance au groupe doit être propagée à travers le domaine. Je l'ai définie à 1. 
 <note warning>​MINxID définit la plus petite valeur (MIN) de UID ou GID à propager au travers de NIS. Définir ce dernier à 1 est une aberration : les groupes et utilisateurs dont l'ID est inférieur à 1000 sont généralement utilisateurs ou groupes systèmes. Il est bien plus rationnel de laissé MINxID à 1000. </​note>​ <note warning>​MINxID définit la plus petite valeur (MIN) de UID ou GID à propager au travers de NIS. Définir ce dernier à 1 est une aberration : les groupes et utilisateurs dont l'ID est inférieur à 1000 sont généralement utilisateurs ou groupes systèmes. Il est bien plus rationnel de laissé MINxID à 1000. </​note>​
-  * Editez "/​etc/​ypserv.securenets" ​et ajoutez ​les lignes qui restreindront l'​accès aux membres du domaine. ​J'ai utilisé ces lignes pour des hôtes spécifiques:  +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​ypserv.securenets** et ajouter ​les lignes qui restreindront l'​accès aux membres du domaine. ​Exemple ​:  
-<code>+<file>
 host 192.168.1.1 host 192.168.1.1
 host 192.168.1.2 host 192.168.1.2
 etc. etc.
-</code+</file
-<note important>​Commentez ​la ligne 0.0.0.0 ​. Sinon tout le monde aura accès. (lisez dans "​Sécurité" ​pourquoi c'est mauvais).</​note> ​+<note important>​Commenter ​la ligne 0.0.0.0, sinon tout le monde aura accès ​! [[:​nis#​securite|Lire la  section ​"​Sécurité"​]] pour comprendre les risques.</​note> ​
 <​note>​ "One can use the word "​host"​ instead of a netmask of 255.255.255.255. Only IP addresses are allowed in this file, not hostnames."​ <​note>​ "One can use the word "​host"​ instead of a netmask of 255.255.255.255. Only IP addresses are allowed in this file, not hostnames."​
 C'​est-à-dire,​ chez Molière, On peut utiliser le mot "​host"​ pour remplacer 255.255.255.255 (ou 32) comme masque de sous-réseau. C'​est-à-dire,​ chez Molière, On peut utiliser le mot "​host"​ pour remplacer 255.255.255.255 (ou 32) comme masque de sous-réseau.
 Pour les profanes, généralement,​ on utilise le masque 255.255.255.0 (ou 24) avec nos petites "box internet"​. Pour les profanes, généralement,​ on utilise le masque 255.255.255.0 (ou 24) avec nos petites "box internet"​.
-Et de même que pour portmap, ne donnez ​que des adresses IP, pas de noms d'​hôtes.+Et de même que pour portmap, ne donner ​que des adresses IP, pas de noms d'​hôtes.
 </​note>​ </​note>​
-  * Construisez ​la base de données pour la première fois, lancez+  * Construire ​la base de données pour la première fois. Pour celasaisir dans un [[:​terminal]] la [[:​commande_shell|commande]] suivante ​:
 <​code>​ <​code>​
 sudo /​usr/​lib/​yp/​ypinit -m sudo /​usr/​lib/​yp/​ypinit -m
 </​code>​ </​code>​
-et suivez ​les instructions. Cela engendrera certainement des messages d'​erreurs disant que le programme n'est pas en mesure de contacter certaines choses. Ce n'est pas grave. (Les autres erreurs le sont probablement).  +et suivre ​les instructions. Cela engendrera certainement des messages d'​erreurs disant que le programme n'est pas en mesure de contacter certaines choses. Ce n'est pas grave. (Les autres erreurs le sont probablement). 
-  * Redémarrez tout:  +  * Redémarrer les services appropriés ​:
-<​code>​ +
-sudo /​etc/​init.d/​portmap restart +
-sudo /​etc/​init.d/​nis restart +
-</​code>​ +
-<note tip>​Préférez l'​utilisation de la commande interne //service// comme suit +
 <​code>​ <​code>​
 sudo service portmap restart sudo service portmap restart
 sudo service nis restart sudo service nis restart
 </​code>​ </​code>​
-</note> +<​note>​En cas de problème ​avec l'​arrêt de portmap ​le tuer avec la commande : <​code>​sudo ​kill -9 $(pidof portmap)</​code>​</​note>​  
-<​note>​Notez que j'ai eu des problèmes ​avec l'​arrêt de portmap ​et que j'ai dû l'​arrêter en faisant un kill -9.</​note>​  +  * Par la suite, en cas de changement de configuration ​(par exemple, ​ajouter un utilisateur,​ etc.), ​ne pas oublier ​de lancer ​:
-  * Si vous changez quoique ce soit (ajouter un utilisateur,​ etc.), ​assurez-vous ​de faire+
 <​code>​ <​code>​
 sudo make -C /var/yp sudo make -C /var/yp
Ligne 85: Ligne 80:
 ===== Sécurité ===== ===== Sécurité =====
  
-NIS est quelque chose de dangereuxN'​importe qui pouvant accéder au démon ​peut récupérer ​vos listes de mots de passe. ​Si ils peuvent le faire alors ils ont vos mots de passe. Peu importe qu'ils soient ​cryptés; il sont l'​équivalent des mots de passe clairs ​depuis que l'authentification s'​effectue à l'aide de mots de passe cryptés vous n'avez pas besoin du mot de passe clair, il faut juste écrire une application qui présentera ​correctement la version ​cryptées ​au système d'​authentification. Aussi assurons nous que cela n'arrive pas. Comment? Et bien, d'​abord en restreignant les accès:  +NIS est un service qui comporte des risques en terme de sécuritéTout utilisateur malveillant ayant accès a serveur ​peut récupérer ​les listes de mots de passe. ​Qu'ils soient ​stockés en clair ou chiffréscette information reste exploitable. Il suffit d'​écrire une application qui présente ​correctement la version ​chiffrée du mot de passe au système d'​authentification ​pour qu'elle soit authentifiée.
-  * N'​autorisez que certains membres du domaine à contacter les services appropriés dans le "​hosts.allow"​. Ceci implique que le "​hosts.deny"​ est paramétré à **ALL** afin que cela fonctionne.  +
-  * Limitez les clients à qui le serveur répondra en mettant les membres du domaine dans "/​etc/​securenets" ​.+
  
-Bien, nous avons restreint l'accès à des adresses IP spécifiqueson est doué quand même, non ? Et bien, pas tant que ça. Que se passe-t-il si quelqu'​un ejecte une de vos machines ​ du réseau,lui pique son adresse IP et récupère ​le fichier ​de mot de passe ? Vous êtes mort. **Solution:** **IPSec** (Allez voir le **IPSecHowTo**). Vous pouvez paramétrer tous les membres ​de votre domaine ​à ne communiquer que sur IPSec ce qui permettra de vérifier que vos clients ​sont bien qui ils affirment être. Comment? Et bien, le client crypte le trafic à destination ​du serveur avec la clé du serveur, et le serveur ​répond à chaque demande en cryptant avec la clé du client. Le trafic est décrypté avec les clés respectives. Ainsi, un client ne disposant pas des clés qu'il est supposé avoir ne pourra ni envoyer ni recevoir de données. Le fichier contenant les clés et raisonnablement protégé (lisible que par root), vous ne pouvez obtenir les clés sans compromettre le client. Si vous compromettez le client, vous pouvez tout de même obtenir la liste de mots de passe, ainsi l'​attaquant vous aura tout de même (ce qui est une faille dans la plupart des systèmes d'​authentification de domaine)+Pour éviter ce genre d'attaqueil est primordial ​de contrôler qui a accès à cette information : 
 +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer ​le fichier]] **/​etc/​hosts.allow** et référencer les clients légitimes pour chaque service. [[:tutoriel:​comment_editer_un_fichier|Éditer le fichier]] ​**/​etc/​hosts.deny** avec **ALL** afin que cela fonctionne. 
 +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer ​le fichier]] ​**/​etc/​securenets** afin de limiter ​à quels clients ​membre ​du domaine ​le serveur ​répondra.
  
 +Ceci ne suffit cependant pas à prévenir le cas où une machine ennemie prend l'​adresse IP d'un client légitime. Pour prévenir ce genre de situation, il faut s'​appuyer sur [[http://​www.ipsec-howto.org/​t1.html|IPSec]]. L'​idéal est de paramétrer tous les membres du domaine de sorte à ce qu'ils ne communiquent que par IPSec. Ceci permet de s'​assurer que chaque client est légitime. En effet, le client crypte le trafic à destination du serveur avec la clé du serveur, et le serveur répond à chaque demande en cryptant avec la clé du client. Le trafic est décrypté avec les clés respectives. Ainsi, un client ne disposant pas des clés qu'il est supposé avoir ne pourra ni envoyer ni recevoir de données. Le fichier contenant les clés est raisonnablement protégé (il n'est lisible qu'​avec des droits [[:​root|root]]). Les clés peuvent être obtenues sans compromettre le client.
  
 +Toutefois, si un client légitime est compromis, l'​attaquant peut obtenir la liste de mots de passe (ce qui est une faille dans la plupart des systèmes d'​authentification de domaine).
  
  
  
-===== Configuration du Client NIS ===== 
  
-**Une note concernant l'​administration**: Etant donné que le compte root est désactivé,​ assurez vous que celui qui administre ​la machine est présent dans le fichier ​"/​etc/​sudoers" ​du client. C'est également une bonne idée de définir ces utilisateurs en tant qu'​utilisateurs locaux avec **les mêmes  ​UID** que dans la liste de mot de passe du domaine. Cela permet de garder les choses propres et cohérentes,​ et s'il venait à y avoir un problème, vous pourriez avoir besoin d'un compte local afin d'​accéder à la machine.+ 
 +===== Installation du client NIS ===== 
 + 
 +  ​[[:​tutoriel:​comment_modifier_sources_maj|Activer le dépôt universe]]. 
 +  ​[[:​tutoriel:​comment_installer_un_paquet|installer les paquets]] ​**[[apt>​nis]]** **[[apt>​portmap]]**. 
 +  * Il sera demandé le nom de votre domaine NIS. C'est un choix arbitraire, il faut juste que ce soit le même pour le serveur et les clients. 
 + 
 +===== Configuration du client NIS ===== 
 + 
 +<​note>​Étant ​donné que sous ubuntu, ​le compte ​[[root|root]] est désactivé ​par défaut, assurez-vous que le profil administrateur de la machine est présent dans le fichier ​**/​etc/​sudoers** du client. C'est également une bonne idée de définir ces utilisateurs en tant qu'​utilisateurs locaux avec **les mêmes  ​UIDs** que dans la liste de mot de passe du domaine. Cela permet de garder les choses propres et cohérentes,​ et s'il venait à y avoir un problème, vous pourriez avoir besoin d'un compte local afin d'​accéder à la machine.</​note>​
    
-  * Ajoutez ​le serveur à "/etc/hosts". Cela permettra ​de toujours résoudre l'​adresse du serveur ​même en cas de panne du DNS.  +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer ​le fichier]] **/etc/hosts** et y ajouter le serveur, afin de rendre le client robuste aux pannes ​de serveur DNS. 
-  * Installez les programmes dont vous avez besoin +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer ​le fichier]] **/​etc/​hosts.allow** une ligne pour portmap 
-<​code>​ +<file
-sudo apt-get install portmap nis +portmap : adresse_du_serveur_nis 
-</​code>​ +</file
-Il vous sera demandé votre nom de domaine NIS. Entrez ​le nom de votre domaine NIS.  +... où adresse_du_serveur_nis correspond à l'​adresse du serveur ​NIS. 
-C'est probalement une bonne idée d'​ajouter une ligne portmap dans "/​etc/​hosts.allow" ​pour des raisons de sécurité: +  * [[:tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/etc/passwd** et ajouter la ligne suivante en fin de fichier. Elle indique au système que d'autres utilisateurs (réels, ou associés ​à des services) que ceux indiqués dans le fichier sont authentifiés grâce au serveur NIS 
-<code+<file>
-portmap : <adresse IP> +
-</code+
-Où "​Serveur NFS" sera le nom de votre serveur ​NFS et "​adresse IP" son adresse IP +
-  * Définir les noms des services qui utiliseront NIS +
-Editez "/etc/passwd" afin d'ajouter ceci à la fin+
-<code>+
 +:::::: +::::::
-</code+</file
-Editez "/etc/group" afin d'ajouter ​ceci à la fin: +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/etc/group** et ajouter à la fin de celui-ci la ligne suivante ​
-<code>+<file>
 +::: +:::
-</code+</file
-Editez "/etc/shadow" afin d'ajouter ​ceci à la fin: +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/etc/shadow** et ajouter à la fin de celui-ci ​
-<code>+<file>
 +:::::::: +::::::::
-</code+</file
-Cela définit les services qui doivent inclure des entrées NIS si une correspondance n'est pas trouvée dans le fichier. Vous pourriez changer d'​autres services ​afin qu'ils utilisent NIS en éditant "/​etc/​nsswitch.conf"​, mais ceux-ci sont les plus importants.  +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​nsswitch.conf** ​Cela définit les services qui doivent inclure des entrées NIS si une correspondance n'est pas trouvée dans le fichier. Vous pourriez changer d'​autres services ​de nom, mais ceux-ci sont les plus importants. 
-  * Editez "/​etc/​yp.conf" afin d'ajouter la ligne:  +<​file>​ 
-<code+passwd: files nis 
-domain ​domainname ​server ​servername +group: files nis 
-</code+shadow: files nis 
-où domainname sera le nom de votre domaine NIS, et servername sera le nom de votre serveur NIS. +</​file>​ 
-<note warning>​Il se peut que cela ne fonctionne pas en mettant le nom du serveur NIS, car ce sera transposé avec la correspondance contenue dans /etc/hosts donc par 127.0.01. +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​yp.conf** et ajouter la ligne:  
-Dans ce cas il faut mettre l'​adresse ​ip du serveur (192.168.9.2 par exemple)</​note>​+<file
 +domain ​domain_name ​server ​hostname_serveur 
 +</file
 +... où domain_name est le nom de votre domaine NIS, et hostname_serveur est le nom de votre serveur NIS. 
 +<note warning>​Il se peut que cela ne fonctionne pas en mettant le nom du serveur NIS, car ce sera transposé avec la correspondance contenue dans **/etc/hosts** donc par 127.0.01. 
 +Dans ce casil faut mettre l'​adresse ​IP du serveur (192.168.9.2 par exemple)</​note>​
 <note tip>Une solution pratique : <note tip>Une solution pratique :
-Sur le fichier ​///etc/hosts// du serveur NIS : +[[:​tutoriel:​comment_editer_un_fichier|Éditer ​le fichier]] **/etc/hosts** du serveur NIS : 
-<code>+<file>
    ​127.0.0.1 localhost    ​127.0.0.1 localhost
    <​adresse_du_serveur>​ <​nom_du_serveur>​    <​adresse_du_serveur>​ <​nom_du_serveur>​
    <​adresse_d'​un_client>​ <​nom_d'​un_client>​    <​adresse_d'​un_client>​ <​nom_d'​un_client>​
    ...    ...
-</code>+</file>
 Ce fichier sera retransmis aux clients tel quel, et pourra donc être utilisable quoiqu'​il advienne. Ce fichier sera retransmis aux clients tel quel, et pourra donc être utilisable quoiqu'​il advienne.
 </​note>​ </​note>​
-  * Redémarrez ​NIS:+  * Redémarrer ​NIS:
 <​code>​ <​code>​
-/​etc/​init.d/​nis restart+service ​nis restart
 </​code>​ </​code>​
-**Note:​** ​sshd devra être redémarré afin d'​utiliser le nouveau système d'​authentification. ​Juste pour info.+<note warning>​[[ssh|sshd]] doit être redémarré afin d'​utiliser le nouveau système d'​authentification.</​note>​ 
 +<note warning>​Sur certaines machines sous ubuntu 8.04, ypbind refuse de démarrer correctement car dbus n'est pas encore lancé. Il suffit de le relancer à la main (sudo /​etc/​init.d/​nis restart). Une solution plus pérenne est de rajouter "​-no-dbus"​ à YPBINDARGS dans **/​etc/​default/​nis**</​note>​
  
-**Note:** Sur certaines machines sous ubuntu 8.04, ypbind refuse de démarrer correctement car dbus n'est pas encore lancé. Il suffit de le relancer à la main (sudo /​etc/​init.d/​nis restart). Une solution plus pérenne est de rajouter "​-no-dbus"​ à YPBINDARGS dans /​etc/​default/​nis. ​   ​+===== Cohabitation SuSe et Ubuntu =====
  
-**Note : Authentification par NIS d'un poste de travail sous Ubuntu Linux +Sous SuSE Linux, l'​algorithme ​d'encryptage des mots de passe (mots de passe "​blowfish"​) a été amélioré par rapport à l'​encryptage UNIX standard, tout en restant compatible avec celui-ci. Cette évolution se traduit par le remplacement de la bibliothèque pam_unix.so par pam_unix2.so.
-lorsque ​le serveur NIS fonctionne sous SuSE Linux **+
  
-Sous SuSE Linux, l'​algorithme d'​encryptage des mots de passe a été amélioré par rapport à l'​encryptage UNIX standard, tout en restant compatible avec celui-ci (remplacement de la bibliothèque pam_unix.so par pam_unix2.so ​ => mots de passe "​blowfish"​). ​Cela signifie concrètement ​ qu'une machine fonctionnant sous SuSE peut s'​authentifier sans problème auprès d'un serveur qui utilise ​l'​encryptage UNIX standardL'​inverse n'est pas vrai : une machine utilisant les algorithmes standard (tel Ubuntu ​par ex.) ne peut pas s'​authentifier auprès d'un serveur NIS fonctionnant sous SuSE.+Cela signifie concrètement qu'une machine fonctionnant sous SuSE peut s'​authentifier sans problème auprès d'un serveur qui utilise ​pam_unix2.so. Cependant, l'​inverse n'est pas vrai : une machine utilisant les algorithmes standard (comme c'est le cas sous Ubuntu) ne peut pas s'​authentifier auprès d'un serveur NIS fonctionnant ​utilisant pam_unix.so. Pour contourner ce problème, il suffit d'​installer sur les machines Ubuntu concernées les mêmes bibliothèques que celles utilisées ​sous SuSE et configurer PAM pour les utiliser. 
 +  * [[:​tutoriel:​comment_installer_un_paquet|Installer le paquet]] **[[apt> libpam-unix2]]**. 
 +  * [[:​tutoriel:​comment_editer_un_fichier|Éditer les fichiers]] **/​etc/​pam.d/​common-auth** ​ et **/​etc/​pam.d/​common-password**,​ puis y remplacer "​pam_unix.so"​ par "​pam_unix2.so"​.
  
-La solution est fort simple : il suffit d'​ajouter aux machines Ubuntu concernées les mêmes bibliothèques que celles utilisées par SuSE (et de les activer !). +===== Voir aussi ===== 
-Marche à suivre : + 
-- installer (par apt-get ou synaptic) le paquetage ​ libpam-unix2 +  ​* [[https://tldp.org/HOWTO/NIS-HOWTO/index.html|HOWTO du paquetage]] 
-- éditer les fichiers ​ /etc/pam.d/common-auth  et  ​/etc/pam.d/​common-password ​ : +  * [[https://wiki.ubuntu.com/​SettingUpNISHowTo|Setting up NIS Howto]] (article original)
-il suffit d'y changer les références à la bibliothèque :  pam_unix.so  =>  pam_unix2.so+
  
 ---- ----
-// Contributeur ​: [[utilisateurs:​fredb | FredB]] ​// + 
-// Article original : [[https://​wiki.ubuntu.com/​SettingUpNISHowTo|Setting up NIS Howto]]+// Contributeurs ​: [[utilisateurs:​fredb | FredB]][[utilisateurs:mamiemando|MaMieMando]] // 
 + 
  • nis.1433364752.txt.gz
  • Dernière modification: Le 03/06/2015, 22:52
  • par 82.244.41.19