Création d'un fichier de configuration Kerberos

Le fichier de configuration Kerberos contient des informations de configuration client, dont les emplacements des centres KDC (Key Distribution Center) des domaines concernés, les valeurs par défaut du super domaine Kerberos en cours et les mappages des noms d'hôte sur les domaines Kerberos. Utilisez l'utilitaire wsadmin pour créer un fichier de configuration Kerberos pour WebSphere Application Server.

Pourquoi et quand exécuter cette tâche

Remarque : Vous ne pouvez pas utiliser la commande createkrbConfigFile wsadmin si vous ne disposez pas d'un fichier de clés Kerberos (krb5.keytab).

Les paramètres de configuration Kerberos, le nom du centre de répartition des clés Kerberos (KDC) et les paramètres de super domaine de l'authentification Web SPNEGO (Simple and Protected GSS-API Negotiation Mechanism) et de l'authentification Kerberos sont fournis dans le fichier de configuration Kerberos ou via les propriétés système de la machine virtuelle Java™, java.security.krb5.kdc et java.security.krb5.realm.

Si vous ne disposez pas encore d'un fichier de configuration Kerberos (krb5.ini ou krb5.conf), il vous faut d'abord en créer un et le placer dans chaque instance d'une cellule, à l'aide de la commande wsadmin. Vous trouverez ci-dessous les fichiers de configuration Kerberos par défaut, ainsi que leurs emplacements :
  • [Windows]Le répertoire par défaut est c:\winnt\krb5.ini.
    Remarque : si le fichier krb5.ini ne se trouve pas dans le répertoire c:\winnt, recherchez-le dans c:\windows.
  • [Linux]Le répertoire par défaut est /etc/krb5.conf.
  • [AIX][HP-UX][IBM i][Solaris][z/OS]Sur les autres plateformes Unix, l'emplacement par défaut est /etc/krb5/krb5.conf.

Procédure

  1. Lancez l'utilitaire de ligne de commande en exécutant la commande wsadmin à partir du répertoire racine_serveur_app/bin.
  2. A l'invite de wsadmin, entrez la commande suivante :
    $AdminTask help createKrbConfigFile 
  3. Entrez les paramètres de la commande createKrbConfigFile.
    Tableau 1. Paramètres de la commande createKrbConfigFile.

    Le tableau ci-dessous répertorie les paramètres de la commande createKrbConfigFile :

    Option Description
    <krbPath> Obligatoire. Fournit le chemin qualifié complet du fichier de configuration Kerberos (krb5.ini ou krb5.conf).
    <realm> Obligatoire. Fournit le nom de super domaine Kerberos. La valeur de cet attribut est utilisée par SPNEGO pour former le nom de principal de service Kerberos de chacun des hôtes spécifiés avec la propriété com.ibm.ws.security.spnego.SPN<id>.hostName.
    <kdcHost> Obligatoire. Fournit le nom d'hôte du Centre de distribution des clés Kerberos(KDC).
    <kdcPort> Facultatif. Fournit le numéro de port du centre de distribution de clés Kerberos. Si ce port est omis, la valeur par défaut est 88.
    <dns> Obligatoire. Liste des services de nom de domaine (DNS) par défaut, séparés par une barre verticale, utilisée pour créer un nom de système hôte qualifié complet. Le premier nom de la liste correspond au service de nom de domaine par défaut.
    <keytabPath> Obligatoire. Fournit l'emplacement, dans le système de fichiers, du nom et du chemin du fichier de clés Kerberos.
    <encryption> Facultatif. Identifie la liste des types de chiffrement pris en charge, délimités par une barre verticale. La valeur par défaut est des-cbc-md5.
  4. Indiquez le type de chiffrement.
    Les types de chiffrement suivants sont pris en charge :
    • des-cbc-md5
    • des-cbc-crc
    • des3-cbc-sha1
    • rc4-hmac
    • arcfour-hmac
    • arcfour-hmac-md5
    • aes128-cts-hmac-sha1-96
    • aes256-cts-hmac-sha1-96
    Avertissement : Toutes les solutions de centre de distribution de clés disponibles ne prennent pas en charge tous les types de chiffrement répertoriés précédemment. Avant de choisir un type de chiffrement, assurez-vous que le centre de distribution de clés prend en charge le type de chiffrement que vous voulez utiliser en consultant le guide Kerberos Administrator's and User's Guide.

    Assurez-vous que vous disposez d'un type de chiffrement commun pour le fichier de configuration Kerberos, le fichier de clés Kerberos, le nom de principal de service Kerberos et le client Kerberos. Par exemple, si le client Kerberos utilise le type de chiffrement RC4-HMAC, le serveur cible doit également prendre en charge le type de chiffrement, RC4-HMAC et le fichier de configuration Kerberos doit d'abord contenir RC4-HMAC dans default_tgt_enctypes et dans default_tkt_enctypes.

  5. Spécifiez le type d'emplacement krbPath et krbKeytab.
    Le code ci-dessous illustre la commande createKrbConfigFile :
    $AdminTask createKrbConfigFile {-krbPath c:/winnt/krb5.ini 
                                    -realm WSSEC.AUSTIN.IBM.COM 
                                    -kdcHost host1.austin.ibm.com 
                                    -dns austin.ibm.com|raleigh.ibm.com 
                                    -keytabPath c:/winnt/krb5.keytab}
    Remarque : Les variables WebSphere peuvent également être utilisées pour indiquer les chemins d'emplacement krbPath et krbKeytab pour la commande createKrbConfigFile.
    Utilisez l'exemple qui suit pour créer le fichier c:/winnt/krb5.ini :
    [libdefaults]
    	default_realm = WSSEC.AUSTIN.IBM.COM
    	default_keytab_name = FILE:c:\winnt\krb5.keytab
    	default_tkt_enctypes = rc4-hmac des-cbc-md5
    	default_tgs_enctypes = rc4-hmac des-cbc-md5
    	forwardable  = true
    	renewable  = true
    	noaddresses = true
    	clockskew  = 300
    [realms]
    	WSSEC.AUSTIN.IBM.COM = {
    		kdc = host1.austin.ibm.com:88
    		default_domain = austin.ibm.com
    	}
    [domain_realm]
    	.austin.ibm.com = WSSEC.AUSTIN.IBM.COM
    	.raleigh.ibm.com = WSSEC.AUSTIN.IBM.COM

    La commande createKrbConfigFile crée un fichier de configuration Kerberos simple. Vous pouvez éditer ce fichier pour définir une préférence TCP ou UDP, ou lorsque vous disposez d'un environnement à domaines sécurisés ou à domaines multiples.

    Une préférence TCP ou UDP peut être indiquée dans la section [libdefaults]. Par défaut, la configuration Java Kerberos utilise le protocole UDP. Cependant, Java Kerberos prend en charge la configuration d'un protocole TCP ou UDP par le paramètre udp_preference_limit. Si vous devez utiliser le protocole TCP, affectez la valeur 1 au paramètre udp_preference_limit, ce qui force l'utilisation systématique de ce protocole. Exemple :
    udp_preference_limit =1
    Si ce paramètre n'est pas défini, la bibliothèque Java Kerberos n'utilise le protocole TCP que si la demande de ticket Kerberos avec le protocole UDP échoue et le centre de distribution de clés renvoie le code d'erreur KRB_ERR_RESPONSE_TOO_BIG.
    Eviter les incidents Eviter les incidents: A la réception d'une demande client par le serveur d'applications, la configuration Kerberos sur le serveur peut renvoyer une exception Connection reset, IOException, ou Broken pipe si le protocole TCP est utilisé et le centre de distribution de clés renvoie un mauvais paquet. Le serveur d'applications peut alors tenter de capturer le bon paquet Kerberos. Si le bon paquet Kerberos est renvoyé dans le cadre de l'une des trois tentatives, le traitement de la demande client aboutit et vous pouvez ignorer les exceptions. Si le serveur d'applications n'arrive pas à obtenir le bon paquet au bout de trois tentatives, la demande client échoue. Dans ce cas, vérifiez la configuration du centre de distribution de clés, du réseau et du serveur d'applications pour identifier le problème.gotcha
  6. Renseignez la section [domain_realm] du fichier de configuration Kerberos si vous disposez d'un environnement à super domaines multiples
    • [domain_realm] : Traduit un nom de domaine ou un nom d'hôte en nom de super domaine. Le nom de la balise peut être un nom d'hôte ou un nom de domaine. Les noms de domaine sont indiqués par un point ('.') en préfixe. La valeur de la relation est le nom de super domaine de cet hôte ou domaine particulier. Les noms d'hôte et de domaine doivent être en minuscules.
      Si aucune entrée de traduction ne s'applique, le super domaine hôte est considéré comme étant la portion de domaine du nom d'hôte convertie en majuscules. Par exemple, la section [domain_realm] suivante mappe tech.ibm.com au super domaine TEST.AUSTIN.IBM.COM :
      [domain_realm]
      	.austin.ibm.com = WSSEC.AUSTIN.IBM.COM
      	.raleigh.ibm.com = WSSEC.AUSTIN.IBM.COM

      Tous les autres hôtes dans les domaines austin.ibm.com et .raleigh.ibm.com sont mappés par défaut vers WSSEC.AUSTIN.IBM.COM.

      L'exemple suivant contient plusieurs noms de super domaine Kerberos :
      [domain_realm]
             .ibm.com =AUSTIN.IBM.COM
             ibm.com =AUSTIN.IBM.COM
             tech.ibm.com =TEST.AUSTIN.IBM.COM
             .fubar.org =FUBAR.ORG

      Tous les autres hôtes dans le domaine ibm.com sont mappés par défaut vers le super domaine AUSTIN.IBM.COM, et tous les hôtes dans le domaine fubar.org sont mappés par défaut vers le super domaine FUBAR.ORG.

    Notez les entrées des hôtes, ibm.com et fubar.org. Sans ces entrées, ces hôtes seraient mappés respectivement vers les super domaines COM et ORG.

    Pour l'authentification inter-super domaines d'égal à égal trust, consultez le guide Kerberos Administrator's and User's Guide, qui fournit plus d'informations sur la configuration de l'authentification inter-super domaines de confiance sur le centre de distribution de clés.

  7. Ajoutez des informations sur le super domaine étranger aux super domaines et aux sections domain_realm du fichier de configuration Kerberos :
    [realms]
           AUSTIN.IBM.COM = {
                 kdc = kdc.austin.ibm.com:88
                 default_domain = austin.ibm.com
           }
           FUBAR.ORG = {
                 kdc = kdc.fubar.org:88
                 default_domain = fubar.org
           }
    [domain_realm]
           austin.ibm.com = AUSTIN.IBM.COM
           .austin.ibm.com = AUSTIN.IBM.COM
           fubar.org = FUBAR.ORG
           .fubar.org = FUBAR.ORG

    Dans Transitive Trust, deux super domaines se font mutuellement confiance s'ils font confiance aux super domaines intermédiaires concernés par l'attribution d'un ticket. Si chaque super domaine concerné par l'attribution du ticket de service est présent dans le chemin sécurisé, c'est que le ticket est sécurisé. Consultez le guide Kerberos Administrator's and User's Guide pour plus d'informations sur la configuration de Transitive Trust sur le centre de distribution de clés.

    Pour la configuration Transitive Trust, les super domaines distincts avec une authentification inter-super domaines doivent être définis entre A et B ainsi qu'entre B et C, mais pas entre A et C. Avec Transitive Trust, REALMA et REALMC peuvent communiquer l'un avec l'autre, mais uniquement en passant par REALMB.
    REALMA	<->	REALMB	<->	REALMC
  8. Ajoutez des données aux sections. Ajoutez une section [capaths] à tous les fichiers krb5.conf.
    Les fichiers krb5.conf sur toutes les machines doivent répertorier les trois domaines dans la strophe [realms]. REALMA doit se répertorier ainsi que REALMB et REALMC ; REALMB doit se répertorier ainsi que REALMA et REALMC ; REALMC doit se répertorier ainsi que REALMA et REALMB. Dans la strophe [domain_realm] des fichiers krb5.conf , répertoriez les trois noms d'hôte et de domaine afin de pouvoir effectuer l'exécution à partir de REALMA sur REALMC et de REALMC sur REALMA.
    [capaths]
           REALMA.AUSTIN.IBM.COM = {
           		REALMB.AUSTIN.IBM.COM = .
           		REALMC.AUSTIN.IBM.COM = REALMB.AUSTIN.IBM.COM
                }
           REALMB.AUSTIN.IBM.COM = {
           		REALMC.AUSTIN.IBM.COM = .
           		REALMA.AUSTIN.IBM.COM = .
                }
           REALMC.AUSTIN.IBM.COM = {
           		REALMB.AUSTIN.IBM.COM = .
           		REALMA.AUSTIN.IBM.COM = REALMB.AUSTIN.IBM.COM
                }
  9. Définissez l'autorisation d'accès au fichier krb5.conf à 644.

    Vous avez ainsi accès en lecture et en écriture sur ce fichier. En revanche, les membres du groupe auquel appartient le fichier et les autres utilisateurs pourront uniquement le lire.

    Comme le fichier de clés et le fichier de configuration Kerberos dont définis par les propriétés du système JVM, respectivement java.security.krb5.conf et KRB5_KTNAME, si l'authentification Web SPNEGO et l'authentification Kerberos sont activées, vous devez utiliser le même fichier de clés et le même fichier de configuration Kerberos pour les deux propriétés.

Résultats

Vous venez de créer un fichier de configuration Kerberos.

Icône indiquant le type de rubrique Rubrique de tâche



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_kerb_create_conf
Nom du fichier : tsec_kerb_create_conf.html