Crear un archivo keytab

Puede utilizar la misma cuenta de usuario para la autenticación en todos los nodos de un clúster. Para hacerlo, tiene que crear un archivo keytab que contenga el nombre de entidad de servicio (SPN) por cada uno de estos nodos. Al crear un archivo de tabla de claves, debe usar el atributo para generar un salt (modificador de función hash).

El salt generado debe guardarse mediante un método de su elección para añadir más adelante nuevos SPN al archivo de tabla de claves.

También puede crear una cuenta de usuario independiente en Active Directory para cada nodo del clúster en el que desee configurar la autenticación Kerberos.

Antes de crear un archivo keytab:

Antes de crear un archivo de tabla de claves, asegúrese de que ninguno de los SPN esté registrado en Active Directory. Puede hacerlo ejecutando el siguiente comando: setspn -Q <SPN> , donde <SPN> tiene la siguiente estructura: HTTP/<fully qualified domain name (FQDN) del nodo del clúster>.

El comando debe devolver "No se ha encontrado ningún SPN", lo que significa que el SPN en cuestión no está registrado. Si el SPN ya se ha registrado, antes de crear el archivo de tabla de claves, debe anular la asignación del SPN de la cuenta o eliminar en Active Directory la cuenta que tiene asignada este SPN.

Ejemplo de verificación de un SPN para un Nodo de control y dos Nodos secundarios:

setspn -Q HTTP/control-01.test.local

setspn -Q HTTP/secondary-01.test.local

setspn -Q HTTP/secondary-02.test.local

Crear un archivo keytab

El archivo keytab se crea en el servidor del controlador del dominio o en un ordenador Windows Server que es parte del dominio, con una cuenta del administrador del dominio.

Para crear un archivo keytab con una sola cuenta de usuario:

  1. En el complemento Active Directory Users and Computers , cree una cuenta de usuario llamada, por ejemplo, control-user.
  2. Para utilizar el algoritmo de cifrado AES256-SHA1, haga lo siguiente en el complemento Active Directory Users and Computers:
    1. Abra las propiedades de la cuenta creada.
    2. En la pestaña Cuenta, seleccione la casilla de verificación Esta cuenta admite el cifrado AES de 256 bits de Kerberos.
  3. Cree un archivo de tabla de claves para control-usuario usando la utilidad ktpass. Para hacerlo, ejecute el siguiente comando en la línea de comandos:

    C:\Windows\system32\ktpass.exe -princ HTTP/<nombre de dominio completo (FQDN) del nodo de Control>@<nombre de dominio de Active Directory en mayúsculas> -mapuser control-user@<nombre de dominio de Active Directory en mayúsculas> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * +dumpsalt -out <nombre de archivo>.keytab

    La utilidad le solicitará la contraseña control-user al ejecutar el comando.

    El SPN del nodo con rol Control se añadirá al archivo keytab creado. Se muestra el solt generado: Hashing password with salt "<hash value>".

  4. Por cada nodo del clúster, añada una entrada SPN al archivo keytab. Para hacerlo, ejecute el comando siguiente:

    C:\Windows\system32\ktpass.exe -princ HTTP/<nombre de dominio completo (FQDN) del nodo>@<nombre de dominio kerberos de Active Directory en mayúsculas> -mapuser control-user@<nombre de dominio kerberos de Active Directory en mayúsculas> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in <ruta y nombre del archivo creado anteriormente>.keytab -out <ruta y nombre nuevo>.keytab -setupn -setpass -rawsalt "<valor hash del solt obtenido al crear el archivo keytab en el paso 3>"

    La utilidad le solicitará la contraseña control-user al ejecutar el comando.

Se creará el archivo keytab. El archivo contendrá los SPN de los nodos de clúster.

Ejemplo:

Por ejemplo, necesita crear un archivo keytab que contenga SPN de 3 nodos: control-01.test.local , secondary-01.test.local y secondary-02.test.local.

Para crear un archivo llamado filename1.keytab que contenga el SPN del nodo de control en la carpeta C:\keytabs\, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/control-01.test.local@TEST.LOCAL -mapuser control-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * +dumpsalt -out C:\keytabs\filename1.keytab

Suponga que tiene el salt "TEST.LOCALHTTPcontrol-01.test.local".

Para añadir un SPN más, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-01.test.local@TEST.LOCAL -mapuser control-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename1.keytab -out C:\keytabs\filename2.keytab -setupn -setpass -rawsalt "TEST.LOCALHTTPcontrol-01.test.local"

Para añadir un tercer SPN, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-02.test.local@TEST.LOCAL -mapuser control-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename2.keytab -out C:\keytabs\filename3.keytab -setupn -setpass -rawsalt "TEST.LOCALHTTPcontrol-01.test.local"

Como resultado, se creará un archivo llamado filename3.keytab con los tres SPN añadidos.

Para crear un archivo keytab usando una cuenta de usuario independiente para cada nodo, realice lo siguiente:

  1. En el complemento Active Directory Users and Computers , cree una cuenta de usuario independiente para cada nodo del clúster (por ejemplo, cuentas de usuario con los nombres control-user, secondary1-user, secondary2-user , etc.).
  2. Para utilizar el algoritmo de cifrado AES256-SHA1, haga lo siguiente en el complemento Active Directory Users and Computers:
    1. Abra las propiedades de la cuenta creada.
    2. En la pestaña Cuenta, seleccione la casilla de verificación Esta cuenta admite el cifrado AES de 256 bits de Kerberos.
  3. Cree un archivo de tabla de claves para control-usuario usando la utilidad ktpass. Para hacerlo, ejecute el siguiente comando en la línea de comandos:

    C:\Windows\system32\ktpass.exe -princ HTTP/<nombre de dominio completo (FQDN) del nodo de Control>@<nombre de dominio de Active Directory en mayúsculas> -mapuser control-user@<nombre de dominio de Active Directory en mayúsculas> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -out <nombre de archivo>.keytab

    La utilidad le solicitará la contraseña control-user al ejecutar el comando.

    El SPN del Nodo de control se añade al archivo keytab creado.

  4. Por cada nodo de clúster, añada una entrada SPN al archivo keytab. Para hacerlo, ejecute el comando siguiente:

    C:\Windows\system32\ktpass.exe -princ HTTP/<nombre de dominio completo (FQDN) del nodo>@<nombre de dominio kerberos de Active Directory en mayúsculas> -mapuser secondary1-user@<nombre de dominio kerberos de Active Directory en mayúsculas> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in <ruta y nombre del archivo creado anteriormente>.keytab -out <ruta y nombre nuevo>.keytab

    La utilidad le solicitará la contraseña secondary1-user al ejecutar el comando.

Se creará el archivo keytab. El archivo contendrá los SPN de los nodos de clúster.

Ejemplo:

Por ejemplo, necesita crear un archivo keytab que contenga SPN de 3 nodos: control-01.test.local , secondary-01.test.local y secondary-02.test.local.

Para crear un archivo llamado filename1.keytab que contenga el SPN del nodo de control en la carpeta C:\keytabs\, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/control-01.test.local@TEST.LOCAL -mapuser control-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -out C:\keytabs\filename1.keytab

Para añadir un SPN más, ejecute el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-01.test.local@TEST.LOCAL -mapuser secondary1-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename1.keytab -out C:\keytabs\filename2.keytab

Para añadir un tercer SPN, ejecute el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-02.test.local@TEST.LOCAL -mapuser secondary2-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename2.keytab -out C:\keytabs\filename3.keytab

Como resultado, se creará un archivo llamado filename3.keytab con los tres SPN añadidos.

Para crear un archivo keytab:

Después de crear un archivo keytab, asegúrese de que cada SPN esté registrado y asignado a la cuenta correspondiente. Puede hacerlo ejecutando el siguiente comando: setspn -Q <SPN> , donde <SPN> tiene la siguiente estructura: HTTP/<fully qualified domain name (FQDN) del nodo del clúster>.

El comando debe devolver "Se ha encontrado un SPN existente" y la cuenta a la que está asignado el SPN.

Además, después de crear un archivo keytab, puede verificar la lista de SPN asignados a la cuenta correspondiente. Puede hacerlo con el siguiente comando: setspn -L <nombre de usuario> .

Si el archivo keytab se ha creado con una cuenta, el comando debería devolver una lista de todos los SPN para los que se creó el archivo keytab. Si el archivo keytab se creó con cuentas independientes para cada nodo, el comando debería devolver un SPN asignado a la cuenta específica.

Ejemplo de comando para una cuenta:

setspn -L control-user

Ejemplo de comando para cuentas independientes para cada nodo:

setspn -L control-user

setspn -L secondary1-user

setspn -L secondary2-user

Inicio de página