Actualmente estoy escribiendo un módulo títere para automatizar el proceso de unir servidores RHEL a un dominio AD, con soporte para Kerberos.
Actualmente, tengo problemas con la obtención automática y el almacenamiento en caché del ticket de concesión de tickets Kerberos a través de kinit
. Si esto se hiciera manualmente, haría esto:
kinit [email protected]
Esto solicita la contraseña de usuario de AD, por lo tanto, hay un problema para automatizar esto.
¿Cómo puedo automatizar esto? He encontrado algunas publicaciones que mencionan el uso kadmin
para crear una base de datos con la contraseña de los usuarios de AD, pero no he tenido suerte.
echo -n "$PASS" | kinit "$USER"
no salga la nueva línea finalSi bien puede codificar la contraseña en su automatización, la forma más correcta de Kerberos de hacerlo es crear una tabla de claves para el principal y luego usarla para autenticarse.
kinit
admite la autenticación desde una tabla de teclas usando las-k -t <keytab-path>
opciones.La principal ventaja de una tabla de teclas es que aísla las credenciales en un archivo separado y puede ser utilizado directamente por varios software Kerberos (por lo que no tiene que agregar código para leer una contraseña de un archivo separado). También se puede crear con comandos estándar (con un AD KDC, uso
ktpass
). Hay algunas ventajas más si tuviera un KDC de Linux, como aleatorizar fácilmente las claves almacenadas en la tabla de claves en lugar de utilizar una contraseña más débil.fuente
-norandkey
indicador en ktadd si no desea invalidar la contraseña existente.De acuerdo con la página del manual que podría usar:
Por lo tanto, puede proporcionar su contraseña a través de un archivo.
fuente