Generar un keytab de autenticación Kerberos en un cluster hadoop

Acceder al cluster por SSHlogo kerberos

ssh nombre_usuario@nombre_cluster_servidor

 

Autenticación en el Shell

kinit nombre_usuario@REINO.COM

Si la autenticación es exitosa, recibiremos un Ticket-Granting Ticket (TGT) del KDC. Esto significa que nos hemos autenticado con el servidor, pero aún no hemos recibido permiso para acceder a ningún servicio.

 

Examinar caché de tickets para verificar que hemos recibido el TGT

klist
result: Valid starting     Expires            Service principal
08/13/18 12:39:45  08/13/18 22:39:59  krbtgt/REINO.COM@REINO.COM
renew until 08/20/18 12:39:45

 

Crear keytab en el servidor:

1. Acceder al servicio de ktutils

/usr/sbin/ktutil

2. Ejecutar los siguientes comandos que dan de alta las codificaciones más utilizadas

add_entry -password -p nombre_usuario@REINO.COM -k 1 -e aes256-cts-hmac-sha1-96
add_entry -password -p nombre_usuario@REINO.COM -k 1 -e aes128-cts-hmac-sha1-96
wkt /home/nombre_del_keytab.keytab

 

Copiar el keytab generado al sevidor local

scp nombre_usuario@:nombre_cluster_servidor/home/nombre_del_keytab.keytab /home

 

Aumentar los permisos para evitar problemas

chmod 777 nombre_del_keytab.keytab

 

Finalmente mover el keytab generado al servidor donde se quiera autenticar el servicio, dependiendo del servicio es necesario a mayores copiar ciertos ficheros de configuración de los que se mencionan a continuación:

  • Core-site.xml: describe el formato y la configuración para el core.
  • HDFS-site.xml: describe el formato y la configuración para HDFS
  • YARN-site.xml: describe el formato y la configuración para YAR.
  • krb5.conf: describe el formato y la configuración para la librería de Kerberos V5.
  • kdc.conf: describe el formato y la configuración para Kerberos V5 AS y KDC.

Otros artículos que pueden ser de interés:

Autor: Diego Calvo