การเลือกใบรับรอง SSL ขึ้นอยู่กับส่วนหัวของโฮสต์: เป็นไปได้หรือไม่


17

เป็นไปได้หรือไม่ที่เว็บเซิร์ฟเวอร์จะเลือกใบรับรอง SSL ที่จะใช้ตามส่วนหัวโฮสต์ของการเชื่อมต่อขาเข้าหรือเป็นข้อมูลที่มีให้หลังจากการเชื่อมต่อ SSL สำเร็จแล้วเท่านั้น?

นั่นคือเว็บเซิร์ฟเวอร์ของฉันสามารถแสดงรายการที่พอร์ต 443 และใช้ใบรับรอง foo.com หากมีการร้องขอhttps://foo.comและใบรับรอง bar.com หากมีการร้องขอhttps://bar.comหรือฉันพยายามจะทำ มีบางสิ่งที่เป็นไปไม่ได้เพราะเซิร์ฟเวอร์จะต้องทำการเชื่อมต่อ SSL ก่อนที่มันจะรู้ว่าลูกค้าต้องการอะไร?

คำตอบ:


23

ในอดีตแถลงการณ์แรกของคุณถูกต้อง ตอนนี้มีหลายตัวเลือก:

  • ใบรับรองตัวแทนหากโดเมนย่อยภายในโดเมนเดียวกัน
  • ใบรับรอง SAN / UCC เพื่อระบุชื่อสำรองสำหรับใบรับรองจึงสามารถให้บริการหลายใบรับรองได้
  • SNI ถูกนำมาใช้เพื่อสร้างการเชื่อมต่อ SSL หลังจากส่วนหัวของโฮสต์ สิ่งนี้มีการสนับสนุนที่ จำกัด อย่างไรก็ตามเนื่องจากเป็นรุ่นใหม่กว่า

มีการตอบคำถามนี้หลายครั้งใน ServerFault ด้วยตนเองและผู้อื่น ฉันขอแนะนำให้ค้นหารายละเอียดเพิ่มเติมหากคุณมีคำถามเฉพาะ


4
ฉันไปค้นหาและไม่พบอะไรเลย นี่อาจเป็นหนึ่งในสิ่งเหล่านั้นที่ง่ายต่อการค้นหาหากคุณรู้คำตอบเพื่อให้คุณสามารถรวมไว้ในคำค้นหา ขอบคุณ
DrStalker

3
หากมีคำตอบอยู่บน ServerFault มันก็เป็นการดีที่จะเชื่อมโยงไปยังพวกเขา
organicveggie


3
SNI ไม่ได้สร้างการเชื่อมต่อ SSL หลังจากส่วนหัวของโฮสต์ แต่รวมชื่อโฮสต์ในการจับมือ SSL ไม่สำคัญหากคุณไม่ใช่ผู้พัฒนา SSL
Bart van Heukelom

การค้นหา Serverfault ให้สิ่งนี้เป็นคำตอบ นั่นหมายความว่าคำถามอื่นใดที่เป็นที่ยอมรับของคำถามนี้ซ้ำซ้อน ที่เชื่อมโยงคุณรวมถึงไม่มีผล
Ian Boyd

5

หากต้องการขยายคำตอบของวอร์เนอร์: หน้าเพจของCAcert Vhost Task Force จะเปรียบเทียบวิธีการต่างๆในการใช้หลายโดเมนบนเซิร์ฟเวอร์เดียว ผมเองใช้ชื่อเซิร์ฟเวอร์บ่งชี้


คุณรับมือกับผู้ใช้ Windows XP ผู้ใช้ Android ผู้ใช้ Blackberry และอื่น ๆ ได้อย่างไร
thomasrutter

3

คำตอบสั้น ๆ : ไม่

HTTP ถูกห่อหุ้มไว้ใน SSLดังนั้นข้อมูลใด ๆ เกี่ยวกับคำขอจะไม่สามารถเข้าถึงได้จนกว่าจะมีการสร้างการเชื่อมต่อ ดังนั้นจนกว่าจะมีการมอบใบรับรองให้กับลูกค้า ไม่มีวิธีใช้ส่วนหัวหรือข้อมูลที่เข้ารหัสอื่น ๆ เนื่องจากยังไม่มีให้ใช้งาน

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


1

หรือว่าข้อมูลนั้นจะมีให้เฉพาะหลังจากที่มีการเชื่อมต่อ SSL แล้ว?

แก้ไข. การเชื่อมต่อ SSL สร้างขึ้นก่อนที่จะส่งคำขอ HTTP (รวมส่วนหัวโฮสต์) ส่วนใดส่วนหนึ่ง


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