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 07/05/2018, 10:47]
78.252.111.98 [Configuration du client NIS] révision mineure (orthographe...)
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 7: Ligne 7:
 <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>​
  
-D'​après [[http://​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.+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.
  
 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"​. 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"​.
Ligne 19: Ligne 19:
   * [[:​tutoriel:​comment_modifier_sources_maj|Activer le dépôt universe]].   * [[:​tutoriel:​comment_modifier_sources_maj|Activer le dépôt universe]].
   * [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​nis]]**.   * [[:​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. ​+  * 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 ===== ===== Configuration du serveur NIS =====
Ligne 35: Ligne 35:
 portmap ypserv ypbind : "liste d'​adresses IP" portmap ypserv ypbind : "liste d'​adresses IP"
 </​file>​ </​file>​
-... 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. ​+... 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.
   * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​default/​portmap** et commenter la ligne :   * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​default/​portmap** et commenter la ligne :
 <​file>​ <​file>​
 ARGS="​-i 127.0.0.2"​ ARGS="​-i 127.0.0.2"​
-</​file> ​+</​file>​
   * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​default/​nis** et définir la ligne NISSERVER à :   * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​default/​nis** et définir la ligne NISSERVER à :
 <​file>​ <​file>​
 NISSERVER=master NISSERVER=master
-</​file> ​+</​file>​
   * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​yp.conf** et ajouter une ligne de serveur sur la forme :    * [[:​tutoriel:​comment_editer_un_fichier|Éditer le fichier]] **/​etc/​yp.conf** et ajouter une ligne de serveur sur la forme : 
 <​file>​ <​file>​
Ligne 66: Ligne 66:
 sudo /​usr/​lib/​yp/​ypinit -m sudo /​usr/​lib/​yp/​ypinit -m
 </​code>​ </​code>​
-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).  +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émarrer les services appropriés : +  * Redémarrer les services appropriés :
 <​code>​ <​code>​
 sudo service portmap restart sudo service portmap restart
Ligne 73: Ligne 73:
 </​code>​ </​code>​
 <​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>​En cas de problème avec l'​arrêt de portmap le tuer avec la commande : <​code>​sudo kill -9 $(pidof portmap)</​code></​note> ​
-  * Par la suite, en cas de changement de configuration (par exemple, ajouter un utilisateur,​ etc.), ne pas oublier de lancer : +  * Par la suite, en cas de changement de configuration (par exemple, ajouter un utilisateur,​ etc.), ne pas oublier de lancer :
 <​code>​ <​code>​
 sudo make -C /var/yp sudo make -C /var/yp
Ligne 80: 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 pasComment? 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" ​.+Pour éviter ce genre d'attaque, il 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.
  
-Biennous avons restreint l'​accès à des adresses IP spécifiques,​ on 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. Ainsiun 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). ​+Toutefois, si un client ​légitime ​est compromisl'attaquant peut obtenir la liste de mots de passe (ce qui est une faille dans la plupart des systèmes d'​authentification de domaine).
  
  
Ligne 94: Ligne 98:
   * [[:​tutoriel:​comment_modifier_sources_maj|Activer le dépôt universe]].   * [[:​tutoriel:​comment_modifier_sources_maj|Activer le dépôt universe]].
   * [[:​tutoriel:​comment_installer_un_paquet|installer les paquets]] **[[apt>​nis]]** **[[apt>​portmap]]**.   * [[:​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. ​+  * 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 ===== ===== Configuration du client NIS =====
Ligne 158: Ligne 162:
 ===== Voir aussi ===== ===== Voir aussi =====
  
-  * [[http://​tldp.org/​HOWTO/​NIS-HOWTO/​index.html|HOWTO du paquetage]]+  * [[https://​tldp.org/​HOWTO/​NIS-HOWTO/​index.html|HOWTO du paquetage]]
   * [[https://​wiki.ubuntu.com/​SettingUpNISHowTo|Setting up NIS Howto]] (article original)   * [[https://​wiki.ubuntu.com/​SettingUpNISHowTo|Setting up NIS Howto]] (article original)
  
  • nis.1525682879.txt.gz
  • Dernière modification: Le 07/05/2018, 10:47
  • par 78.252.111.98