Kerberos, .k5login e sudo

4

Background: Estou usando um sistema Debian 7 que integrei com um sistema LDAP + Kerberos usando libnss-ldap , libpam-krb5 e nscd . Eu modifiquei sudoers para permitir que um grupo LDAP tenha o direito de sudo e ganhe privilégios de superusuário. Portanto, posso efetuar login como um grupo LDAP para gerenciar a máquina. Tudo isso está funcionando bem, e ssh login funciona bem com um usuário LDAP.

Eu estava apenas experimentando com um arquivo .k5login no diretório inicial da minha conta de usuário, Cosmic Ossifrage . No arquivo, eu listei:

[email protected]

que é uma identidade Kerberos válida. O SSH logins como este usuário continuou a funcionar corretamente com o arquivo .k5login no lugar.

No entanto, com esse arquivo .k5login no meu diretório home, não consegui usar sudo -i para obter privilégios de superusuário. Isso não parece fazer nenhum sentido, já que o .k5login está no meu diretório inicial, não root , então, a meu ver, nem o root user, nem o sudo , devem ser restringidos do que o que está presente no arquivo sudoers .

No entanto, com o arquivo .k5login acima, não foram usados sudo -i nem sudo su enquanto eram anteriores. Depois que o arquivo .k5login foi removido, essa funcionalidade foi restaurada e eu consegui sudo novamente.

No arquivo de log /var/log/auth.log , entre as muitas mensagens de erro relatadas neste momento estava uma do sudo, informando:

[pam:sudo] krb5_kuserok failed for user cosmic_ossifrage

Eu senti falta de algo fundamental na definição do que um .k5login deveria fazer? Esse comportamento é esperado e, em caso afirmativo, por quê?

    
por Cosmic Ossifrage 30.06.2014 / 12:50

1 resposta

0

De acordo com Mark comentário , o arquivo .k5login deve satisfazer os seguintes requisitos:

The .k5login file must contain one principal per line, be owned by user, and not be writable by group or other (but must be readable by anyone).

de acordo com os comentários encontrados no código-fonte .

Nesse caso, o arquivo .k5login não era legível por ninguém, exceto pelo usuário Cosmic Ossifrage . A montagem NFS na qual o diretório pessoal do usuário era armazenado também aplicava a criptografia raiz, proibindo o acesso até mesmo pelo usuário root. Ao tornar o arquivo legível para o mundo, a funcionalidade sudo to root foi retornada.

(Marcando o wiki da comunidade, como a resposta veio originalmente de um comentário.)

    
por 17.09.2015 / 16:29