ktpass
Configura el nombre de la entidad de seguridad del servidor para el host o servicio en los Active Directory Domain Services (AD DS) y genera un archivo .keytab que contiene la clave secreta compartida del servicio. El archivo .keytab se basa en la implementación del Instituto Tecnológico de Massachusetts (MIT) del protocolo de autenticación Kerberos. La herramienta de línea de comandos Ktpass permite a los servicios no Windows que admiten la autenticación Kerberos usar las características de interoperabilidad proporcionadas por el servicio Centro de distribución de claves (KDC) de Kerberos.
Sintaxis
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]
Parámetros
Parámetro | Descripción |
---|---|
/out <filename> |
Especifica el nombre del archivo .keytab de la versión 5 de Kerberos que se va a generar. Nota: Este es el archivo .keytab que se transfiere a un equipo que no ejecuta el sistema operativo Windows y, a continuación, se reemplaza o combina con el archivo .keytab existente, /Etc/Krb5.keytab. |
/princ <principalname> |
Especifica el nombre principal en el formulario host/computer.contoso.com@CONTOSO.COM. Advertencia: Este parámetro distingue mayúsculas de minúsculas. |
/mapuser <useraccount> |
Asigna el nombre de la entidad de seguridad Kerberos, especificada por el parámetro princ, a la cuenta de dominio especificada. |
/mapop {add|set} |
Especifica cómo se establece el atributo de asignación.
|
{-|+} desonly |
El cifrado de solo DES se establece de forma predeterminada.
|
/in <filename> |
Especifica el archivo .keytab que se va a leer desde un equipo host que no ejecuta el sistema operativo Windows. |
/pass {password|*|{-|+}rndpass} |
Especifica una contraseña para el nombre de usuario principal especificado por el parámetro princ. Use * para solicitar una contraseña. |
/minpass | Establece la longitud mínima de la contraseña aleatoria en 15 caracteres. |
/maxpass | Establece la longitud máxima de la contraseña aleatoria en 256 caracteres. |
/crypto {DES-CBC-CRC|DES-CBC-MD5|RC4-HMAC-NT|AES256-SHA1|AES128-SHA1|All} |
Especifica las claves que se generan en el archivo keytab:
Nota: Dado que la configuración predeterminada se basa en versiones anteriores de MIT, siempre debe usar el parámetro |
/itercount | Especifica el recuento de iteraciones que se usa para el cifrado AES. El valor predeterminado omite itercount para el cifrado que no es AES y establece el cifrado AES en 4096. |
/ptype {KRB5_NT_PRINCIPAL|KRB5_NT_SRV_INST|KRB5_NT_SRV_HST} |
Especifica los tipos principales.
|
/kvno <keyversionnum> |
Especifica el número de versión de la clave. El valor predeterminado es 1. |
/answer {-|+} |
Establece el modo de respuesta en segundo plano:
|
/target | Establece qué controlador de dominio se va a usar. El valor predeterminado es para que se detecte el controlador de dominio, en función del nombre principal. Si el nombre del controlador de dominio no se resuelve, un cuadro de diálogo solicitará un controlador de dominio válido. |
/rawsalt | obliga a ktpass a usar el algoritmo rawsalt al generar la clave. Este parámetro es opcional. |
{-|+}dumpsalt |
La salida de este parámetro muestra el algoritmo de sal mit que se usa para generar la clave. |
{-|+}setupn |
Establece el nombre principal de usuario (UPN) además del nombre de entidad de seguridad de servicio (SPN). El valor predeterminado es establecer ambos en el archivo .keytab. |
{-|+}setpass <password> |
Establece la contraseña del usuario cuando se proporciona. Si se usa rndpass, se genera una contraseña aleatoria en su lugar. |
/? | Muestra ayuda para este comando. |
Comentarios
Los servicios que se ejecutan en sistemas que no ejecutan el sistema operativo Windows se pueden configurar con cuentas de instancia de servicio en AD DS. Esto permite que cualquier cliente Kerberos se autentique en servicios que no ejecutan el sistema operativo Windows mediante el KDC de Windows.
El parámetro /princ no se evalúa mediante ktpass y se usa como se proporciona. No hay ninguna comprobación para ver si el parámetro coincide con el caso exacto del valor del atributo userPrincipalName al generar el archivo Keytab. Las distribuciones Kerbero que distinguen mayúsculas de minúsculas que usan este archivo Keytab pueden tener problemas si no hay ninguna coincidencia exacta de mayúsculas y minúsculas e incluso podría producir un error durante la autenticación previa. Para comprobar y recuperar el valor de atributo userPrincipalName correcto de un archivo de exportación LDifDE. Por ejemplo:
ldifde /f keytab_user.ldf /d CN=Keytab User,OU=UserAccounts,DC=contoso,DC=corp,DC=microsoft,DC=com /p base /l samaccountname,userprincipalname
Ejemplos
Para crear un archivo .keytab de Kerberos para un equipo host que no ejecuta el sistema operativo Windows, debe asignar la entidad de seguridad a la cuenta y establecer la contraseña de la entidad de seguridad de host.
Use el complemento Usuario y equipos de Active Directory para crear una cuenta de usuario para un servicio en un equipo que no ejecute el sistema operativo Windows. Por ejemplo, cree una cuenta con el nombre User1.
Use el comando ktpass para configurar una asignación de identidad para la cuenta de usuario escribiendo:
ktpass /princ host/User1.contoso.com@CONTOSO.COM /mapuser User1 /pass MyPas$w0rd /out machine.keytab /crypto all /ptype KRB5_NT_PRINCIPAL /mapop set
Nota
No se pueden asignar varias instancias de servicio a la misma cuenta de usuario.
Combine el archivo .keytab con el archivo /Etc/Krb5.keytab en un equipo host que no ejecute el sistema operativo Windows.