3. Principes du service NIS

Le service d'information réseau ou Network Information Service (NIS) est une méthode de distribution d'éléments de configuration système sur les postes d'un réseau local. C'est un service réseau «historique» développé par Sun Microsystems™ au début des années 80. Il fonctionne sur le mode Client/Serveur à partir d'une base de données «à plat» (flat bindery base).

La base de données NIS est dite «à plat» parce qu'elle ne possède qu'un niveau d'organisation par opposition aux annuaires LDAP ou Active Directory qui possèdent une arborescence d'unités organisationnelles (OU). L'administration de cette base de données est donc beaucoup plus simple qu'un annuaire mais elle est limitée en granularité. Cette limitation devient critique lorsque la population des utilisateurs et des postes de travail dépasse les seuils critiques habituels. L'emploi du service NIS, tel qu'il est présenté ici, ne peut dépasser la centaine d'utilisateurs.

Comme tous les services qui datent des années 80, le service NIS possède de nombreuses limites en termes de sécurité. Il est possible de collecter toutes les informations échangées entre client et serveur à l'aide d'une capture réseau. On peut ainsi illustrer les faiblesses de mots de passes mal composés et justifier l'emploi de technologies plus sophistiquées et plus contemporaines telles que Kerberos.

Bien que les limites et les failles du service NIS soient connues depuis longtemps, on continue à l'exploiter dans certains contextes tels que les réseaux locaux scientifiques non reliés à l'Internet. La simplicité d'administration du service reste un argument pertinent dans ces domaines d'exploitation.

Serveur NIS

Le serveur NIS est, à la base, un poste de travail comme les autres. Ce sont ses paramètres ou fichiers de configuration système qui servent de référence pour l'ensemble du domaine NIS.

Ces paramètres système de référence sont intégrés dans une base de données que l'on peut interroger à l'aide de requêtes RPC.

La configuration du serveur NIS consiste donc à créer la base de données en définissant les éléments à exploiter sur le réseau local : comptes utilisateurs, noms d'hôtes, noms de réseau, automontage NFS, etc.

Ensuite, il faut exécuter les processus de traitement des requêtes reçues lors des appels RPC.

Client NIS

Le client NIS doit interroger le serveur dès qu'un paramètre système n'est pas défini localement dans ses propres fichiers de configuration.

La configuration du client consiste à désigner le serveur NIS et à exécuter les processus qui permettent d'émettre les appels RPC pour interroger la base de données.

Pour la petite histoire, Sun Microsystems™ souhaitait appeler ce service Yellow Pages du même nom que les annuaires téléphoniques professionnels. Comme ce nom était une marque déposée, il a fallu rebaptiser le service en Network Information Service. Les commandes utilisateurs ont cependant conservé le préfixe yp : ypinit, ypcat, etc.