สายใบรับรอง SSL นี้ใช้งานไม่ได้และจะแก้ไขได้อย่างไร


13

สำหรับใบรับรอง SSL บนโดเมน example.com การทดสอบบางอย่างบอกฉันว่าห่วงโซ่ไม่สมบูรณ์และเนื่องจาก Firefox เก็บใบรับรองของตัวเองไว้จึงอาจล้มเหลวบน Mozilla ( 1 , 2 , 3 ) คนอื่นบอกฉันว่ามันใช้ได้ดีเช่นเดียวกับ Firefox 36 ซึ่งบอกฉันว่าเชนใบรับรองนั้นใช้ได้

UPDATE: ฉันทดสอบบน Opera, Safari, Chrome และ IE ทั้ง Windows XP และ MacOS X Snow Leopard พวกเขาทำงานได้ดี มันล้มเหลวบน Firefox <36 บนทั้งสองระบบปฏิบัติการเท่านั้น ฉันไม่สามารถเข้าถึงทดสอบบน Linux ได้ แต่สำหรับเว็บไซต์นี้มีผู้เข้าชมน้อยกว่า 1% และส่วนใหญ่อาจเป็นบ็อต ดังนั้นนี่เป็นการตอบคำถามเดิม "การตั้งค่านี้ทำให้เกิดคำเตือนใน Mozilla Firefox หรือไม่" และ "ห่วงโซ่ใบรับรอง SSL นี้เสียหรือไม่"

ดังนั้นคำถามคือฉันจะทราบได้อย่างไรว่าฉันต้องวาง certs ใดในไฟล์ ssl.ca เพื่อให้ Apache สามารถเสิร์ฟ Firefox <36 จากการสำลักได้?

PS: ตามหมายเหตุด้าน Firefox 36 ที่ฉันใช้ในการทดสอบใบรับรองเป็นการติดตั้งใหม่ล่าสุด มีโอกาสก็ไม่ได้บ่นเพราะมันได้ไม่ดาวน์โหลดมาใบรับรองกลางในระหว่างการเยือนก่อนหน้านี้ไปยังเว็บไซต์ที่ใช้ห่วงโซ่เดียวกัน


1
ไม่จำเป็น - ไม่ว่าในกรณีใดถ้าคุณสามารถตอบคำถามของคุณเองได้คุณควรทำเช่นนั้น :)
BE77Y

ใช่ฉันตอบคำถามนี้ แต่มันจะมีประโยชน์มากกว่าที่จะถามวิธีแก้ไขแทนที่จะเสีย ตกลงหรือไม่
Gaia

1
อย่างแน่นอน มันเก็บคำตอบไว้ตรงนี้เช่นกัน (จากเวลาที่โพสต์ถูกต้องใช่ไหม?)
ลุคแคนาดา

@Gaia: อ่าโอเค - ฉันเห็นสิ่งที่คุณหมายถึงตอนนี้ ฉันไม่ได้ 100% มากกว่าสิ่งที่จะได้รับการพิจารณาว่าเป็นการปฏิบัติที่ดีที่สุดในเรื่องนั้น แต่สัญชาตญาณของฉันคือการอัปเดตคำถามของคุณเพื่อรวมคำถาม "และวิธีนี้ควรได้รับการแก้ไขอย่างไร" ในกรณีของคุณตามการตอบสนองของ Steffen Ullrich ใบรับรอง "COMODO RSA Certification Authority" หายไปจากห่วงโซ่ - คุณสามารถหลีกเลี่ยงข้อผิดพลาดที่อาจเกิดขึ้นกับลูกค้า แต่รวมถึงในห่วงโซ่ของคุณ นี่เป็นเพียงการพิจารณาที่ไม่ดีจริง ๆ เท่านั้นที่จะเพิ่มค่าใช้จ่ายที่ไม่จำเป็นในการจับมือ - มิฉะนั้นจะไม่มีผลเสีย
BE77Y

นอกจากนี้ยังเป็นที่น่าสังเกตว่าลูกค้าส่วนใหญ่ที่ไม่ทันสมัยควรปรับใช้การตั้งค่าอย่างที่เป็นอยู่ในปัจจุบัน (ตามการทดสอบ SSL)
BE77Y

คำตอบ:


8

ถ้าเชนนั้นเพียงพอจะขึ้นอยู่กับที่เก็บ CA ของไคลเอนต์ ดูเหมือนว่า Firefox และ Google Chrome จะรวมใบรับรองสำหรับ "ผู้ออกใบรับรอง COMODO RSA" ในปลายปี 2014 สำหรับ Internet Explorer อาจขึ้นอยู่กับระบบปฏิบัติการพื้นฐาน CA อาจยังไม่รวมอยู่ในร้านค้าที่เชื่อถือได้ซึ่งใช้โดยที่ไม่ใช่เบราว์เซอร์เช่นโปรแกรมรวบรวมข้อมูลแอปพลิเคชันมือถือเป็นต้น

ไม่ว่าในกรณีใดโซ่ไม่ถูกต้องอย่างที่เห็นจากรายงาน SSLLabs :

  • หนึ่งเส้นทางที่ไว้วางใจต้องการให้ CA ใหม่นั้นได้รับความเชื่อถือโดยเบราว์เซอร์ ในกรณีนี้คุณยังคงจัดส่ง CA ใหม่ซึ่งไม่ถูกต้องเนื่องจาก CA ที่เชื่อถือได้ต้องมีอยู่แล้วภายในและไม่อยู่ในห่วงโซ่
  • เส้นทางที่ไว้วางใจอื่น ๆ ไม่สมบูรณ์เช่นจำเป็นต้องมีการดาวน์โหลดเพิ่มเติม เบราว์เซอร์บางตัวเช่น Google Chrome ทำการดาวน์โหลดนี้ในขณะที่เบราว์เซอร์อื่นและเบราว์เซอร์ที่ไม่ใช่เบราว์เซอร์คาดหวังว่าใบรับรองที่จำเป็นทั้งหมดจะอยู่ในห่วงโซ่การจัดส่ง ดังนั้นเบราว์เซอร์และแอพพลิเคชั่นส่วนใหญ่ที่ไม่มี CA ในตัวใหม่จะล้มเหลวกับเว็บไซต์นี้

ฉันรู้สึกว่าทั้ง Chrome และ IE ใช้ที่เก็บใบรับรอง Windows คุณแน่ใจหรือว่า Chrome มีร้านค้าเสริมของตัวเอง
Gaia

SSLlabs ระบุว่า "การตัดสินค้าจากคลัง = ไม่มี" แต่ฉันเห็นการวิเคราะห์ห่วงโซ่อย่างละเอียดด้านล่าง
Gaia

1
FWIW, Chrome ภายใต้ OS X จะใช้ที่เก็บใบรับรอง OS จริง ๆ @SteffenUllrich
BE77Y

1
@Gaia: อย่าลืมไคลเอนต์มือถือพวกเขามีที่เก็บใบรับรองของตัวเองซึ่งอาจแตกต่างกันระหว่าง Android หลายรุ่น
Steffen Ullrich

1
@Gaia: ใช้เส้นทางที่เชื่อถือได้ที่สองซึ่งแสดงโดย SSLLabs และเพียงเพิ่มใบรับรองลูกโซ่ที่ขาดหายไป สายโซ่นี้สามารถตรวจสอบได้จากทั้งเบราว์เซอร์ที่มี CA รุ่นใหม่กว่าและรุ่นที่ไม่มี CA นี้
Steffen Ullrich

8

ฉันติดต่อ Comodo และดาวน์โหลดไฟล์ bundle.crt จากพวกเขา ฉันเปลี่ยนชื่อเป็น ssl.ca ตามการตั้งค่าเซิร์ฟเวอร์นี้และตอนนี้ใบรับรองผ่านการทดสอบทั้งหมด การChain issues = Contains anchorแจ้งเตือนไม่ใช่ปัญหา (ดูด้านล่าง)

SSL Labs ซึ่งได้รับการยอมรับอย่างกว้างขวางว่าเป็นการทดสอบที่สมบูรณ์แบบที่สุดแสดงให้เห็นว่าChain issues = Contains anchorในขณะที่ก่อนหน้านี้เคยแสดงChain issues = None(ในขณะที่คนอื่น ๆ แสดงว่ามีปัญหากับโซ่) นี่เป็นเรื่องที่ไม่ใช่ปัญหา ( 1 , 2 ) นอกเหนือจาก 1kB พิเศษที่เซิร์ฟเวอร์ส่งไปให้ลูกค้า

ข้อสรุปของฉัน

  1. เพิกเฉยการทดสอบSSL Labsที่มีข้อความระบุChain issues = Contains anchorหรือลบใบรับรองหลักออกจากไฟล์บันเดิล (ดูความคิดเห็นนี้ด้านล่าง)

  2. มักจะเรียกใช้การทดสอบรองอย่างน้อยหนึ่งในอีกสามเว็บไซต์ทดสอบ ( 1 , 2 , 3 ) เพื่อให้แน่ใจว่าห่วงโซ่ของคุณจะถูกจริงๆเมื่อSSL LabsChain issues = Noneกล่าวว่า


2
ไม่มีจุดที่จะรวมใบรับรอง "anchor" / "root" จริง ๆ อย่างไรก็ตามคุณต้องการใบรับรองระดับกลางมาก ฉันคิดว่าคุณไม่มีใบรับรองระดับกลางในตอนแรกซึ่งทำให้เกิดปัญหา
Håkan Lindqvist

@ HåkanLindqvistดังนั้นฉันควรถอดรหัส certs ค้นหาว่าใบรับรอง root ตัวใดและลบออกจากสายโซ่?
Gaia

1
ฉันขอแนะนำให้ทำเช่นนั้นแม้ว่าจะไม่เป็นปัญหาร้ายแรงเท่ากับ certs กลางที่ขาดหายไป (มันสิ้นเปลืองเพียงเล็กน้อย) Fwiw, การทดสอบ SSL ของ Qualy ระบุว่าเป็น02faf3e291435468607857694df5e45b68851868สิ่งที่ไม่จำเป็น
Håkan Lindqvist

@ HåkanLindqvistใช้openssl x509 -fingerprint -in ssl.cai ตอกย้ำว่าส่วนของไฟล์ที่มีลายนิ้วมือ02faf3e291435468607857694df5e45b68851868เป็น PEM แรก ฉันลบออกแล้วและตอนนี้ฉันได้รับi.imgur.com/1iG2UCz.pngและi.imgur.com/m8gYbdG.png (ข้อผิดพลาดของ OCSP: คำขอล้มเหลวด้วยสถานะ OCSP: 6 [ ocsp.comodoca.com] )
Gaia

3
ข้อสรุปของคุณเกี่ยวกับคำเตือน "มีสมอเรือ" นั้นถูกต้อง - คำตอบเกี่ยวกับความปลอดภัยนี้คุ้มค่าที่จะอ่าน โดยสรุปไม่มีปัญหาในการส่ง: security.stackexchange.com/a/24566/7043
Chris J
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.