módulo de usuário fantoche não atualiza/etc/shadow com senha hash

módulo de usuário fantoche não atualiza/etc/shadow com senha hash

Estou gerenciando minhas instâncias de aplicativos EC2 usando fantoche e isso também envolve gerenciamento de usuários. Mas recentemente notei um bug que não consigo fazer login com nenhum nome de usuário que adicionei por meio do fantoche. Depois de verificar uma das instâncias corrompidas (usei chaves neste caso), descobri que o campo de senha /etc/shadow (2ª coluna) está em branco, ou seja, não há senha com hash nele. Não consegui descobrir o motivo pelo qual as senhas com hash não são atualizadas com a criação do usuário .. porque tenho a senha com hash fornecida no módulo do usuário .. acredite, estou usando um módulo 'usuário' fantoche muito simples, mas por algum motivo não atualização de senhas dos usuários.

Nota: O módulo está funcionando bem na minha máquina local (Centos 6.3)

Aqui está meu módulo e logs 'user.pp':

1) Anexando user.pp.

2) Registros de execução de fantoches:

mnotice: /Usertgrochowicz/ensure: created
mnotice: /Userjpollard/ensure: created
mnotice: /Userbottle/ensure: created
mnotice: /Userjburgar/ensure: created
mnotice: /Userrahul/ensure: created
mnotice: /Userjfenocchi/ensure: created
mnotice: /Userdwhite/ensure: created
mnotice: /Userbporter/ensure: created
mnotice: /Userasavarin/ensure: created
mnotice: /Userehalfin/ensure: created
mnotice: Finished catalog run in 1.69 seconds
mnotice: Finished catalog run in 0.21 seconds

3) Entradas do arquivo /etc/shadow criadas:

tgrochowicz:!!:15956:0:99999:7:::
jpollard:!!:15956:0:99999:7:::
bottle:!!:15956:0:99999:7:::
jburgar:!!:15956:0:99999:7:::
rahul:!!:15956:0:99999:7:::
jfenocchi:!!:15956:0:99999:7:::
dwhite:!!:15956:0:99999:7:::
bporter:!!:15956:0:99999:7:::
asavarin:!!:15956:0:99999:7:::
ehalfin:!!:15956:0:99999:7:::

4) Versão e arquitetura do sistema operacional:

ec2-user@ip-10-100-38-78 ~$ uname -r
3.4.43-43.43.amzn1.x86_64
ec2-user@ip-10-100-38-78 ~$ uname -a
Linux ip-10-100-38-78 3.4.43-43.43.amzn1.x86_64 #1 SMP Mon May 6 18:04:41 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Alguma ideia de por que este módulo não consegue atualizar a senha do meu módulo na instância ec2?


Minhas desculpas, eu não sabia que este não é um fórum. Aqui está a atualização da minha pergunta:

Concordo ... e esqueci de avisar que o ruby-shadow já está instalado como pré-requisito para o módulo 'usuário'. Ainda assim, os campos de senha /etc/shadow estão em branco. Não tenho ideia do que está bloqueando o fantoche.. alguma ideia?

Aqui estão os logs de comando que dizem que o Ruby-shadow está instalado e iniciado:

[root@ip-10-100-39-44 ~]# ruby -e "require 'puppet' ; puts Puppet.features.libshadow?"
true
[root@ip-10-100-39-44 ~]# rpm -qa | grep ruby-shadow
ruby-shadow-1.4.1-15.2.amzn1.x86_64

E aqui estão os logs do fantoche que mostram o pacote 'ruby-shadow' instalado antes do módulo "usuário":

[root@ip-10-100-39-44 ~]# less /var/log/messages 
*(/Stage[main]/Packages/Yumrepo[epel]/enabled) enabled changed '0' to '1'
Sep 20 03:08:50 ip-10-100-39-44 yum[2631]: Installed: ruby-shadow-1.4.1-15.2.amzn1.x86_64
Sep 20 03:08:51 ip-10-100-39-44 puppet-apply[2471]: (/Stage[main]/Packages/Package[ruby-shadow]/ensure) created*

*(/Stage[main]/Env::Sshd/Augeas[PasswordAuthentication]/returns) executed successfully
Sep 20 03:10:32 ip-10-100-39-44 puppet-apply[2471]: (/Stage[main]/Env::Sshd/Service[sshd]) Triggered 'refresh' from 1 events
Sep 20 03:10:38 ip-10-100-39-44 puppet-apply[2471]: (/Stage[main]//Exec[wait_for_5_sec]/returns) executed successfully
Sep 20 03:10:38 ip-10-100-39-44 puppet-apply[2471]: (/User[bporter]/ensure) created
Sep 20 03:10:38 ip-10-100-39-44 puppet-apply[2471]: (/User[asavarin]/ensure) created
Sep 20 03:10:39 ip-10-100-39-44 puppet-apply[2471]: (/User[ehalfin]/ensure) created
Sep 20 03:10:39 ip-10-100-39-44 puppet-apply[2471]: (/User[jpollard]/ensure) created
Sep 20 03:10:39 ip-10-100-39-44 puppet-apply[2471]: (/User[bottle]/ensure) created
Sep 20 03:10:39 ip-10-100-39-44 puppet-apply[2471]: (/User[jburgar]/ensure) created
Sep 20 03:10:39 ip-10-100-39-44 puppet-apply[2471]: (/User[rahul]/ensure) created
Sep 20 03:10:39 ip-10-100-39-44 puppet-apply[2471]: (/User[tgrochowicz]/ensure) created
Sep 20 03:10:40 ip-10-100-39-44 puppet-apply[2471]: (/User[jfenocchi]/ensure) created
Sep 20 03:10:40 ip-10-100-39-44 puppet-apply[2471]: (/User[dwhite]/ensure) created*

Obrigado

Responder1

Ruby (e portanto Puppet) requer a instalação de uma biblioteca chamada ruby-shadow para permitir que ruby ​​modifique o arquivo de senha shadow.

No RHEL/CentOS, este é o rpm ruby-shadow. Em outras plataformas, pode ser chamado ruby-shadowlib.

Os documentos do fantoche referem-se a isso notipo de usuáriona seção provedor->useradd.

Você deve ser capaz de verificar se está carregando a coisa certa fazendo algo como:

ruby -e "require 'puppet' ; puts PUppet.features.libshadow?"

Deve retornar verdadeiro se estiver carregando corretamente.

informação relacionada