¿Cómo automatizar el proceso de Kinit para obtener TGT para Kerberos?

10

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 kadminpara crear una base de datos con la contraseña de los usuarios de AD, pero no he tenido suerte.

rasgó
fuente

Respuestas:

18

Estúpido, simplemente puedes usar el siguiente comando:

echo "password" | kinit aduser@REALM
rasgó
fuente
1
echo -n "$PASS" | kinit "$USER"no salga la nueva línea final
Dejan
14
¡O imprima un póster con su contraseña y cuélguela! Almacenar su contraseña en texto plano es un no-no
Havnar
17

Si 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. kinitadmite 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.

rra
fuente
1
Keytab definitivamente parece ser el camino a seguir. Si genera esto en kadmin, asegúrese de usar el -norandkeyindicador en ktadd si no desea invalidar la contraseña existente.
Dennis Jaheruddin
1

De acuerdo con la página del manual que podría usar:

kinit --password-file="~/my.secret" [email protected]

Por lo tanto, puede proporcionar su contraseña a través de un archivo.

Nico Stöckigt
fuente
funciona en windows?
Indranil Gayen