Découvrez comment configurer Kerberos à l'aide des fichiers krb5.conf et kdc.conf, gérer les principaux et les fichiers keytab côté serveur avec l'interface CLI kadmin, et administrer le cycle de vie des tickets côté client.
Prérequis
Vous avez créé un cluster avec l'authentification Kerberos activée. Pour plus de détails, consultez la rubrique Créer un cluster.
Vous vous êtes connecté au cluster. Pour plus de détails, consultez la rubrique Se connecter à un cluster.
Fichiers de configuration
-
krb5.conf: fichier de configuration Kerberos côté client.Il spécifie l'emplacement du service KDC, les noms de royaume (realm) et les mappages entre noms d'hôte et royaumes. Ce fichier se trouve dans le répertoire
/etc/krb5.confsur chaque nœud E-MapReduce. -
kdc.conf: fichier de configuration Kerberos côté serveur, qui complète le fichierkrb5.conf.Il configure les services liés au KDC, tels que
krb5kdc,kadmindetkdb5_util, et réside uniquement sur le nœud KDC, dans le répertoire/var/kerberos/krb5kdc/kdc.conf.
Ne modifiez pas directement les fichiers de configuration krb5.conf et kdc.conf sur les nœuds. Vous devez effectuer les modifications dans l'onglet Configure du service Kerberos dans la console E-MapReduce. Notez que vous ne pouvez modifier qu'un sous-ensemble de champs.
Opérations de base
Côté serveur
-
Accéder à l'interface CLI kadmin
-
Si vous êtes connecté au nœud
master-1-1(qui héberge le KDC, le programme serveur Kerberos) en tant qu'utilisateurroot, exécutez la commande suivante pour accéder directement à l'interface CLI kadmin.kadmin.local -
Si vous êtes connecté à un autre nœud ou si vous utilisez une passerelle, exécutez la commande suivante pour accéder à l'interface CLI kadmin.
kadmin -p <admin-user> -w <admin-password>RemarqueSi vous utilisez le KDC fourni avec E-MapReduce, les paramètres sont les suivants :
<admin-user>: la valeur estroot/admin.<admin-password>: vous pouvez obtenir la valeur du paramètre admin_pwd dans l'onglet Configure du service Kerberos dans la console E-MapReduce.
-
-
Gérer les principaux
Un principal est une identité unique dans Kerberos qui représente un utilisateur ou un service et à laquelle des informations d'identification peuvent être attribuées.
-
Créer un principal
addprinc -pw <principal-password> <principal-name>Paramètres :
<principal-password>: mot de passe du nouveau principal.<principal-name>: nom du nouveau principal. Le format typique d'un principal de service estusername/hostname@realmet le format d'un principal utilisateur estusername@realm.
-
Supprimer un principal
delprinc <principal-name> -
Modifier le mot de passe d'un principal
change_password <principal-name> -
Lister tous les principaux
listprincs
-
-
Gérer les fichiers keytab
Un fichier keytab stocke les clés d'un ou plusieurs principaux, permettant aux services d'obtenir des tickets sans authentification interactive. Pour exporter un fichier keytab, exécutez la commande suivante.
ktadd -k <keytab-path> <principal-name>Paramètres :
<keytab-path>: chemin de destination du fichier keytab.<principal-name>: nom du principal.
AvertissementDans E-MapReduce, chaque service maintient son propre principal (par exemple,
spark/hostname@realm) et un fichier keytab correspondant pour l'authentification et l'autorisation internes. La modification ou l'exportation du fichier keytab d'un tel principal invalide le fichier keytab d'origine, ce qui perturbe le fonctionnement des services. Par conséquent, ne modifiez pas ce type de principal et n'exportez pas son fichier keytab.
Côté client
Un ticket contient des informations d'identification chiffrées qui prouvent l'identité d'un utilisateur auprès des services compatibles Kerberos. Utilisez les commandes suivantes pour gérer les tickets.
-
Obtenir un ticket
kinit -kt <keytab-path> <principal-name> -
Afficher les tickets
klist -
Détruire les tickets
kdestroy
Rubriques connexes
Pour obtenir une vue d'ensemble des concepts Kerberos et des principes d'authentification, consultez la rubrique Kerberos.