hostname do servidor fantoche não corresponde ao certificado - não é possível autenticar.

1

Eu sei que esta pergunta foi feita antes em muitas variantes diferentes. Eu li todo o post relacionado ao problema, mas não consigo agente e mestre conversando entre si. Eu inicializo 2 vm via estação vmwork ambos rodando no linuxmint 17.

Vou começar este tópico dizendo como é o meu / etc / hosts e / etc / hostname no cliente e no puppetmaster.

No vm do meu cliente, meu nome de host em / etc / hostname se parece com o seguinte:

puppetclient

Os hosts vm do meu cliente em / etc / hosts são parecidos com os seguintes:

127.0.0.1 localhost
127.0.1.1 puppetclient
192.168.75.143 puppetmaster

Na vm do meu mestre, o / etc / hostname se parece com o seguinte:

puppetmaster

O vm / etc / hosts do meu mestre se parece com o seguinte:

127.0.0.1 localhost
127.0.1.1 puppetmaster
192.168.75.144 puppetclient

Meu /etc/puppet/puppet.conf no meu mestre se parece com o seguinte:

[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
templatedir=$confdir/templates
prerun_command=/etc/puppet/etckeeper-commit-pre
postrun_command=/etc/puppet/etckeeper-commit-post

[master]
# These are needed when the puppetmaster is run by passenger
# and can safely be removed if webrick is used.
ssl_client_header = SSL_CLIENT_S_DN
ssl_client_verify_header = SSL_CLIENT_VERIFY

meu /etc/puppet/puppet.conf no meu cliente se parece com o seguinte:

[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
templatedir=$confdir/templates
prerun_command=/etc/puppet/etckeeper-commit-pre
postrun_command=/etc/puppet/etckeeper-commit-post

[master]
# These are needed when the puppetmaster is run by passenger
# and can safely be removed if webrick is used.
ssl_client_header = SSL_CLIENT_S_DN
ssl_client_verify_header = SSL_CLIENT_VERIFY

[agent]
server=puppetmaster

Eu tenho muitas variantes do puppet.conf durante a minha pesquisa e não tenho vontade de postar aqui. Uma das variantes é ter server=puppetmaster em [main] no meu cliente e na vm do master. De qualquer forma, para todas as variantes puppet.conf que eu tentei, meu primeiro erro quando eu corro sudo puppet agent --test é sempre warning: unable to fetch my node definitoin, but agent run will continue: o erro depois disso é diferente para cada variante do puppet.conf eu implemento. Alguém pode me dizer a configuração certa para a minha configuração?

Obrigado

    
por user3610701 24.10.2014 / 01:46

1 resposta

2

Parece que você instalou e executou seu mestre de marionetes primeiro e depois alterou o nome do host.

No mestre de marionetes, execute: %código% Isso mostrará o certname que seu mestre usa. Deve ser igual ao seu nome de host.

Você pode verificar o nome comum no certificado mestre se ele corresponder ao seu nome de host:

openssl x509 -noout -subject -in $(puppet config print ssldir)/certs/$(puppet config print certname).pem

Também recomendo usar o FQDN na configuração de fantoches. Se o nome do host for diferente, a maneira mais fácil é apenas remover ou renomear o diretório SSL:

mv $(puppet config print ssldir){,_}

E reinicie seu mestre de marionetes. Você precisará fazer isso no nó cliente também, porque a CA será alterada.

    
por 24.10.2014 / 12:12