Mam skonfigurowanego Puppet Master / Agent i pomyślnie podpisałem certyfikat agenta na master. Jednak po uruchomieniu puppet agent --test
pojawia się błąd, który wygląda następująco:
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: [certificate signature failure for /CN=hostname.domain.com]
Info: Retrieving plugin
Error: /File[/var/lib/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: [certificate signature failure for /CN=hostname.domain.com]
Error: /File[/var/lib/puppet/lib]: Could not evaluate: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com] Could not retrieve file metadata for puppet://hostname.domain.com/plugins: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com]
Error: Could not retrieve catalog from remote server: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com]
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: [certificate signature failure for /CN=hostname.domain.com]
hostname.domain.com
jest panem
Jak to naprawić? Upewniłem się, że oba zegary są we właściwym czasie w tej samej strefie czasowej, usunąłem wszystko z /var/lib/puppet/ssl
katalogu agenta i zrezygnowałem, nie wiem, co jeszcze zrobić.
masterhost.domain.com
jest to samo, co hostname.domain.com
w twoim pytaniu, prawda? Spróbujmy tego, zobaczymy, czy certyfikaty weryfikują się ręcznie; uruchom openssl s_client -connect masterhost.domain.com:8140 -showcerts
i skopiuj dane certyfikatu (zaczyna się od -----BEGIN CERTIFICATE-----
, dołącz tę linię i końcową linię certyfikatu) do nowego pliku, a następnie uruchom openssl verify -CAfile /var/lib/puppet/ssl/certs/ca.pem /path/to/file/from/last/command
i sprawdź, czy to zweryfikuje.
-showcerts
z zawartością /var/lib/puppet/ssl/certs/ca.pem
- powinny być identyczne?