How to fix “SSL_connect … certificate verify failed” on puppet client
เมื่อทำการติดตั้ง puppet client เสร็จเรียบร้อยแล้ว และใช้คำสั่ง
1 2 3 |
# puppet agent --test |
เพื่อทำการ connect ไปยัง puppet master แล้วพบ error ดังนี้
1 2 3 4 5 6 7 |
err: Could not retrieve catalog from remote server: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed warning: Not using cache on failed catalog err: Could not retrieve catalog; skipping run |
จาก error นี้เป็นปัญหาที่เกิดจาก
- เวลาระหว่าง client และ puppet master server ต่างกันมาก ทางแก้ไขคือ รันคำสั่ง ntpdate เพื่อทำการ update time บน client ดังตัวอย่าง
123# ntpdate NTPSERVER.COM - certificate บน client ไม่ match กับ puppet master ดังนั้นต้องทำการ regenerate certificate ใหม่ ด้วยขั้นตอนดังนี้
- remove client certificate ด้วยคำสั่ง
123# find /var/lib/puppet -type f -print0 |xargs -0r rm - Remove SSL certificate บน puppet master ด้วยคำสั่ง
123# puppet cert --clean {node_certname}
- remove client certificate ด้วยคำสั่ง