![O fantoche não consegue enviar fatos para o Foreman - “alerta tlsv1 desconhecido ca”](https://rvso.com/image/658743/O%20fantoche%20n%C3%A3o%20consegue%20enviar%20fatos%20para%20o%20Foreman%20-%20%E2%80%9Calerta%20tlsv1%20desconhecido%20ca%E2%80%9D.png)
Eu atualizei recentementeKatellopara2.2eCapatazagora para1.8.1, então parece em algum lugar da atualização que o Puppet agora não pode entrar em contato com o Foreman:
> [root@virt5 ~]# puppet agent --test info:
> Retrieving plugin <snipped>
> err: Could not retrieve catalog from remote server: Error 400 on
> SERVER: Failed when searching for node virt5: Failed to find virt5.
> via exec: Execution of '/etc/puppet/node.rb virt5' returned 1:
> warning: Not using cache on failed catalog err: Could not retrieve
> catalog; skipping run
Ao executar o mesmo comando no meu puppetmaster, vejo:
[root@foreman certs]# /etc/puppet/node.rb virt5
Não foi possível enviar fatos para o Foreman: SSL_connect retornado = 1 errno = 0 estado = SSLv3 lê ticket de sessão do servidor A: alerta tlsv1 desconhecido ca
tentei copiar o/etc/pki/katello/certs/katello-default-ca.crtcertificado sendo usado pelo httpd para/etc/pki/ca-trust/source/anchors/e depois execute update-ca-trust extract
, mas isso não parece ter feito diferença.
Tenho certeza de que estou perdendo alguma coisa boba, só não tenho certeza do que seria.
Responder1
Um erro que estou vendo aqui (que deveria estar mais claro na documentação) é que você acredita que Katello usa os certificados Puppet como o Foreman, mas isso não acontece.
Na execução do host Foreman/Katello:
capsule-certs-generate --capsule-fqdn "mycapsule.example.com"\
--certs-tar "~/mycapsule.example.com-certs.tar"
Onde mycapsule.example.com é seu outro mestre de marionetes.
Descompacte esse tarball e copie o RPM do certificado "puppet-client" para o seu Puppet master e instale-o
Copie alguns arquivos:
cp /etc/pki/katello-certs-tools/certs/*-puppet-client.crt /etc/puppet/foreman.crt
cp /etc/pki/katello-certs-tools/private/*-puppet-client.key /etc/puppet/foreman.key
cd /etc/puppet
wget https://katello.mydomain.net/pub/katello-default-ca.crt
chown puppet /etc/puppet/foreman.{crt,key} /etc/puppet/katello*
Configure seu /etc/puppet/foreman.yaml assim:
:url: "https://katello.mydomain.net"
:ssl_ca: "/etc/puppet/katello-default-ca.crt"
:ssl_cert: "/etc/puppet/foreman.crt"
:ssl_key: "/etc/puppet/foreman.key"
Esperamos que isso seja suficiente.