Como automatizar o processo kinit para obter o TGT para Kerberos?

10

Atualmente, estou escrevendo um módulo fantoche para automatizar o processo de associação de servidores RHEL a um domínio do AD, com suporte para Kerberos.

Atualmente, tenho problemas para obter e armazenar em cache automaticamente o ticket de concessão de tíquetes Kerberos via kinit. Se isso fosse feito manualmente, eu faria o seguinte:

kinit [email protected]

Isso solicita a senha do usuário do AD, portanto, há um problema com a automatização disso.

Como posso automatizar isso? Encontrei algumas postagens mencionando o uso kadminpara criar um banco de dados com a senha de usuários do AD, mas não tive sorte.

rasgou-
fonte

Respostas:

18

Me estúpido, você pode simplesmente usar o seguinte comando:

echo "password" | kinit aduser@REALM
rasgou-
fonte
1
echo -n "$PASS" | kinit "$USER"não gera nova linha final
Dejan
14
Ou imprima um pôster com sua senha e pendure-a! Armazenar sua senha em texto sem formatação é um não-não
Havnar
17

Enquanto você pode apenas codificar a senha na sua automação, a maneira mais correta do Kerberos de fazer isso é criar um keytab para o principal e usá-lo para autenticar. kinitsuporta autenticação de um keytab usando as -k -t <keytab-path>opções

A principal vantagem de um keytab é que ele isola as credenciais em um arquivo separado e pode ser usado diretamente por vários softwares Kerberos (para que você não precise adicionar código para ler uma senha de um arquivo separado). Também pode ser criado com comandos padrão (com um AD KDC, use ktpass). Há mais algumas vantagens se você tiver um KDC Linux, como chaves aleatórias facilmente armazenadas na aba de chaves em vez de usar uma senha mais fraca.

rra
fonte
1
Keytab definitivamente parece ser o caminho a percorrer. Se você gerar isso no kadmin, use o -norandkeysinalizador no ktadd se não quiser invalidar a senha existente.
Dennis Jaheruddin 8/08
1

De acordo com a página de manual, você pode usar:

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

Então você pode fornecer sua senha através de um arquivo.

Nico Stöckigt
fonte
funciona no windows?
Indranil Gayen