เป็นไปได้หรือไม่ที่จะมีใบรับรอง SSL สำหรับที่อยู่ IP ไม่ใช่ชื่อโดเมน


282

ฉันต้องการให้เว็บไซต์ของฉันใช้ URL ที่ต้องการhttp://192.0.2.2/...และhttps://192.0.2.2/...สำหรับเนื้อหาแบบคงที่เพื่อหลีกเลี่ยงคุกกี้ที่ไม่จำเป็นตามคำขอและหลีกเลี่ยงคำขอ DNS เพิ่มเติม

มีวิธีการขอรับใบรับรอง SSL สำหรับจุดประสงค์นี้หรือไม่?


3
คำถามนี้อาจเป็นที่สนใจ: คุณทำได้ แต่ที่อยู่ IP ควรอยู่ในรายการ SAN ของประเภทที่อยู่ IP ไม่ใช่ใน CN ของหัวเรื่อง DN
บรูโน่

14
LetsEncrypt ไม่ทำเช่นนั้น "" "" xxxx เป็นที่อยู่ IP ผู้ออกใบรับรอง Let's เข้ารหัสจะไม่ออกใบรับรองสำหรับที่อยู่ IP "" "
kommradHomer

1
ฟอรัมเบราว์เซอร์ C / A มีนโยบายการออกชุดหนึ่งชุด เห็นได้ชัดว่ามันถูกตามด้วยเบราว์เซอร์ CA / B ไม่อนุญาตให้ใช้ที่อยู่ IP อีกต่อไป นโยบายการออกชุดอื่นนั้นได้รับการดูแลโดย IETF PKI ของ IETF เรียกว่า PKIX PKIX อนุญาตให้ใช้ที่อยู่ IP PKIX นั้นตามด้วยซอฟต์แวร์ [ฟรี?] ส่วนใหญ่เช่น cURL และ Wget ฉันไม่สามารถเข้าใจใบรับรอง1.1.1.1ได้ ควรห้ามตามนโยบายของ CA / B บางที CA / B เปลี่ยนนโยบายของพวกเขา
jww

คำตอบ:


170

ตามคำตอบนี้เป็นไปได้ แต่ไม่ค่อยได้ใช้

สำหรับวิธีรับ: ฉันมักจะลองและสั่งซื้อกับผู้ให้บริการที่คุณเลือกและป้อนที่อยู่ IP แทนโดเมนระหว่างกระบวนการสั่งซื้อ

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

ฉันไม่คิดว่าความคิดของคุณเหมาะสมจากมุมมองการเพิ่มประสิทธิภาพ


9
AFAIK, 1 ครั้งต่อนาที (แคช DNS ของ Firefox) และ 1 ครั้งต่อ 30 นาทีสำหรับ IE สิ่งนี้แตกต่างจาก TTL ของระเบียน DNS นอกจากนี้ยังใช้เวลาประมาณ 20ms สำหรับฉันขึ้นอยู่กับโดเมนและความเร็วของเซิร์ฟเวอร์ NS (ซึ่งต้องแก้ไขก่อน :)) ฉันต้องการหลีกเลี่ยงคุกกี้ที่มีความยาวของฉัน (คุกกี้ auth + Google Analytics ของฉัน) สำหรับคำขอแบบคงที่แต่ละรายการ ดังนั้นการใช้ IP แทนที่จะซื้อโดเมนแยกต่างหากเป็นสิ่งที่ดี BTW, stackoverflow, basecamphq ใช้โดเมนแยกต่างหากสำหรับเนื้อหาสแตติก การใช้ IP แทนจะเป็นการลบคำขอ DNS ที่ไม่จำเป็นออกไปด้วย
Evgenyt

12
ฉันเห็นจุดของคุณกับคุกกี้อย่างแน่นอนคุณพูดถูก แต่การเปลี่ยนมาใช้ SSL IP เพื่อบันทึก ms ค้นหา DNS สักสองสามฟังดูจะรบกวนฉันมากกว่าคุ้มค่า นอกจากนี้คุณอาจมีปัญหาในการใช้ IP กับคุณหากคุณจำเป็นต้องเปลี่ยนผู้ให้บริการของคุณ - อาจเป็นไปไม่ได้ การย้ายโดเมนนั้นง่ายกว่ามากและควรย้ายใบรับรองโดยง่ายครึ่งทาง
Pekka

2
เครื่องมือ Page Speed ​​ของ Google แนะนำเสมอ "ให้บริการทรัพยากร JavaScript ต่อไปนี้จากโฮสต์เดียวกันกับเอกสารหลัก (xxxx.com) หรือเลื่อนการโหลดทรัพยากรเหล่านี้หากเป็นไปได้" ฉันไม่ได้จัดอันดับเครื่องมือ Page Speed ​​ว่าเป็นคัมภีร์ไบเบิล แต่อย่างไรก็ตามนั่นหมายความว่าฉันไม่ได้คิดค้นการเพิ่มประสิทธิภาพ DNS ฉันแค่พยายามทำให้รายการตรวจสอบ Page Speed ​​เป็นสีเขียวที่สุด
Evgenyt

11
@Evgenyt: ฉันไม่คิดว่าเป็นเพราะการค้นหา DNS ซึ่งตามที่ระบุไว้ถูกแคชไว้ในหลาย ๆ ระดับซึ่งมันไม่สามารถเป็นปัญหาด้านประสิทธิภาพได้ มีโอกาสมากขึ้นที่จะเปิดใช้งานเบราว์เซอร์เพื่อส่งคำขอ เปิดการเชื่อมต่อกับโฮสต์ค้างไว้ดังนั้นหลีกเลี่ยงการตั้งค่าการเชื่อมต่อเพิ่มเติม
vdstw

5
ฉันเห็นด้วยกับคำตอบ นอกจากนี้เราพบปัญหากับการกำหนดค่าดังกล่าว ปรากฏว่าเบราว์เซอร์ Chrome (39.0.2171.93) บน Android OS (4.4,5.0; ใช้งานได้กับ 4.0,4) จะไม่เล่นไฟล์เสียงผ่าน HTTPS หากใช้ที่อยู่ IP เป็นเป้าหมายใบรับรอง เราเคยใช้การกำหนดค่าดังกล่าวสำหรับสภาพแวดล้อมการทดสอบของเรา แต่จะเริ่มใช้ชื่อโดเมน
เพิ่ม

58

คำตอบสั้น ๆ คือใช่ตราบใดที่เป็นที่อยู่ IP สาธารณะ

ไม่อนุญาตการออกใบรับรองไปยังที่อยู่ IP ที่สงวนไว้และใบรับรองทั้งหมดที่ออกให้กับที่อยู่ IP ที่สงวนไว้ก่อนหน้านี้ถูกเพิกถอนตั้งแต่วันที่ 1 ตุลาคม 2559

ตามฟอรัม CA Browser อาจมีปัญหาความเข้ากันได้กับใบรับรองสำหรับที่อยู่ IP เว้นแต่ว่าที่อยู่ IP จะอยู่ในทั้งสองcommonNameและsubjectAltNameฟิลด์ นี่เป็นเพราะการใช้งาน SSL แบบดั้งเดิมซึ่งไม่สอดคล้องกับ RFC 5280 โดยเฉพาะ Windows OS ก่อน Windows 10


แหล่งที่มา:

  1. คำแนะนำเกี่ยวกับที่อยู่ IP ในฟอรัมเบราว์เซอร์ CA
  2. ความต้องการพื้นฐาน 1.4.1ฟอรัมเบราว์เซอร์ CA
  3. ชื่อสามัญ (ไม่ช้า) ไม่ธรรมดาชื่อ unmitigatedrisk.com
  4. RFC 5280 IETF

หมายเหตุ: รุ่นก่อนหน้าของคำตอบนี้ระบุว่าใบรับรองที่อยู่ IP ทั้งหมดจะถูกเพิกถอนในวันที่ 1 ตุลาคม 2559 ขอบคุณ Navin สำหรับการชี้ให้เห็นข้อผิดพลาด


5
ไม่เป็นความจริง, globalsign ยังคงออกใบรับรองสำหรับ IP ฟอรัมผู้ออกใบรับรอง / เบราว์เซอร์ไม่ชอบดู IP ส่วนตัวใน certs แต่ไม่มีอะไรเทียบกับ IP สาธารณะ
Navin

1
ดูเหมือนว่าข้อมูลของฉันอาจจะล้าสมัย ฉันจะตรวจสอบเพิ่มเติมและแก้ไขหากคุณถูกต้อง
ทะเบียน

ไม่เป็นความจริงดูที่1.1.1.1 พวกเขาได้รับใบรับรอง SSL สำหรับ ip ในปี 2019 และใช้ได้กับ 2021 จาก DigiCert
Bronze man

@bronzeman ที่เป็นที่อยู่ IP สาธารณะใช่คุณสามารถรับใบรับรองได้ ที่อยู่เท่านั้นที่ไม่สามารถออกใบรับรองได้คือen.wikipedia.org/wiki/Reserved_IP_addresses
regdoug

@DustWolf ต่อ RFC 5280 "เมื่อส่วนขยาย subjectAltName มี iPAddress ที่อยู่จะต้องเก็บไว้ในสตริง octet ใน" network byte order "ตามที่ระบุไว้ใน [RFC791] ... สำหรับ IP version 4 ... , สตริง octet ต้องมีอ็อกเท็ตสี่ตัว " ในระยะสั้นคุณไม่สามารถใช้เครือข่ายย่อยในฟิลด์
subjectAltName

31

คำตอบที่ฉันเดาคือใช่ ตรวจสอบลิงค์นี้สำหรับตัวอย่าง

การออกใบรับรอง SSL ไปยังที่อยู่ IP สาธารณะ

โดยทั่วไปแล้วใบรับรอง SSL จะออกให้กับชื่อโดเมนที่ผ่านการรับรองโดยสมบูรณ์ (FQDN) เช่น " https://www.domain.com " อย่างไรก็ตามบางองค์กรต้องการใบรับรอง SSL ที่ออกให้กับที่อยู่ IP สาธารณะ ตัวเลือกนี้ช่วยให้คุณระบุที่อยู่ IP สาธารณะเป็นชื่อสามัญในคำขอลงนามใบรับรอง (CSR) ของคุณ ใบรับรองที่ออกให้นั้นสามารถใช้เพื่อรักษาความปลอดภัยการเชื่อมต่อโดยตรงกับที่อยู่ IP สาธารณะ (เช่นhttps://123.456.78.99 )


5
มันทำงานด้วย IP ส่วนตัวคงที่เช่นกัน? ชอบ LAN หรือไม่?
นาย Bonjour

@Klaus Byskov Pedersen คุณช่วยกรุณาให้ข้อมูลเกี่ยวกับวิธีการทำเช่นนี้กับฉันได้ไหม
reyhane

2
@ShivSingh แหล่งใดบ้าง ฉันไม่คิดว่า CA ที่รู้จักกันดีใด ๆ จะออกใบรับรองไปยังที่อยู่ IP ส่วนตัว
Franklin Yu

22

อ๋อ Cloudflare ใช้สำหรับโฮมเพจคำแนะนำ DNS: https://1.1.1.1


8
นี่ไม่ใช่สิ่งที่ดูเหมือน หากคุณตรวจสอบใบรับรองCommon Nameฟิลด์จะเป็นcloudflare-dns.comและ1.1.1.1อยู่ในรายการภายใต้Certificate Subject Alt Nameเท่านั้น
bitinerant

3
@ bitinerant ชื่อสามัญจะถูกเพิกเฉยหากชื่อ Alterntive Subject ปรากฏขึ้น ในความเป็นจริงชื่อสามัญเลิกใช้แล้วและมีเพียง SAN เท่านั้นที่เกี่ยวข้องจริงๆ
Yogu

3

ฟอรัมเบราว์เซอร์ C / A ตั้งค่าสิ่งที่เป็นและไม่ถูกต้องในใบรับรองและสิ่งที่ CA ควรปฏิเสธ

ตามข้อกำหนดพื้นฐานสำหรับเอกสารการออกและการจัดการใบรับรองสาธารณะที่เชื่อถือได้ CA ต้องตั้งแต่ปี 2558 ไม่ออกหนังสือรับรองที่ชื่อสามัญหรือฟิลด์ชื่อสำรองทั่วไปประกอบด้วย IP ที่สงวนไว้หรือชื่อภายในซึ่งที่อยู่ IP ที่สำรองไว้เป็น IP IANA แสดงว่าสงวนไว้ซึ่งรวมถึง NAT IP ทั้งหมดและชื่อภายในเป็นชื่อใด ๆ ที่ไม่ได้รับการแก้ไขใน DNS สาธารณะ

สามารถใช้ที่อยู่ IP สาธารณะได้ (และเอกสารข้อกำหนดพื้นฐานจะระบุชนิดของการตรวจสอบที่ CA ต้องดำเนินการเพื่อให้แน่ใจว่าผู้สมัครเป็นเจ้าของ IP)


0

ทั้งหมดขึ้นอยู่กับผู้ออกใบรับรองที่ออกใบรับรอง

เท่าที่ Let's Encrypt CA พวกเขาจะไม่ออกใบรับรอง TLS ในที่อยู่ IP สาธารณะ https://community.letsencrypt.org/t/certificate-for-public-ip-without-domain-name/6082

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

curl -v -u <username>:<password> "https://IPaddress/.."

ป้อนคำอธิบายรูปภาพที่นี่

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