Estupendo-me, você pode simplesmente usar o seguinte comando:
echo "password" | kinit aduser@REALM
Atualmente, estou escrevendo um módulo de marionetes para automatizar o processo de ingressar em servidores RHEL em um domínio do AD, com suporte para o Kerberos.
Atualmente, tenho problemas para obter e armazenar automaticamente o tíquete de concessão de tíquete Kerberos via kinit
. Se isso fosse feito manualmente, eu faria isso:
kinit [email protected]
Isso solicita a senha do usuário do AD, portanto, há um problema com a automação disso.
Como posso automatizar isso? Eu encontrei alguns posts mencionando o uso de kadmin
para criar um banco de dados com a senha do usuário AD, mas não tive sorte.
Estupendo-me, você pode simplesmente usar o seguinte comando:
echo "password" | kinit aduser@REALM
Embora você possa codificar a senha com firmeza em sua automação, a maneira mais correta do Kerberos de fazer isso é criar um keytab para o principal e usá-lo para autenticar. kinit
suporta a autenticação de um keytab usando as opções -k -t <keytab-path>
.
A principal vantagem de um keytab é que ele isola as credenciais em um arquivo separado e pode ser usado diretamente por vários softwares do 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á algumas vantagens a mais se você tivesse um KDC Linux, como a fácil distribuição aleatória de chaves armazenadas no keytab, em vez de usar uma senha mais fraca.
De acordo com a página de manual que você pode usar:
kinit --password-file="~/my.secret" [email protected]
Assim, você pode fornecer sua senha por meio de um arquivo.