JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Administration d'Oracle Solaris : services de sécurité     Oracle Solaris 11 Information Library (Français)
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.  Service d'analyse antivirus (tâches)

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

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

7.  Contrôle de l'accès aux fichiers (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.  Attributs de sécurité dans Oracle Solaris (référence)

Partie IV Services cryptographiques

11.  Structure cryptographique (présentation)

12.  Structure cryptographique (tâches)

13.  Structure de gestion des clés

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

14.  Authentification des services réseau (tâches)

15.  Utilisation de PAM

16.  Utilisation de SASL

17.  Utilisation de Secure Shell (tâches)

18.  Secure Shell (référence)

Partie VI Service Kerberos

19.  Introduction au service Kerberos

20.  Planification du service Kerberos

21.  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 automatique d'un KDC maître

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

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 automatique d'un KDC esclave

Procédure de configuration interactive d'un KDC esclave

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

Procédure d'utilisation du service de sécurité générique avec Kerberos lors de l'exécution FTP

Configuration de serveurs NFS Kerberos

Procédure de configuration des serveurs NFS Kerberos

Procédure de création d'une table d'informations d'identification

Procédure d'ajout d'une entrée unique à la table d'informations d'identification

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

Procédure de 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

Procédure de configuration automatique d'un client Kerberos

Procédure de configuration interactive d'un client Kerberos

Procédure de configuration d'un client Kerberos pour un serveur Active Directory

Procédure de configuration manuelle d'un client Kerberos

Procédure de désactivation de la vérification du ticket d'octroi de tickets

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

Procédure de configuration de la migration automatique des utilisateurs dans un domaine Kerberos

Procédure de configuration du verrouillage de compte

Synchronisation des horloges entre les KDC et les clients Kerberos

Echange d'un KDC maître et d'un KDC esclave

Procédure de 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

Procédure de 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

Procédure de 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

Procédure de propagation manuelle de la base de données Kerberos aux KDC esclaves

Configuration d'une propagation parallèle

Etapes de configuration d'une propagation parallèle

Administration du fichier stash

Procédure de suppression d'un fichier stash

Procédure d'utilisation d'une nouvelle clé principale

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

Procédure d'utilisation d'un fichier dictionnaire pour augmenter la sécurité de mot de passe

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

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

24.  Utilisation des applications Kerberos (tâches)

25.  Service Kerberos (référence)

Partie VII Audit dans Oracle Solaris

26.  Audit (présentation)

27.  Planification de l'audit

28.  Gestion de l'audit (tâches)

29.  Audit (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
Etablissement 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.
Installe automatiquement un client Kerberos d'un serveur Active Directory.
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

Procédure de 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 qu'administrateur ou endossez un rôle ou nom d'utilisateur affecté au profil Kerberos Client Management (gestion de client Kerberos).

    Pour plus d'informations, reportez-vous à la section Procédure d'obtention des droits d'administration.

  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 21-8 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#

Procédure de configuration interactive d'un client Kerberos

Cette procédure utilise l'utilitaire d'installation kclient sans profil d'installation. Dans la version Oracle Solaris 11, l'utilitaire kclient a amélioré la facilité d'utilisation et le travail avec les serveurs Active Directory. Reportez-vous à la section Procédure de configuration d'un client Kerberos pour un serveur Active Directory pour plus d'informations. Reportez-vous à l'Exemple 21-10 pour un exemple d'exécution de kclient sur une version précédente.

  1. Connectez-vous en tant qu'administrateur ou endossez un rôle ou nom d'utilisateur affecté au profil Kerberos Client Management (gestion de client Kerberos).

    Pour plus d'informations, reportez-vous à la section Procédure d'obtention des droits d'administration.

  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 d'hôte KDC esclave

    • Domaines à mettre en correspondance avec le domaine local

    • Noms de service PAM et options à utiliser pour l'authentification Kerberos

    1. Indiquez si le serveur KDC n'exécute pas une version d'Oracle Solaris.

      Si ce système est un client d'un serveur KDC qui n'exécute pas une version d'Oracle Solaris vous devez définir le type de serveur qui exécute le KDC. Les serveurs disponibles sont : Microsoft Active Directory, serveur KDC MIT, serveur KDC Heimdal et serveur KDC Shishi.

    2. Sélectionnez si le DNS doit être utilisé pour les recherches Kerberos.

      Si vous utilisez DNS pour les recherches Kerberos, vous devez saisir l'option de recherche DNS que vous souhaitez utiliser. Les options valides sont dns_lookup_kdc, dns_lookup_realm et dns_fallback. Pour plus d'informations sur ces valeurs, reportez-vous à la page de manuel krb5.conf(4).

    3. Définissez le nom du domaine Kerberos et le nom d'hôte du KDC maître.

      Ces informations sont ajoutées au fichier de configuration /etc/krb5/krb5.conf.

    4. Indiquez si des KDC esclaves existent.

      S'il existe des KDC esclaves dans le domaine, vous devez entrer les noms d'hôte des KDC esclaves. Ces informations sont utilisées pour créer d'autres entrées KDC dans le fichier de configuration du client.

    5. Indiquez si des clés de service ou d'hôte sont requises.

      Normalement, des clés de service ou d'hôte ne sont pas requise, sauf si le système client héberge des services utilisant Kerberos.

    6. Indiquez si le client est membre d'un cluster.

      Si le client est membre d'un cluster, vous devez fournir le nom logique du cluster. Le nom d'hôte logique est utilisé lorsque vous créez les clés de service, ce qui est requis lors de l'hébergement de services Kerberos de clusters.

    7. Identifiez les domaines ou hôtes à mapper avec le domaine actuel.

      Ce mappage permet à d'autres domaines d'appartenir au domaine par défaut du client.

    8. Indiquez si le client utilisera le NFS utilisant Kerberos.

      Les clés de service NFS doivent être créées si le client héberge des services NFS utilisant Kerberos.

    9. Indiquez si le fichier /etc/pam.conf doit être mis à jour.

      Cela vous permet de définir les services PAM utilisant Kerberos pour l'authentification. Vous devez entrer le nom du service et un indicateur indiquant comment l'authentification Kerberos est utilisée. Les options d'indicateur valides sont les suivantes :

      • first : utilise l'authentification Kerberos en premier, puis utilise uniquement UNIX si l'authentification Kerberos échoue

      • only : utilise l'authentification Kerberos uniquement

      • optional : utilise l'authentification Kerberos de manière optionnelle

    10. Indiquez si le fichier maître /etc/krb5/krb5.conf doit être copié.

      Cette option permet d'utiliser des informations de configuration spécifiques lorsque les arguments de kclient ne sont pas suffisants.

Exemple 21-9 Exécution de l'utilitaire d'installation kclient

client# /usr/sbin/kclient

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

Is this a client of a non-Solaris KDC ? [y/n]: n
        No action performed.
Do you want to use DNS for kerveros lookups ? [y/n]: n
        No action performed.
Enter the Kerberos realm: EXAMPLE.COM
Specify the KDC hostname for the above realm: kdc1.example.com

Note, this system and the KDC's time must be within 5 minutes of each other for
Kerberos to function. Both systems should run some form of time synchronization
system like Network Time Protocol (NTP).
Do you have any slave KDC(s) ? [y/n]: y
Enter a comma-separated list of slave KDC host names: kdc2.example.com

Will this client need service keys ? [y/n]: n
        No action performed.
Is this client a member of a cluster that uses a logical host name ? [y/n]: n
        No action performed.
Do you have multiple domains/hosts to map to realm ? [y/n]: y
Enter a comma-separated list of domain/hosts to map to the default realm: engineering.example.com, \ example.com

Setting up /etc/krb5/krb5.conf.

Do you plan on doing Kerberized nfs ? [y/n]: y
Do you want to update /etc/pam.conf ? [y/n]: y
Enter a comma-separated list of PAM service names in the following format:
service:{first|only|optional}: xscreensaver:first
Configuring /etc/pam.conf.

Do you want to copy over the master krb5.conf file ? [y/n]: n
        No action performed.

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

Exemple 21-10 Exécution de l'utilitaire d'installation kclient dans la version Oracle Solaris 10

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 !
#

Procédure de configuration d'un client Kerberos pour un serveur Active Directory

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

  1. Connectez-vous en tant que superutilisateur.
  2. (Facultatif) Activez la création d'enregistrements de ressource DNS pour le client.
    client# sharectl set -p ddns_enable=true smb
  3. Exécutez l'utilitaire kclient.

    L'option -T permet de sélectionner un type de serveur KDC. Dans ce cas, un serveur Active Directory est sélectionné.

    client# kclient -T ms_ad

    Par défaut, vous devez fournir le mot de passe pour le principal d'administration.

Exemple 21-11 Configuration d'un client Kerberos pour un serveur Active Directory à l'aide de kclient

La sortie suivante indique les résultats de l'exécution de la commande kclient à l'aide de l'argument de type de serveur ms_ad (Microsoft Active Directory). Le client sera joint au domaine Active Directory appelé EXAMPLE.COM.

client# /usr/sbin/kclient -T ms_ad

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

Attempting to join 'CLIENT' to the 'EXAMPLE.COM' domain.
Password for Administrator@EXAMPLE.COM: <Type the password>
Forest name found: example.com
Looking for local KDCs, DCs and global catalog servers (SVR RRs).

Setting up /etc/krb5/krb5.conf

Creating the machine account in AD via LDAP.
---------------------------------------------------
Setup COMPLETE.
#

Procédure de 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. Editez 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://download.oracle.com/docs/cd/E23824_01/html/821-1456/aadmin-23.html

    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.

    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.

    Par défaut, le mappage de 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 de domain_realm dans le 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 Procédure de 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 service de noms.

      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 service svc:/network/dns/client:default n'est pas activé, activez-le. Pour plus d'informations, reportez-vous à la page de manuel resolv.conf(4).

    3. Redémarrez le service gssd.
      # 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 21-12 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 21-13 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 21-14 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

Procédure de désactivation de la vérification du ticket d'octroi de tickets

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 ticket d'octroi de tickets. 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.


Procédure d'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.

Procédure de 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 gdm 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. Connectez-vous en tant que superutilisateur.
  2. 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
  3. Apportez des modifications au fichier de configuration PAM.
    1. Ajoutez des entrées pour le service gdm.
      # cat /etc/pam.conf
       .
       .
      # # gdm service # gdm auth requisite pam_authtok_get.so.1 gdm auth required pam_dhkeys.so.1 gdm auth required pam_unix_cred.so.1 gdm auth sufficient pam_krb5.so.1 gdm auth requisite pam_unix_auth.so.1 gdm 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
       .
       .
      gdm 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
  4. 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 *
  5. 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
  6. 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

Procédure de configuration du verrouillage de compte

Exemple 21-15 Déverrouillage d'un principal verrouillé

Dans l'exemple suivant, un principal d'utilisateur est déverrouillé :

# kadmin
kadmin: add_policy -unlock principal