NIS

De ArchwikiFR


Sommaire

Introduction

NIS (Network Information Service) est un protocole permettant le partage d'information sur un réseau local. Il met à disposition d'un ensemble de clients des informations communes, comme les comptes utilisateurs et les groupes. Chaque type d'information s'appelle une carte (map).

Serveur NIS

Installation

L'installation du serveur NIS se fait via le paquet ypserv :

pacman -S ypserv

Configuration

Un serveur NIS administre un domaine NIS. La définition du domaine se fait via le fichier /etc/nisdomainname :

Fichier: /etc/nisdomainname
NISDOMAINNAME="foo"


On spécifie le nom du serveur NIS dans le fichier /var/yp/ypservers :

Fichier: /var/yp/ypservers
<hostname>

La génération des cartes se fait via un fichier Makefile situé dans /var/yp. Le Makefile par défaut permet de produire bon nombre de cartes, mais on peut se limiter aux cartes de bases (passwd, group) en éditant la règle all de la Makefile :

Fichier: /var/yp/Makefile
all:   passwd group

On démarre les services nécessaires au serveur NIS :

systemctl start rpcbind ypserv

On génère les cartes :

cd /var/yp && make

les cartes sont à régénérer à chaque changement sur les fichiers source (/etc/passwd et /etc/group dans notre exemple).

Client NIS

Installation

L'installation du client NIS se fait via le paquet ypbind-mt :

pacman -S ypserv

Configuration

Le client NIS se configure via le fichier /etc/yp.conf. On y spécifie le domaine NIS ainsi que le serveur à contacter de différentes façons (nom du serveur, broadcast...). Pour faire simple, on va configurer le client en mode broadcast :

Fichier: /etc/yp.conf
broadcast

On démarre ensuite les services clients :

systemctl start domainname ypbind

On vérifie que le serveur a été trouvé :

ypwhich
ypcat passwd

La première commande doit retourner le nom du serveur NIS, la seconde doit afficher les comptes utilisateur du serveur dont l'UID est supérieur à 500 (configurable sur le serveur dans /var/yp/Makefile).

Utilisation des cartes

Via le fichier /etc/nsswitch.conf on peut spécifier dans quel cas utiliser les cartes NIS. Par exemple pour utiliser les comptes utilisateurs définis sur le serveur (et exportés via la carte passwd) on met à jour l'entrée 'passwd' sur le poste client :

Fichier: /etc/nsswitch.conf
passwd   : file nis

On peut dorénavant se connecter sur le poste client avec tout compte utilisateur défini sur le serveur. Le répertoire utilisateur doit bien sûr exister sur le poste client.

Outils personnels
Autres langues