Outra conta com o mesmo uid como root é solicitada para definir uma nova senha para raiz, e não ela mesma

7

Depois de atualizar o sistema operacional de 5300-06 para 5300-11, esse comportamento estranho aconteceu.

Meu sistema tinha outra conta unix, vamos chamá-la de " abc ", configurada propositalmente seu uid para 0 para funcionar como raiz com todas as suas autoridades. Tem sido executado assim há anos e funcionou completamente bem. No entanto, após a atualização, quando a senha do abc expirar, em vez de solicitar imediatamente após o login bem-sucedido de uma nova senha, ela está solicitando a alteração da senha " root " e está realmente alterando a senha do root não abc.

Se eu mudar o uid do abc para outro ID único, ele dirá com sucesso que a senha do abc será alterada quando solicitado.

Existem muitas razões pelas quais não consigo alterar o fluxo do abc . Então, o que estou tentando descobrir é, por que isso está acontecendo e como posso corrigi-lo? É realmente causado pela atualização do sistema operacional?

    
por matthew 05.10.2012 / 08:42

2 respostas

4

Se duas contas tiverem o mesmo ID de usuário, elas serão, por definição, a mesma conta. É possível, mas não recomendado, ter mais de uma linha em /etc/passwd (ou outro banco de dados do usuário) com o mesmo ID de usuário; eles são o mesmo usuário , com diferentes formas de fazer login.

Você estava usando um recurso não suportado. O risco de usar um recurso não suportado é que às vezes ele quebra quando o sistema é atualizado.

A senha expirada geralmente é ruim para a segurança, pois faz com que os usuários escolham senhas mais fracas ou as anotem em um post-it preso ao monitor. O único benefício de segurança para expirar senhas é, eventualmente, bloquear contas abandonadas. Como a conta abc é presumivelmente uma que você usa como parte de algum tipo de tarefa regular, não a expire.

Você provavelmente deve alterar essa configuração, pois ela é frágil. O que mudar depende do que você usa a conta abc (quem tem a senha, em que circunstâncias ela é usada, o que é o shell do abc, está presente em várias máquinas,…).

    
por 06.10.2012 / 23:27
2

O mais provável é que a atualização do sistema tenha introduzido um script ou outra função relacionada à expiração da senha, que agora procura o nome de usuário com base no UID, em vez de buscar o nome de usuário de uma variável de ambiente ou outra fonte. Como observa Gilles, ter vários nomes de usuário com o mesmo UID é frágil.

Se você realmente não pode mover o abc para outro UID, tente procurar por arquivos / scripts associados à expiração da senha, que podem ter sido alterados pelo patch. Por exemplo, verifique /usr/sbin/userCommonTasks . Seria melhor se você pudesse compará-lo com a versão anterior ao patch. Você também pode verificar /etc/security/users . Talvez mover a entrada do abc acima da raiz possa ajudar.

Qualquer correção será hackeada, porque ter vários nomes de usuário para um UID é uma espécie de hack, então, em última análise, você está apenas negociando instabilidades. Mas deve ser possível mancar o sistema se puder descobrir o que mudou.

    
por 08.10.2012 / 17:57