วิธีรวมใบรับรองต่าง ๆ ไว้ในไฟล์. pem เดียว


35

ฉันเพิ่งอ่านจบกระทู้ที่ดีนี้อธิบายรูปแบบ SSL ที่แตกต่างกัน

ตอนนี้ฉันกำลังมองหาสิ่งที่ตรงกันข้ามกับวิธีแบ่งไฟล์ PEM

มี 4 ไฟล์ที่ฉันต้องการรวบรวมซึ่ง แต่เดิมสร้างขึ้นสำหรับ Apache ฉันกำลังดูไฟล์ที่ระบุโดย

  • SSLCertificateFile
  • SSLCertificateKeyFile
  • SSLCertificateChainFile
  • SSLCACertificateFile

สิ่งที่ฉันอยากรู้มากที่สุดคือลำดับของไฟล์ใน dereivative ที่รวมกันนั้นสำคัญหรือไม่ เช่น. ถ้าฉันเพียงแค่catพวกเขาร่วมกันในลำดับที่ปรากฏด้านบนเป็น. pemมันจะถูกต้องหรือพวกเขาควรจะสั่งวิธีที่เฉพาะเจาะจง?

FYI, ฉันทำเช่นนี้เพื่อประโยชน์ของการใช้ใบรับรองเหล่านี้เป็นหนึ่งเดียวรวม.pemในSimpleSAMLphp


คำสั่งซื้อควรเป็นรหัสส่วนตัวใบรับรองกลางใบรับรองของคุณ
Zoredache

สิ่งที่เกี่ยวกับ CA นั่นคือรูทของเชนและดังนั้นมันจะไปตามเชนในไฟล์ที่รวม? หรือจะถูกตัดออกไปโดยสิ้นเชิง?
quickshiftin

ดูเหมือนว่าจะเป็นตัวเลือกฉันจะหมุนโดยไม่มีตอนนี้
quickshiftin

คำตอบ:


43

คำสั่งไม่ก็ตามตามRFC 4346

นี่คือคำพูดที่นำมาโดยตรงจาก RFC:

  certificate_list
    This is a sequence (chain) of X.509v3 certificates.  The sender's
    certificate must come first in the list.  Each following
    certificate must directly certify the one preceding it.  Because
    certificate validation requires that root keys be distributed
    independently, the self-signed certificate that specifies the root
    certificate authority may optionally be omitted from the chain,
    under the assumption that the remote end must already possess it
    in order to validate it in any case.

ขึ้นอยู่กับข้อมูลนี้ใบรับรองเซิร์ฟเวอร์ควรมาก่อนตามด้วยใบรับรองกลางใด ๆ และในที่สุดใบรับรองผู้มีอำนาจที่เชื่อถือได้รูท (ถ้าลงนามด้วยตนเอง) ฉันไม่สามารถหาข้อมูลใด ๆ เกี่ยวกับไพรเวตคีย์ได้ แต่ฉันคิดว่ามันไม่สำคัญเพราะไพรเวตคีย์ใน pem นั้นง่ายต่อการระบุเพราะมันเริ่มต้นและลงท้ายด้วยข้อความด้านล่างซึ่งมีคำหลักPRIVATEอยู่

 -----BEGIN RSA PRIVATE KEY-----
 -----END RSA PRIVATE KEY-----

2
cat site.crt root.crt site.key> site.pem
curveorosos

6

นี่คือคำสั่งที่จะรวมการใช้ cat

cat first_cert.pem second_cert.pem > combined_cert.pem

3
มันเป็นคำตอบวิธีเชื่อมต่อสอง certs เข้าด้วยกัน แต่ไม่ใช่วิธีรวม / เชื่อมต่อ certs เข้ากับ Apache
asdmin

นี่ไม่ใช่การตอบคำถามจริงๆคำตอบที่ยอมรับนั้นดีพอ ฉันเพียงแค่ให้ข้อมูลเพิ่มเติมเกี่ยวกับวิธีการต่อกันเป็นโปสเตอร์ต้นฉบับพูดคุยเกี่ยวกับการใช้แมวฉันคิดว่ามันอาจช่วยให้ผู้อื่น
tidileboss

2
คำตอบของคุณไม่ได้ระบุว่าไฟล์ใดที่จะเรียงลำดับไฟล์ (คุณเพิ่งมี "first_cert.pem" และ "second_cert.pem") คำตอบที่ถูกต้องคือcat my_site.pem ca_chain.pem my_site.key > combined_cert.pem
Doktor J
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.