Busqué en línea y veo que otras personas han tenido este problema en otras listas / tableros. Cuando ejecuto sudo puppetd --waitforcert 60 --prueba por segunda vez después de firmar el certificado en el servidor maestro, aparece este error-
notice: Got signed certificate
warning: Certificate validation failed; considering using the certname configuration option
err: /File[/var/lib/puppet/lib]: Failed to generate additional resources during transaction: Certificates were not trusted: hostname was not match with the server certificate
No estoy seguro de entender cuál es el problema o cómo solucionarlo. Por eso pregunto.
Estoy configurando una marioneta en dos servidores en mi LAN. El puppetmaster se llama 'puppet' y el otro servidor se llama 'puppetclient'. Puse el títere en / etc / hosts en puppetclient.
ejecutando hostname -f mostrará puppet y pupperclient en los respectivos servidores. No estoy seguro de qué más probar. ¿Alguien tiene alguna idea?
fuente
rm -rf /var/lib/puppet/ssl
regeneré los certificados de CA y luego reinicié al titiriteroSi desea usar DNS CNAME para su puppetmaster, puede iniciar el puppetmaster usando:
lo que hará que puppetmaster use en
cname.domain.org
lugar del nombre de dominio completamente calificado predeterminado.fuente
La
--certname cname.domain.org
opción de la bandera parecía haber hecho el truco para mí (en Amazon EC2)fuente
puede preguntarle a facter (facter fqdn) cuál es el nombre de host y ver si es coherente con lo que espera. También eche un vistazo a (var) / var / lib / puppet / ssl / y vea cómo se ven los certificados, si no tienen los nombres de host correctos, ese puede ser su problema. Dado que Puppet hace toda su comunicación a través de HTTPS, es bastante sensible a la resolución y al nombre del host.
fuente
Antes de instalar Puppet en sus clientes y servidores designados, verifique el archivo /etc/resolv.conf y verifique que la primera entrada de dominio en la línea de "búsqueda" es el dominio en el que desea que Puppet se ejecute. Por ejemplo:
buscar my.puppetdomain.com my.public.domain.com
servidor de nombres 192.168.1.1 servidor de nombres xxx.xxx.1.1
Durante la fase de instalación de Puppet, el servidor de Puppet generará sus certificados en función de la primera entrada de búsqueda en /etc/resolv.conf. Descubrí esto de la manera difícil. Si ve errores relacionados con el certificado en cualquier nodo títere, realice los siguientes pasos:
1) Edite /etc/resolv.conf y verifique que el primer dominio listado en la línea de "búsqueda" refleje el dominio en el que desea que Puppet se ejecute.
2) Desinstale puppet (deje el directorio / etc / puppet intacto).
3) rm -rf / var / lib / puppet
4) Vuelva a instalar Puppet (esto generará un nuevo directorio / var / lib / puppet).
5) Si realiza esto en el servidor Puppet, ejecute / usr / sbin / puppetmasterd --mkusers (alternativamente, ejecute / usr / local / sbin / puppetmasterd --mkusers ). Esto generará todos los archivos necesarios dentro de / var / lib / puppet, incluidos los nuevos certificados internos con el nombre de dominio adecuado.
6) Si realiza esto en el cliente Puppet, inicie Puppet en modo detallado, con el indicador --waitforcert activado: puppetd -server .puppetdomain.com --waitforcert 60 --test Este paso enviará una solicitud de certificado al servidor Puppet.
7) En el servidor Puppet, enumere los certificados en espera:
puppetca --list
Debería ver el nombre de host del cliente Puppet que realiza la solicitud:
puppetclient1.puppetdomain.com
8) Desde el servidor Puppet, firme el certificado del cliente Puppet que acaba de aparecer:
puppetca --sign puppetclient1.puppetdomain.com
Entonces ya terminaste.
HTH ....
fuente
¿Puppet y puppetclient se resuelven en DNS? Si no, puede editar el archivo / etc / hosts para asignar las direcciones IP y los nombres de host. IIRC, solo debe hacer esto en el cliente.
fuente