ktpass
Configure le nom du principal du serveur de l’hôte ou du service dans Active Directory Domain Services (AD DS) et génère un fichier .keytab qui contient la clé secrète partagée du service. Ce fichier .keytab est basé sur l’implémentation par le MIT (Massachusetts Institute of Technology) du protocole d’authentification Kerberos. L’outil en ligne de commande ktpass permet aux services non-Windows qui prennent en charge l’authentification Kerberos d’utiliser les fonctionnalités d’interopérabilité fournies par le service Centre de distribution de clés (KDC).
Syntaxe
ktpass
[/out <filename>]
[/princ <principalname>]
[/mapuser <useraccount>]
[/mapop {add|set}] [{-|+}desonly] [/in <filename>]
[/pass {password|*|{-|+}rndpass}]
[/minpass]
[/maxpass]
[/crypto {DES-CBC-CRC|DES-CBC-MD5|RC4-HMAC-NT|AES256-SHA1|AES128-SHA1|All}]
[/itercount]
[/ptype {KRB5_NT_PRINCIPAL|KRB5_NT_SRV_INST|KRB5_NT_SRV_HST}]
[/kvno <keyversionnum>]
[/answer {-|+}]
[/target]
[/rawsalt] [{-|+}dumpsalt] [{-|+}setupn] [{-|+}setpass <password>] [/?|/h|/help]
Paramètres
Paramètre | Description |
---|---|
/out <filename> |
Spécifie le nom du fichier .keytab version 5 Kerberos à générer. Remarque : Il s’agit du fichier .keytab que vous transférez vers un ordinateur qui n’exécute pas le système d’exploitation Windows, puis que vous remplacez ou fusionnez avec votre fichier .keytab existant, /Etc/Krb5.keytab. |
/princ <principalname> |
Spécifie le nom principal dans l’hôte de formulaire/computer.contoso.com@CONTOSO.COM. Avertissement : Ce paramètre respecte la casse. |
/mapuser <useraccount> |
Mappe le nom du principal Kerberos, qui est spécifié par le paramètre princ, au compte de domaine spécifié. |
/mapop {add|set} |
Spécifie la façon dont l’attribut de mappage est défini.
|
{-|+} desonly |
Le chiffrement DES uniquement est défini par défaut.
|
/in <filename> |
Spécifie le fichier .keytab à lire à partir d’un ordinateur hôte qui n’exécute pas le système d’exploitation Windows. |
/pass {password|*|{-|+}rndpass} |
Spécifie un mot de passe pour le nom d’utilisateur principal spécifié par le paramètre princ. Utilisez * pour demander un mot de passe. |
/minpass | Définit la longueur minimale du mot de passe aléatoire à 15 caractères. |
/maxpass | Définit la longueur maximale du mot de passe aléatoire à 256 caractères. |
/crypto {DES-CBC-CRC|DES-CBC-MD5|RC4-HMAC-NT|AES256-SHA1|AES128-SHA1|All} |
Spécifie les clés générées dans le fichier keytab :
Remarque : Étant donné que les paramètres par défaut sont basés sur des versions antérieures de MIT, vous devez toujours utiliser le paramètre |
/itercount | Spécifie le nombre d’itérations utilisé pour le chiffrement AES. La valeur par défaut ignore itercount pour le chiffrement non-AES et définit le chiffrement AES sur 4 096. |
/ptype {KRB5_NT_PRINCIPAL|KRB5_NT_SRV_INST|KRB5_NT_SRV_HST} |
Spécifie le type principal.
|
/kvno <keyversionnum> |
Spécifie le numéro de version de la clé. La valeur par défaut est 1. |
/answer {-|+} |
Définit le mode de réponse en arrière-plan :
|
/target | Définit le contrôleur de domaine à utiliser. La valeur par défaut est que le contrôleur de domaine soit détecté, en fonction du nom du principal. Si le nom du contrôleur de domaine ne se résout pas, une boîte de dialogue vous invite à entrer un contrôleur de domaine valide. |
/rawsalt | Force ktpass à utiliser l’algorithme rawsalt lors de la génération de la clé. Ce paramètre est facultatif. |
{-|+}dumpsalt |
La sortie de ce paramètre montre l’algorithme de salage MIT utilisé pour générer la clé. |
{-|+}setupn |
Définit le nom d’utilisateur principal (UPN) en plus du nom de principal du service (SPN). La valeur par défaut consiste à définir les deux dans le fichier .keytab. |
{-|+}setpass <password> |
Définit le mot de passe de l’utilisateur lorsqu’il est fourni. Si rndpass est utilisé, un mot de passe aléatoire est généré à la place. |
/? | Affiche l’aide pour cette commande. |
Notes
Les services exécutés sur des systèmes qui n’exécutent pas le système d’exploitation Windows peuvent être configurés avec des comptes d’instance de service dans AD DS. Cela permet à n’importe quel client Kerberos de s’authentifier auprès de services qui n’exécutent pas le système d’exploitation Windows à l’aide du KDC Windows.
Le paramètre /princ n’est pas évalué par ktpass et est utilisé comme indiqué. Il n’existe aucune vérification pour voir si le paramètre correspond à la casse exacte de la valeur de l’attribut userPrincipalName lors de la génération du fichier Keytab. Les distributions Kerberos respectant la casse qui utilisent ce fichier Keytab peuvent avoir des problèmes s’il n’existe aucune correspondance exacte avec la casse, et peuvent même échouer pendant la pré-authentification. Pour vérifier et récupérer la valeur d’attribut userPrincipalName correcte à partir d’un fichier d’exportation LDifDE. Par exemple :
ldifde /f keytab_user.ldf /d CN=Keytab User,OU=UserAccounts,DC=contoso,DC=corp,DC=microsoft,DC=com /p base /l samaccountname,userprincipalname
Exemples
Pour créer un fichier Kerberos .keytab pour un ordinateur hôte qui n’exécute pas le système d’exploitation Windows, vous devez mapper le principal au compte et définir le mot de passe du principal hôte.
Utilisez le composant logiciel enfichable Utilisateur et ordinateurs Active Directory pour créer un compte d’utilisateur pour un service sur un ordinateur qui n’exécute pas le système d’exploitation Windows. Par exemple, créez un compte avec le nom User1.
Utilisez la commande ktpass pour configurer un mappage d’identité pour le compte d’utilisateur en tapant :
ktpass /princ host/User1.contoso.com@CONTOSO.COM /mapuser User1 /pass MyPas$w0rd /out machine.keytab /crypto all /ptype KRB5_NT_PRINCIPAL /mapop set
Notes
Vous ne pouvez pas mapper plusieurs instances de service au même compte d’utilisateur.
Fusionnez le fichier .keytab avec le fichier /Etc/Krb5.keytab sur un ordinateur hôte qui n’exécute pas le système d’exploitation Windows.