ฉันยังใหม่กับโลก Curl และ Cacerts และประสบปัญหาขณะเชื่อมต่อกับเซิร์ฟเวอร์ โดยพื้นฐานแล้วฉันต้องทดสอบการเชื่อมต่อผ่าน https จากเครื่องหนึ่งไปยังอีกเครื่องหนึ่ง ฉันมี URL ที่ฉันต้องการเชื่อมต่อจากเครื่อง A (เครื่อง linux) ฉันลองสิ่งนี้ในพรอมต์คำสั่ง
cmd> curl https://[my domain or IP address]
และได้รับสิ่งต่อไปนี้:
curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
ในการอ่านบทความทางอินเทอร์เน็ตฉันทำสิ่งนี้:
openssl s_client -connect <domain name or Ip address>:443
และได้รับการตอบกลับบางอย่างรวมถึงใบรับรองเซิร์ฟเวอร์ (ภายใน-----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----
)
ฉันควรทำอย่างไรต่อจากที่นี่ ฉันคิดว่าฉันจะต้องคัดลอกและวางข้อความข้างใน
BEGIN CERTIFICATE & END CERTIFICATE
แล้วบันทึกเป็นไฟล์ แต่ควรเป็นไฟล์ประเภทใด .pem
, .crt
? .. หลังจากนั้นควรทำอย่างไร?
ฉันลองทำสิ่งนี้ - คัดลอกข้อความภายในBEGIN CERTIFICATE & END CERTIFICATE
และบันทึกไว้ใน.crt
ไฟล์ - ตั้งชื่อเป็นmy-ca.crt
(ลองสิ่งเดียวกันโดยตั้งชื่อเป็นmy-ca.pem
ไฟล์) จากนั้นทำสิ่งนี้:
cmd>curl --cacert my-ca.crt https://[my domain or IP address]
แต่มีข้อผิดพลาดเดียวกัน
--insecure
เพื่อไม่สนใจข้อผิดพลาด SSL