Puppet Master na Máquina Virtual com Port Forwarding (erro de certificado SSL?)

3

Estou tentando executar um mestre de marionetes em uma máquina virtual e conectar-me a partir de uma máquina cliente, por meio do encaminhamento de porta no host da máquina virtual.

Os detalhes

Eu tenho uma máquina virtual rodando o Ubunto com o Puppet 3.1.1 (chamado mgt ). O host da máquina virtual (chamado loki ) executa o rinetd que encaminha as conexões de entrada na porta 8140 para a máquina virtual.

Eu tenho uma máquina cliente (chamada thor ) com o Puppet 3.0.2.

O teste com netcat e telnet confirma que o encaminhamento de porta funciona e que eu posso conectar da minha máquina cliente ( thor ) à máquina virtual mestre de marionetes ( mgt ).

Quando eu executo o mestre de marionetes (em mgt ) com o seguinte comando, ele parece iniciar corretamente:

puppet master --no-daemonize --debug

Quando eu executo o agente (em thor ), com o seguinte comando:

puppet agent --server loki --test --no-daemonize

Eu recebo o seguinte erro:

Warning: Unable to fetch my node definition, but the agent run will continue:
Warning: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [self signed certificate in certificate chain for /CN=Puppet CA: localhost]
Info: Retrieving plugin
Error: /File[/var/puppet/lib]: Failed to generate additional resources using 'eval_generate: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [self signed certificate in certificate chain for /CN=Puppet CA: localhost]
Error: /File[/var/puppet/lib]: Could not evaluate: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [self signed certificate in certificate chain for /CN=Puppet CA: localhost] Could not retrieve file metadata for puppet://loki/plugins: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [self signed certificate in certificate chain for /CN=Puppet CA: localhost]
Error: Could not retrieve catalog from remote server: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [self signed certificate in certificate chain for /CN=Puppet CA: localhost]
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
Error: Could not send report: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [self signed certificate in certificate chain for /CN=Puppet CA: localhost]

Mas não recebo nenhuma saída adicional no mestre de marionetes indicando que uma conexão foi tentada ou recusada.

Meu entendimento é que o mestre de marionetes deve se recusar a se conectar até que o certificado do cliente seja assinado. O uso do comando lista de conjuntos de fantoches não lista nenhum certificado não assinado.

Alguma sugestão sobre como proceder?

    
por Alan Hodgkinson 07.05.2013 / 16:45

2 respostas

1

Minhas desculpas, eu interpretei mal o seu erro original, parece que o mestre / agente ficou confuso, veja este link para detalhes.

Especificamente:

The server certificate that puppet has and the one that the puppetmaster is using differ. On a pure puppet node one simple way is just to remove the current SSL information and start again:

find /var/lib/puppet -type f -print0 |xargs -0r rm

Also ensure that the client and server agree what the current time is (otherwise the certificate created may not be valid on the other machine).

    
por 07.05.2013 / 16:54
0

O link a seguir dá uma explicação muito boa de como funcionam os certificados Puppet:

por 08.05.2013 / 10:26