ใบรับรองไวด์การ์ด SSL ควรปลอดภัยทั้งโดเมนรูทและโดเมนย่อยหรือไม่


81

ฉันถามคำถามนี้เพราะโคโมโดบอกฉันว่าใบรับรองไวด์การ์ดสำหรับ * .example.com จะปลอดภัยเช่นรูทโดเมน example.com ดังนั้นด้วยใบรับรองเดียวทั้ง my.example.com และ example.com จึงปลอดภัยโดยไม่มีคำเตือนจากเบราว์เซอร์

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

เมื่อฉันเปรียบเทียบใบรับรองนี้กับสถานการณ์ที่คล้ายกันอื่น ๆ ฉันเห็นว่าในสถานการณ์ที่ทำงานโดยไม่มีข้อผิดพลาด Subject Alternative Name (SAN) จะแสดงรายการทั้ง * .example.com และ example.com ในขณะที่ใบรับรองล่าสุดจาก Comodo แสดงเฉพาะรายการ * example.com เป็นชื่อสามัญและไม่ example.com เป็นชื่อสำรองของหัวเรื่อง

ทุกคนสามารถยืนยัน / ชี้แจงว่าโดเมนหลักควรอยู่ในรายละเอียดของ SAN หรือไม่หากมีการรักษาความปลอดภัยอย่างถูกต้องด้วย

เมื่อฉันอ่านสิ่งนี้: http://www.digicert.com/subject-alternative-name.htmดูเหมือนว่า SAN จะต้องแสดงรายการทั้งสองเพื่อที่จะทำงานตามที่ฉันต้องการ ประสบการณ์ของคุณคืออะไร

ขอบคุณมาก ๆ.

คำตอบ:


72

มีความไม่สอดคล้องกันระหว่างการใช้งาน SSL เกี่ยวกับวิธีจับคู่ไวด์การ์ดอย่างไรก็ตามคุณจะต้องใช้รูทเป็นชื่อสำรองเพื่อให้สามารถทำงานกับไคลเอนต์ส่วนใหญ่ได้

สำหรับ*.example.comใบรับรอง

  • a.example.com ควรผ่าน
  • www.example.com ควรผ่าน
  • example.com ไม่ควรผ่าน
  • a.b.example.com อาจผ่านขึ้นอยู่กับการใช้งาน (แต่อาจไม่)

โดยพื้นฐานแล้วมาตรฐานบอกว่า*ควรตรงกับอักขระที่ไม่ใช่จุด 1 ตัวหรือมากกว่า แต่การใช้งานบางอย่างอนุญาตให้มีจุด

คำตอบที่ยอมรับได้ควรอยู่ในRFC 2818 (HTTP Over TLS) :

การจับคู่ดำเนินการโดยใช้กฎการจับคู่ที่ระบุโดย [RFC2459] หากมีข้อมูลประจำตัวมากกว่าหนึ่งประเภทที่ระบุมีอยู่ในใบรับรอง (เช่นชื่อ dNSName มากกว่าหนึ่งชื่อการจับคู่ในชุดใดชุดหนึ่งถือว่าเป็นที่ยอมรับได้) ชื่ออาจมีอักขระตัวแทน * ซึ่งถือว่าตรงกับชื่อใด ๆ คอมโพเนนต์ชื่อโดเมนหรือส่วนของคอมโพเนนต์ เช่น*.a.comตรงกับ foo.a.com แต่ไม่ใช่ bar.foo.a.com f*.comจับคู่ foo.com แต่ไม่ใช่ bar.com

RFC 2459พูดว่า:

  • อาจใช้อักขระตัวแทน "*" เป็นองค์ประกอบชื่อซ้ายที่สุดในใบรับรอง ตัวอย่างเช่น*.example.comจะจับคู่ a.example.com, foo.example.com เป็นต้น แต่จะไม่ตรงกับ example.com

หากคุณต้องการใบรับรองเพื่อทำงานกับ example.com, www.example.com และ foo.example.com คุณต้องมีใบรับรองที่มี subjectAltNames เพื่อให้คุณมี "example.com" และ "* .example.com" (หรือตัวอย่าง .com และชื่ออื่น ๆ ทั้งหมดที่คุณอาจต้องจับคู่)



6

ผู้ให้บริการ SSL ทุกคนที่ฉันเคยใช้จะเพิ่มโดเมนรูทเป็นชื่อสำรองของหัวเรื่องในใบรับรอง SSL แบบ wildcard โดยอัตโนมัติดังนั้น DOMAIN.COM จะทำงานโดยอัตโนมัติสำหรับใบรับรองตัวแทน * .DOMAIN.COM


8
สิ่งนี้ไม่เป็นความจริงสำหรับ AWS Certificate Manager ณ วันที่ 2017-09-20
pho3nixf1

ไม่มีโดเมน "รูท" สำหรับใบรับรอง SAN ซึ่งสามารถรักษาความปลอดภัยหลายโดเมนรูต
Jez

-3

ใบรับรองไวด์การ์ดถูกสร้างขึ้นอย่างสมบูรณ์แบบสำหรับ* .example.com เพื่อให้โดเมนย่อยและโดเมนของคุณปลอดภัยด้วยใบรับรองนี้สิ่งที่คุณต้องทำคือติดตั้งใบรับรองเดียวกันบนเซิร์ฟเวอร์ที่ชี้ไปที่โดเมนเหล่านี้

ตัวอย่างเช่นคุณมีใบรับรองไวด์การ์ดสำหรับ * .example.com one.example.com - เซิร์ฟเวอร์ 1 example.com - เซิร์ฟเวอร์ 2

คุณต้องติดตั้งใบรับรองนี้บนเซิร์ฟเวอร์ 1 และเซิร์ฟเวอร์ 2

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.