Guide d'administration système : services IP

Configuration des clients DHCP en tant que clients NIS+

Vous pouvez utiliser le service de noms NIS+ sur des systèmes Oracle Solaris faisant office de clients DHCP. Toutefois, si votre serveur DHCP est capable de fournir des adresses différentes à différents moments, cela permet de contourner l'une des fonctions de sécurité de NIS+, à savoir la création d'informations d'identification DES (Data Encryption Standard). Pour travailler dans des conditions de sécurité optimales, configurez le serveur DHCP de façon à ce qu'il propose systématiquement la même adresse. Lorsque vous configurez un client NIS+ qui n'a pas recours à DHCP, vous ajoutez au serveur NIS+ des informations d'identification DES uniques pour le client. Il y a différentes façons de créer des informations d'identification. Vous pouvez, par exemple, utiliser le script nisclient ou la commande nisaddcred.

Pour pouvoir générer des informations d'identification NIS+, le client doit avoir un nom d'hôte statique qui permette de créer et de stocker ce type d'information. Si vous avez l'intention d'utiliser NIS+ et DHCP, il est impératif de définir des informations d'identification réservées à tous les noms d'hôtes des clients DHCP. Quels que soit l'adresse IP et le nom d'hôte associé reçus par un client DHCP, le client peut utiliser les mêmes informations d'identification DES.

La procédure suivante montre comment générer des informations d'identification pour l'ensemble des noms d'hôtes DHCP. Elle n'a d'intérêt que si vous connaissez les noms d'hôtes utilisés par les clients DHCP. Lorsque le serveur DHCP génère les noms d'hôtes, par exemple, vous avez une idée précise des noms d'hôtes susceptibles d'être reçus par un client.

ProcedureConfiguration des clients DHCP Oracle Solaris en tant que clients NIS+

Un système client DHCP censé devenir un client NIS+ doit exploiter les informations d'identification appartenant à un autre système client NIS+ dans le domaine NIS+. Cette procédure permet de produire uniquement des informations d'identification pour le système, lesquelles s'appliquent exclusivement au superutilisateur connecté au système. Tout autre utilisateur se connectant au système client DHCP doit posséder ses propres informations d'identification au niveau du serveur NIS+. Ces informations d'identification sont définies conformément à la procédure décrite dans le manuel System Administration Guide: Naming and Directory Services (NIS+).

  1. Créez les informations d'identification pour un client en entrant la commande suivante sur le serveur NIS+ :


    # nisgrep nisplus-client-name cred.org_dir > /tmp/file
    

    Cette commande inscrit l'entrée de table cred.org_dir pour le client NIS+ dans un fichier temporaire.

  2. Servez-vous de la commande cat pour afficher le contenu du fichier temporaire.

    Vous pouvez également utiliser un éditeur de texte.

  3. Copiez les informations d'identification réservées aux clients DHCP.

    Vous devez copier la clé publique et la clé privée (longues chaînes de chiffres et de lettres séparés par le signe deux-points). Les informations d'identification sont destinées à être collées dans la commande exécutée à l'étape suivante.

  4. Ajoutez les informations d'identification pour un client DHCP en tapant la commande suivante :


    # nistbladm -a cname=" dhcp-client-name@nisplus-domain" auth_type=DES \
    auth_name="unix.dhcp-client-name@nisplus-domain" \
    public_data=copied-public-key \ 
    private_data=copied-private-key
    

    Pour la clé-publique-copiée, collez les informations relatives à la clé publique à partir du fichier temporaire. Pour la clé-privée-copiée, collez les informations relatives à la clé privée à partir du fichier temporaire.

  5. Copiez à distance les fichiers à partir du système client NIS+ vers le système client DHCP en tapant les commandes suivantes sur le système client DHCP :


    # rcp nisplus-client-name:/var/nis/NIS_COLD_START /var/nis
    # rcp nisplus-client-name:/etc/.rootkey /etc
    # rcp nisplus-client-name:/etc/defaultdomain /etc
    

    Si vous obtenez un message signalant un problème de permission, il est possible que les systèmes ne soient pas configurés pour autoriser la copie à distance. Dans ce cas, il suffit de copier les fichiers en tant qu'utilisateur normal vers un emplacement intermédiaire. En tant que superutilisateur, copiez les fichiers depuis l'emplacement intermédiaire vers l'emplacement approprié sur le système client DHCP.

  6. Copiez le fichier du commutateur du service de noms qui convient pour NIS+ en entrant la commande suivante sur le système client DHCP :


    # cp /etc/nsswitch.nisplus /etc/nsswitch.conf
    
  7. Redémarrez le système client DHCP.

    Le système client DHCP doit désormais être en mesure d'utiliser les services NIS+.


Exemple 16–1 Configuration d'un système client DHCP Oracle Solaris en tant que client NIS+

L'exemple suivant suppose que vous disposez d'un système nisei, considéré comme un client NIS+ dans le domaine NIS+ dev.example.net . Vous disposez également d'un système client DHCP (dhow) et souhaitez que dhow devienne un client NIS+.


(First log in as superuser on the NIS+ server)
# nisgrep nisei cred.org_dir > /tmp/nisei-cred
# cat /tmp/nisei-cred
nisei.dev.example.net.:DES:unix.nisei@dev.example.net:46199279911a84045b8e0
c76822179138173a20edbd8eab4:90f2e2bb6ffe7e3547346dda624ec4c7f0fe1d5f37e21cff63830
c05bc1c724b
# nistbladm -a cname="dhow@dev.example.net." \
auth_type=DES auth_name="unix.dhow@dev.example.net" \
public_data=46199279911a84045b8e0c76822179138173a20edbd8eab4 \
private_data=90f2e2bb6ffe7e3547346dda624ec4c7f0fe1d5f37e21cff63830\
c05bc1c724b
# rlogin dhow
(Log in as superuser on dhow)
# rcp nisei:/var/nis/NIS_COLD_START /var/nis
# rcp nisei:/etc/.rootkey /etc
# rcp nisei:/etc/defaultdomain /etc
# cp /etc/nsswitch.nisplus /etc/nsswitch.conf
# reboot

Le système client DHCP dhow doit désormais être capable d'exploiter les services NIS+.



Exemple 16–2 Ajout d'informations d'identification à l'aide d'un script

Si vous souhaitez configurer un grand nombre de systèmes clients DHCP en tant que clients NIS+, le mieux est d'écrire un script. Un script est très pratique pour ajouter les entrées dans la table NIS+ cred.org_dir. Voici un exemple de script caractéristique.


#! /usr/bin/ksh  
# 
# Copyright (c) by Sun Microsystems, Inc. All rights reserved. 
# 
# Sample script for cloning a credential. Hosts file is already populated  
# with entries of the form dhcp-[0-9][0-9][0-9]. The entry we're cloning 
# is dhcp-001. 
#  
#  
PUBLIC_DATA=6e72878d8dc095a8b5aea951733d6ea91b4ec59e136bd3b3 
PRIVATE_DATA=3a86729b685e2b2320cd7e26d4f1519ee070a60620a93e48a8682c5031058df4
HOST="dhcp-" 
DOMAIN="mydomain.example.com"  
 
for 
i in 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019
do         
     print - ${HOST}${i}         
     #nistbladm -r [cname="${HOST}${i}.${DOMAIN}."]cred.org_dir         
     nistbladm -a cname="${HOST}${i}.${DOMAIN}." \
         auth_type=DES auth_name="unix.${HOST}${i}@${DOMAIN}" \
         public_data=${PUBLIC_DATA} private_data=${PRIVATE_DTA} cred.org_Dir
done  
 
exit 0