ฉันมีใบรับรองสามใบในสายโซ่:
- root.pem
- intermediate.pem
- john.pem
เมื่อฉันตรวจสอบพวกเขาโดยใช้openssl x509 -in [filename] -text -noout
พวกเขาดูดี root.pem ดูเหมือนว่ามันจะลงนามด้วยตนเอง (ผู้ออก == เรื่อง) และหัวเรื่องของแต่ละใบรับรองคือผู้ออกของคนต่อไปตามที่คาดไว้
และแน่นอนฉันสามารถตรวจสอบห่วงโซ่ถึงใบรับรองกลาง:
$ openssl verify -CAfile root.pem root.pem
root.pem: OK
$ openssl verify -CAfile root.pem intermediate.pem
intermediate.pem: OK
อย่างไรก็ตาม john.pem ล้มเหลว:
$ openssl verify -CAfile root.pem -CAfile intermediate.pem john.pem
john.pem: C = CL, [...redacted data...]
error 2 at 1 depth lookup:unable to get issuer certificate
เพื่อความรู้ที่ดีที่สุดของฉันซึ่งหมายความว่า openssl ไม่สามารถหาผู้ออกสำหรับสื่อกลางได้ ซึ่งไม่สมเหตุสมผลเนื่องจาก root.pem เป็นผู้ออกสื่อกลาง
ฉันกำลังคิดถึงอะไร
แก้ไข: ฉันเคยโพสต์คำตอบบอก root.pem ที่และ intermediate.pem -CAfile
ควรจะตัดแบ่งในไฟล์เดียวแล้วหนึ่งควรใช้ไฟล์นี้เป็นพารามิเตอร์สำหรับ นี้เป็นธรรมเพราะการลงทุนโดยปริยาย intermediate.pem เป็นโยฮันเน Pilleชี้ให้เห็น อ่านลิงค์ที่เขาโพสต์ในคำตอบที่ถูกลบของฉัน: https://mail.python.org/pipermail/cryptography-dev/2016-August/000676.html