JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Guide d'administration système : Services de sécurité
search filter icon
search icon

Informations document

Préface

Partie I Présentation de la sécurité

1.  Services de sécurité (présentation)

Partie II Sécurité du système, des fichiers et des périphériques

2.  Gestion de la sécurité de la machine (présentation)

3.  Contrôle de l'accès aux systèmes (tâches)

4.  Contrôle de l'accès aux périphériques (tâches)

5.  Utilisation de l'outil de génération de rapports d'audit de base (tâches)

6.  Contrôle de l'accès aux fichiers (tâches)

7.  Utilisation d'Automated Security Enhancement Tool (Tâches)

Partie III Rôles, profils de droits et privilèges

8.  Utilisation des rôles et des privilèges (présentation)

9.  Utilisation du contrôle d'accès basé sur les rôles (tâches)

10.  Contrôle d'accès basé sur les rôles (référence)

11.  Privilèges (tâches)

12.  Privilèges (référence)

Partie IV Services cryptographiques

13.  Structure cryptographique Oracle Solaris (présentation)

14.  Structure cryptographique Oracle Solaris (tâches)

15.  Structure de gestion des clés Oracle Solaris

Partie V Services d'authentification et communication sécurisée

16.  Utilisation des services d'authentification (tâches)

17.  Utilisation de PAM

18.  Utilisation de SASL

19.  Utilisation d'Oracle Solaris Secure Shell (tâches)

20.  Oracle Solaris Secure Shell (référence)

Partie VI Service Kerberos

21.  Introduction au service Kerberos

22.  Planification du service Kerberos

23.  Configuration du service Kerberos (tâches)

Configuration du service Kerberos (liste des tâches)

Configuration de services Kerberos supplémentaires (liste des tâches)

Configuration des serveurs KDC

Procédure de configuration manuelle d'un KDC maître

Procédure de configuration d'un KDC pour l'utilisation d'un serveur de données LDAP

Procédure de configuration manuelle d'un KDC esclave

Procédure d'actualisation des clés TGS sur un serveur maître

Configuration de l'authentification inter-domaine

Procédure d'établissement de l'authentification inter-domaine hiérarchique

Procédure d'établissement de l'authentification inter-domaine directe

Configuration des serveurs d'application réseau Kerberos

Procédure de configuration d'un serveur d'application réseau Kerberos

Configuration de serveurs NFS Kerberos

Procédure de configuration des serveurs NFS Kerberos

Création d'une table d'informations d'identification

Ajout d'une entrée unique à la table d'informations d'identification

Procédure de mappage d'informations d'identification entre domaines

Configuration d'un environnement NFS sécurisé avec plusieurs modes de sécurité Kerberos

Configuration des clients Kerberos

Configuration des clients Kerberos (liste des tâches)

Procédure de création d'un profil d'installation de client Kerberos

Configuration automatique d'un client Kerberos

Configuration interactive d'un client Kerberos

Configuration manuelle d'un client Kerberos

Désactivation de la vérification du TGT

Accès à un système de fichiers NFS protégé par Kerberos en tant qu'utilisateur root

Configuration de la migration automatique des utilisateurs dans un domaine Kerberos

Synchronisation des horloges entre les KDC et les clients Kerberos

Échange d'un KDC maître et d'un KDC esclave

Configuration d'un KDC échangeable

Procédure d'échange d'un KDC maître et d'un KDC esclave

Administration de la base de données Kerberos

Sauvegarde et propagation de la base de données Kerberos

Fichier kpropd.acl

Commande kprop_script

Sauvegarde de la base de données Kerberos

Procédure de restauration de la base de données Kerberos

Procédure de conversion d'une base de données Kerberos après une mise à niveau du serveur

Reconfiguration d'un KDC maître pour l'utilisation de la propagation incrémentielle

Procédure de reconfiguration d'un KDC esclave pour l'utilisation de la propagation incrémentielle

Procédure de configuration d'un KDC esclave pour l'utilisation de la propagation complète

Procédure de vérification de la synchronisation des serveurs KDC

Propagation manuelle de la base de données Kerberos aux KDC esclaves

Configuration d'une propagation parallèle

Étapes de configuration d'une propagation parallèle

Administration du fichier stash

Procédure de suppression d'un fichier stash

Gestion d'un KDC sur un serveur d'annuaire LDAP

Procédure d'association des attributs de principaux Kerberos dans un type de classe d'objet non Kerberos

Procédure de suppression d'un domaine d'un serveur d'annuaire LDAP

Renforcement de la sécurité des serveurs Kerberos

Procédure d'activation des applications utilisant Kerberos uniquement

Procédure de restriction de l'accès aux serveurs KDC

Utilisation d'un fichier dictionnaire pour augmenter la sécurité de mot de passe

24.  Messages d'erreur et dépannage de Kerberos

25.  Administration des principaux et des stratégies Kerberos (tâches)

26.  Utilisation des applications Kerberos (tâches)

27.  Service Kerberos (référence)

Partie VII Audit Oracle Solaris

28.  Audit Oracle Solaris (présentation)

29.  Planification de l'audit Oracle Solaris

30.  Gestion de l'audit Oracle Solaris (tâches)

31.  Audit Oracle Solaris (référence)

Glossaire

Index

Configuration des clients Kerberos

Les clients Kerberos incluent tout hôte qui n'est pas un serveur KDC sur le réseau et qui doit utiliser les services Kerberos. Cette section décrit les procédures d'installation d'un client Kerberos, ainsi que des informations spécifiques sur l'utilisation de l'authentification root pour monter des systèmes de fichiers NFS.

Configuration des clients Kerberos (liste des tâches)

La liste des tâches ci-dessous comprend toutes les procédures associées à la configuration des clients Kerberos. Chaque ligne comprend un identificateur de tâche, une description de la raison pour laquelle cette tâche doit être effectuée, suivie d'un lien vers la tâche.

Tâche
Description
Voir
Établissement d'un profil d'installation client Kerberos
Génère un profil d'installation client pouvant être utilisé pour installer automatiquement un client Kerberos.
Configuration d'un client Kerberos
Installe manuellement un client Kerberos. Utilisez cette procédure si chaque installation de client requiert des paramètres d'installation uniques.
Installe automatiquement un client Kerberos. Utilisez cette procédure si les paramètres d'installation sont identiques pour tous les clients.
Installe interactivement un client Kerberos. Utilisez cette procédure si seuls quelques-uns des paramètres d'installation doivent être modifiés.
Autorisation donnée à un client d'accéder à un système de fichiers NFS en tant qu'utilisateur root.
Crée un principal root sur le client, de manière à ce que le client puisse monter un système de fichiers NFS partagé avec accès root. Permet également au client de définir un accès root non interactif au système de fichiers NFS, de manière à ce que les tâches cron puissent s'exécuter.
Désactivation de la vérification du KDC qui a émis un TGT (Ticket Granting Ticket) client
Permet aux clients ne disposant pas d'un principal d'hôte stocké dans le fichier keytab local d'ignorer le contrôle de sécurité qui vérifie que le KDC ayant émis le TGT est le même serveur que celui ayant émis le principal d'hôte.

Procédure de création d'un profil d'installation de client Kerberos

Cette procédure permet de créer un profil kclient à utiliser lorsque vous installez un client Kerberos. L'utilisation du profil kclient permet de réduire les risques de faute de frappe. En outre, le profil permet de réduire l'intervention de l'utilisateur par rapport au processus interactif.

  1. Connectez-vous en tant que superutilisateur.
  2. Créez un profil d'installation kclient.

    Un exemple de profil kclient pourrait ressembler à l'exemple suivant :

    client# cat /net/denver.example.com/export/install/profile
    REALM EXAMPLE.COM
    KDC kdc1.example.com
    ADMIN clntconfig
    FILEPATH /net/denver.example.com/export/install/krb5.conf
    NFS 1
    DNSLOOKUP none

Configuration automatique d'un client Kerberos

Avant de commencer

Cette procédure utilise un profil d'installation. Reportez-vous à la section Procédure de création d'un profil d'installation de client Kerberos.

  1. Connectez-vous en tant que superutilisateur.
  2. Exécutez le script d'installation kclient.

    Vous devez fournir le mot de passe pour le principal clntconfig afin de terminer le processus.

    client# /usr/sbin/kclient -p /net/denver.example.com/export/install/profile
    
    Starting client setup
    ---------------------------------------------------
    
    kdc1.example.com
    
    Setting up /etc/krb5/krb5.conf.
    
    Obtaining TGT for clntconfig/admin ...
    Password for clntconfig/admin@EXAMPLE.COM: <Type the password>
    
    nfs/client.example.com entry ADDED to KDC database.
    nfs/client.example.com entry ADDED to keytab.
    
    host/client.example.com entry ADDED to KDC database.
    host/client.example.com entry ADDED to keytab.
    
    Copied /net/denver.example.com/export/install/krb5.conf.
    
    ---------------------------------------------------
    Setup COMPLETE.
    
    client#

Exemple 23-7 Configuration automatique d'un client Kerberos avec des remplacements de ligne de commande

L'exemple suivant remplace les paramètres DNSARG et KDC définis dans le profil d'installation.

# /usr/sbin/kclient -p /net/denver.example.com/export/install/profile\
-d dns_fallback -k kdc2.example.com

Starting client setup
---------------------------------------------------

kdc1.example.com

Setting up /etc/krb5/krb5.conf.

Obtaining TGT for clntconfig/admin ...
Password for clntconfig/admin@EXAMPLE.COM: <Type the password>

nfs/client.example.com entry ADDED to KDC database.
nfs/client.example.com entry ADDED to keytab.

host/client.example.com entry ADDED to KDC database.
host/client.example.com entry ADDED to keytab.

Copied /net/denver.example.com/export/install/krb5.conf.

---------------------------------------------------
Setup COMPLETE.

client#

Configuration interactive d'un client Kerberos

Cette procédure utilise l'utilitaire d'installation kclient sans profil d'installation.

  1. Connectez-vous en tant que superutilisateur.
  2. Exécutez le script d'installation kclient.

    Vous devez fournir les informations suivantes :

    • Nom de domaine Kerberos

    • Nom d'hôte KDC maître

    • Nom de principal administratif

    • Mot de passe du principal administratif

Exemple 23-8 Exécution de l'utilitaire d'installation kclient

La sortie suivante indique les résultats de l'exécution de la commande kclient.

client# /usr/sbin/kclient

Starting client setup
---------------------------------------------------

Do you want to use DNS for kerberos lookups ? [y/n]: n
        No action performed.
Enter the Kerberos realm: EXAMPLE.COM
Specify the KDC hostname for the above realm: kdc1.example.com

Setting up /etc/krb5/krb5.conf.

Enter the krb5 administrative principal to be used: clntconfig/admin
Obtaining TGT for clntconfig/admin ...
Password for clntconfig/admin@EXAMPLE.COM: <Type the password>
Do you plan on doing Kerberized nfs ? [y/n]: n

host/client.example.com entry ADDED to KDC database.
host/client.example.com entry ADDED to keytab.

Do you want to copy over the master krb5.conf file ? [y/n]: y
Enter the pathname of the file to be copied: \
/net/denver.example.com/export/install/krb5.conf

Copied /net/denver.example.com/export/install/krb5.conf.

---------------------------------------------------
Setup COMPLETE !
#

Configuration manuelle d'un client Kerberos

Dans cette procédure, les paramètres de configuration suivants sont utilisés :

  1. Connectez-vous en tant que superutilisateur.
  2. Éditez le fichier de configuration Kerberos (krb5.conf).

    Pour modifier le fichier de version Kerberos par défaut, vous devez modifier les noms de domaine et les noms de serveur. Vous devez également identifier le chemin d'accès aux fichiers d'aide pour gkadmin.

    kdc1 # cat /etc/krb5/krb5.conf
    [libdefaults]
            default_realm = EXAMPLE.COM
    
    [realms]
            EXAMPLE.COM = {
            kdc = kdc1.example.com
            kdc = kdc2.example.com
            admin_server = kdc1.example.com
            }
    
    [domain_realm]
            .example.com = EXAMPLE.COM
    #
    # if the domain name and realm name are equivalent, 
    # this entry is not needed
    #
    [logging]
            default = FILE:/var/krb5/kdc.log
            kdc = FILE:/var/krb5/kdc.log
    
    [appdefaults]
        gkadmin = {
            help_url = http://denver:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956

    Remarque - Si vous voulez limiter les types de chiffrement, vous pouvez définir les lignes default_tkt_enctypes ou default_tgs_enctypes. Pour une description des problèmes liés à la restriction des types de chiffrement, reportez-vous à la section Utilisation des types de chiffrement Kerberos.


  3. (Facultatif) Modifiez le processus utilisé pour localiser les KDC.

    À partir de la version Solaris 10 5/08, par défaut, le domaine Kerberos pour le mappage KDC est effectué dans l'ordre suivant :

    • Définition de la section realms dans krb5.conf ;

    • Recherche des enregistrements SRV dans le DNS.

    Vous pouvez modifier ce comportement en ajoutant dns_lookup_kdc ou dns_fallback à la section libdefaults du fichier krb5.conf. Pour plus d'informations, reportez-vous à la page de manuel krb5.conf(4). Notez que les références sont toujours tentées en premier.

  4. (Facultatif) Modifiez le processus utilisé pour déterminer le domaine d'un hôte.

    À partir de la version Solaris 10 5/08, par défaut, le mappage l'hôte au domaine est déterminé dans l'ordre suivant :

    • Si le KDC prend en charge les références, le KDC peut indiquer au client le domaine auquel appartient l'hôte.

    • Par la définition du fichier domain_realm du fichier krb5.conf.

    • Le nom de domaine DNS de l'hôte.

    • Le domaine par défaut.

    Vous pouvez modifier ce comportement en ajoutant dns_lookup_kdc ou dns_fallback à la section libdefaults du fichier krb5.conf. Pour plus d'informations, reportez-vous à la page de manuel krb5.conf(4). Notez que les références sont toujours tentées en premier.

  5. (Facultatif) Synchronisez l'horloge du client avec l'horloge du KDC maître à l'aide de NTP ou d'un autre mécanisme de synchronisation d'horloge.

    L'installation et l'utilisation du protocole NTP (Network Time Protocol) ne sont pas requises. Cependant, chaque horloge doit être synchronisée avec l'heure sur le serveur KDC dans une différence maximum définie par la relation clockskew dans le fichier krb5.conf pour que l'opération d'authentification réussisse. Pour plus d'informations sur le protocole NTP, reportez-vous à la section Synchronisation des horloges entre les KDC et les clients Kerberos.

  6. Démarrez kadmin.

    Vous pouvez utiliser l'outil d'administration graphique Kerberos pour ajouter un principal, comme expliqué dans la section Création d'un principal Kerberos. Pour ce faire, vous devez vous connecter à l'aide de l'un des noms de principal admin que vous avez créés lorsque vous avez configuré le KDC maître. Toutefois, l'exemple ci-après montre comment ajouter les principaux requis à l'aide de la ligne de commande.

    denver # /usr/sbin/kadmin -p kws/admin
    Enter password: <Type kws/admin password>
    kadmin: 
    1. (Facultatif) Créez un principal d'utilisateur s'il n'en existe pas déjà.

      Vous devez créer un principal d'utilisateur uniquement si aucun principal n'est affecté à l'utilisateur associé à cet hôte.

      kadmin: addprinc mre
      Enter password for principal mre@EXAMPLE.COM: <Type the password>
      Re-enter password for principal mre@EXAMPLE.COM: <Type it again>
      kadmin: 
    2. (Facultatif) Créez un principal root et ajoutez le principal au fichier keytab du serveur.

      Cette étape est nécessaire pour que le client dispose d'un accès root aux systèmes de fichiers montés à l'aide du service NFS. Cette étape est également requise si l'accès root non interactif est nécessaire, par exemple pour l'exécution des tâches cron en tant que root.

      Vous pouvez ignorer cette étape si le client ne nécessite pas l'accès root à un système de fichiers distant monté à l'aide du service NFS. Le principal de root doit être un principal à deux composants, avec pour second composant le nom d'hôte du système du client Kerberos, pour éviter la création d'un principal root à l'échelle du domaine. Notez que lorsque l'instance de principal est un nom d'hôte, le nom de domaine complet (FQDN) doit être spécifié en minuscules, quelle que soit la casse du nom de domaine dans le fichier /etc/resolv.conf.

      kadmin: addprinc -randkey root/client.example.com
      Principal "root/client.example.com" created.
      kadmin: ktadd root/client.example.com
      Entry for principal root/client.example.com with kvno 3, encryption type AES-256 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type AES-128 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    3. Créez un principal host et ajoutez le principal au fichier keytab du serveur.

      Le principal host est utilisé par les services d'accès à distance pour fournir l'authentification. L'identité permet à root d'acquérir des informations d'identification, s'il n'en existe pas déjà dans le fichier keytab.

      kadmin: addprinc -randkey host/denver.example.com
      Principal "host/denver.example.com@EXAMPLE.COM" created.
      kadmin: ktadd host/denver.example.com
      Entry for principal host/denver.example.com with kvno 3, encryption type AES-256 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type AES-128 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin:
    4. (Facultatif) Ajoutez le principal de service du serveur NFS au fichier keytab du serveur.

      Cette étape n'est requise que si le client a besoin d'accéder aux systèmes de fichiers NFS à l'aide de l'authentification Kerberos.

      kadmin: ktadd nfs/denver.example.com
      Entry for principal nfs/denver.example.com with kvno 3, encryption type AES-256 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type AES-128 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    5. Quittez kadmin.
      kadmin: quit
  7. (Facultatif) Activez Kerberos avec NFS.
    1. Activez les modes de sécurité Kerberos dans le fichier /etc/nfssec.conf.

      Modifiez le fichier /etc/nfssec.conf et supprimez le "#" placé devant les modes de sécurité Kerberos.

      # cat /etc/nfssec.conf
       .
       .
      #
      # Uncomment the following lines to use Kerberos V5 with NFS
      #
      krb5            390003  kerberos_v5     default -               # RPCSEC_GSS
      krb5i           390004  kerberos_v5     default integrity       # RPCSEC_GSS
      krb5p           390005  kerberos_v5     default privacy         # RPCSEC_GSS
    2. Activez DNS.

      Si le fichier /etc/resolv.conf n'a pas déjà été créé, créez ce fichier en tant que principal de service, car la normalisation du principal de service dépend du DNS. Pour plus d'informations, reportez-vous à la page de manuel resolv.conf(4).

    3. Redémarrez le service gssd.

      Une fois le fichier /etc/resolv.conf créé ou modifié, vous devez redémarrer le démon gssd pour relire les modifications.

      # svcadm restart network/rpc/gss
  8. Si vous souhaitez que le client renouvelle automatiquement le TGT ou qu'il avertisse les utilisateurs de l'expiration du ticket Kerberos, créez une entrée dans le fichier /etc/krb5/warn.conf .

    Pour plus d'informations, reportez-vous à la page de manuel warn.conf(4).

Exemple 23-9 Configuration d'un client Kerberos à l'aide d'un KDC non-Solaris

Un client Kerberos peut être configuré pour fonctionner avec un KDC non Solaris. Dans ce cas, une ligne doit être incluse dans le fichier /etc/krb5/krb5.conf à la section realms. Cette ligne change le protocole utilisé lorsque le client est en cours de communication avec le serveur de changement de mot de passe Kerberos. Le format de cette ligne est le suivant.

[realms]
                EXAMPLE.COM = {
                kdc = kdc1.example.com
                kdc = kdc2.example.com
                admin_server = kdc1.example.com
                kpasswd_protocol = SET_CHANGE
        }

Exemple 23-10 Enregistrements DNS TXT pour le mappage de l'hôte et du nom de domaine au domaine Kerberos

@ IN SOA kdc1.example.com root.kdc1.example.com (
                                1989020501   ;serial
                                10800        ;refresh
                                3600         ;retry
                                3600000      ;expire
                                86400 )      ;minimum

                        IN      NS      kdc1.example.com.
kdc1                    IN      A       192.146.86.20
kdc2                    IN      A       192.146.86.21

_kerberos.example.com.             IN      TXT     "EXAMPLE.COM"
_kerberos.kdc1.example.com.        IN      TXT     "EXAMPLE.COM"
_kerberos.kdc2.example.com.        IN      TXT     "EXAMPLE.COM"

Exemple 23-11 Enregistrements DNS SRV pour les emplacements de serveur Kerberos

Cet exemple définit les enregistrements pour l'emplacement des KDC, du serveur admin et du serveur kpasswd, respectivement.

@ IN SOA kdc1.example.com root.kdc1.example.com (
                                1989020501   ;serial
                                10800        ;refresh
                                3600         ;retry
                                3600000      ;expire
                                86400 )      ;minimum

                                   IN      NS      kdc1.example.com.
kdc1                               IN      A       192.146.86.20
kdc2                               IN      A       192.146.86.21

_kerberos._udp.EXAMPLE.COM         IN      SRV 0 0 88  kdc2.example.com
_kerberos._tcp.EXAMPLE.COM         IN      SRV 0 0 88  kdc2.example.com
_kerberos._udp.EXAMPLE.COM         IN      SRV 1 0 88  kdc1.example.com
_kerberos._tcp.EXAMPLE.COM         IN      SRV 1 0 88  kdc1.example.com
_kerberos-adm._tcp.EXAMPLE.COM     IN      SRV 0 0 749 kdc1.example.com
_kpasswd._udp.EXAMPLE.COM          IN      SRV 0 0 749 kdc1.example.com

Désactivation de la vérification du TGT

Cette procédure permet de désactiver le contrôle de sécurité qui vérifie que le KDC de l'hôte principal stocké dans le fichier /etc/krb5/krb5.keytab local est le même KDC qui a émis le TGT. Cette vérification permet d'empêcher les attaques par usurpation de DNS. Cependant, pour certaines configurations client, l'hôte principal peut ne pas être disponible, et cette vérification doit alors être désactivée pour que le client puisse fonctionner. Voici les configurations requérant que cette vérification soit désactivée :

  1. Connectez-vous en tant que superutilisateur.
  2. Modifiez le fichier krb5.conf.

    Si l'option verify_ap_req_nofail est définie sur false, le processus de vérification du TGT n'est pas activé. Pour plus d'informations sur cette option, reportez-vous à la page de manuel krb5.conf(4).

    client # cat /etc/krb5/krb5.conf
    [libdefaults]
            default_realm = EXAMPLE.COM
            verify_ap_req_nofail = false
      ...

    Remarque - L'option verify_ap_req_nofail peut être saisie dans la section [libdefaults] ou [realms] du fichier krb5.conf. Si la valeur de l'option est dans la section [libdefaults], le paramètre est utilisé pour tous les domaines. Si la valeur de l'option est dans la section [realms] , le paramètre s'applique uniquement au domaine défini.


Accès à un système de fichiers NFS protégé par Kerberos en tant qu'utilisateur root

Cette procédure permet à un client d'accéder à un système de fichiers NFS requérant l'authentification Kerberos avec le privilège d'ID root, en particulier lorsque le système de fichiers NFS est partagé avec des options comme -o sec=krb5,root=client1.sun.com.

  1. Connectez-vous en tant que superutilisateur.
  2. Démarrez kadmin.

    Vous pouvez utiliser l'outil d'administration graphique Kerberos pour ajouter un principal, comme expliqué dans la section Création d'un principal Kerberos. Pour ce faire, vous devez vous connecter à l'aide de l'un des noms de principal admin que vous avez créés lorsque vous avez configuré le KDC maître. Toutefois, l'exemple ci-après montre comment ajouter les principaux requis à l'aide de la ligne de commande.

    denver # /usr/sbin/kadmin -p kws/admin
    Enter password: <Type kws/admin password>
    kadmin: 
    1. Créez un principal root pour le client NFS.

      Ce principal permet de fournir un accès équivalent à root aux systèmes de fichiers montés NFS requérant l'authentification Kerberos. Le principal root doit être un principal à deux composants, avec pour second composant le nom d'hôte du système du client Kerberos, pour éviter la création d'un principal root à l'échelle du domaine. Notez que lorsque l'instance de principal est un nom d'hôte, le nom de domaine complet (FQDN) doit être spécifié en minuscules, quelle que soit la casse du nom de domaine dans le fichier /etc/resolv.conf.

      kadmin: addprinc -randkey root/client.example.com
      Principal "root/client.example.com" created.
      kadmin:
    2. Ajoutez le principal root au fichier keytab du serveur.

      Cette étape est nécessaire si vous avez ajouté un principal root afin que le client puisse avoir l'accès root aux systèmes de fichiers montés à l'aide du service NFS. Cette étape est également requise si l'accès root non interactif est nécessaire, par exemple pour l'exécution des tâches cron en tant que root.

      kadmin: ktadd root/client.example.com
      Entry for principal root/client.example.com with kvno 3, encryption type AES-256 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type AES-128 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    3. Quittez kadmin.
      kadmin: quit

Configuration de la migration automatique des utilisateurs dans un domaine Kerberos

Les utilisateurs ne disposant pas d'un principal Kerberos peuvent être automatiquement migrés vers un domaine Kerberos existant. La migration s'effectue à l'aide de la structure PAM pour le service en cours d'utilisation par l'empilage du module pam_krb5_migrate dans la pile d'authentification du service dans /etc/pam.conf.

Dans cet exemple, les noms de services PAM dtlogin et other sont configurés pour utiliser la migration automatique. Les paramètres de configuration suivants sont utilisés :

Avant de commencer

Configurez server1 en tant que client Kerberos du domaine EXAMPLE.COM. Pour plus d'informations, reportez-vous à la section Configuration des clients Kerberos.

  1. Vérifiez si un hôte principal de service existe pour server1 .

    L'hôte principal de service dans le fichier keytab de server1 est utilisé pour authentifier le serveur auprès du KDC maître.

    server1 # klist -k
    Keytab name: FILE:/etc/krb5/krb5.keytab
        KVNO Principal
        ---- ------------------------------------------------
           3 host/server1.example.com@EXAMPLE.COM
           3 host/server1.example.com@EXAMPLE.COM
           3 host/server1.example.com@EXAMPLE.COM
           3 host/server1.example.com@EXAMPLE.COM
  2. Apportez des modifications au fichier de configuration PAM.
    1. Ajoutez des entrées pour le service dtlogin.
      # cat /etc/pam.conf
       .
       .
      # # dtlogin service (explicit because of pam_krb5_migrate) # dtlogin auth requisite pam_authtok_get.so.1 dtlogin auth required pam_dhkeys.so.1 dtlogin auth required pam_unix_cred.so.1 dtlogin auth sufficient pam_krb5.so.1 dtlogin auth requisite pam_unix_auth.so.1 dtlogin auth optional pam_krb5_migrate.so.1
    2. (Facultatif) Forcez une modification immédiate du mot de passe, si nécessaire.

      Il est possible de définir le délai d'expiration du mot de passe des nouveaux comptes Kerberos sur l'heure actuelle (maintenant), afin de forcer la modification immédiate du mot de passe Kerberos. Pour définir l'heure d'expiration sur l'heure actuelle, ajoutez l'option expire_pw aux lignes utilisant le module pam_krb5_migrate. Pour plus d'informations, reportez-vous à la page de manuel pam_krb5_migrate(5).

      # cat /etc/pam.conf
       .
       .
      dtlogin auth optional pam_krb5_migrate.so.1 expire_pw
    3. Ajoutez le module pam_krb5 à la pile de compte.

      Cet ajout prévoit l'expiration du mot de passe de Kerberos afin de bloquer l'accès.

      # cat /etc/pam.conf
       .
       .
      #
      # Default definition for Account management
      # Used when service name is not explicitly mentioned for account management
      #
      other   account requisite       pam_roles.so.1
      other account required pam_krb5.so.1
      other   account required        pam_unix_account.so.1
    4. Ajoutez le module pam_krb5 à la pile de mot de passe.

      Cet ajout permet la mise à jour des mots de passe lorsque ceux-ci expirent.

      # cat /etc/pam.conf
       .
       .
      #
      # Default definition for Password management
      # Used when service name is not explicitly mentioned for password management
      #
      other   password required       pam_dhkeys.so.1
      other   password requisite      pam_authtok_get.so.1
      other   password requisite      pam_authtok_check.so.1
      other   password sufficient     pam_krb5.so.1
      other   password required       pam_authtok_store.so.1
  3. Sur le KDC maître, mettez à jour le fichier de contrôle d'accès.

    Les entrées suivantes accordent des privilèges de migration et de consultation au principal de service host/server1.example.com pour tous les utilisateurs, excepté l'utilisateur root. Il est important que les utilisateurs qui ne doivent pas être migrés soient répertoriés dans le fichier kadm5.acl à l'aide du privilège U. Ces entrées doivent figurer avant l'entrée "permit all" ou ui. Pour plus d'informations, reportez-vous à la page de manuel kadm5.acl(4).

    kdc1 # cat /etc/krb5/kadm5.acl
    host/server1.example.com@EXAMPLE.COM U root
    host/server1.example.com@EXAMPLE.COM ui *
    */admin@EXAMPLE.COM *
  4. Sur le KDC maître, redémarrez le démon d'administration Kerberos.

    Cette étape permet au démon kadmind d'utiliser les nouvelles entrées kadm5.acl.

    kdc1 # svcadm restart network/security/kadmin
  5. Sur le KDC maître, ajoutez les entrées au fichier pam.conf.

    Les entrées suivantes permettent au démon kadmind d'utiliser le service PAM k5migrate pour valider le mot de passe utilisateur UNIX pour les comptes qui nécessitent une migration.

    # grep k5migrate /etc/pam.conf
    k5migrate        auth    required        pam_unix_auth.so.1
    k5migrate        account required        pam_unix_account.so.1