ทำไม OS X จะไม่เชื่อถือใบรับรอง SSL ของ GitHub


68

เมื่อฉันไปที่หน้า github.com ใน Chrome ฉันได้รับข้อผิดพลาดที่น่าเกลียดมาก:

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

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

สิ่งเดียวกันที่เกิดขึ้น (ใน Chrome และมีขด) เมื่อฉันไปhttps://www.digicert.com/เกินไป ปัญหาประหลาดนี้เริ่มต้นเมื่อประมาณหนึ่งสัปดาห์ครึ่งที่แล้ว

นี่คือสิ่งที่ฉันเห็นเมื่อฉันคลิกที่ไอคอนล็อคที่ใช้งานไม่ได้ในแถบที่อยู่:

GitHub.com เสีย ข้อมูลใบรับรอง GitHub.com

แต่ gist.github.com ใช้งานได้ดี:

Gist.GitHub.com ใช้งานได้ Gist.GitHub.com ข้อมูลใบรับรอง

มันไม่ทำงานกับ curl อย่างใดอย่างหนึ่ง:

มันไม่ทำงานกับ curl

ทุกอย่างทำงานได้ดีใน Firefox

ฉันจะแก้ไขปัญหา CA รูตของฉันได้อย่างไร

นี่คือสิ่งที่ดูเหมือนใน Firefox:

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

ปรับปรุง:

ฉันสังเกตเห็นว่าใบรับรองแรกในกลุ่มนั้นแตกต่างกันใน Chrome / Safari ที่หักของฉันเมื่อเทียบกับ Chrome ในคอมพิวเตอร์เครื่องอื่นของฉัน

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

(ไม่มี X สีแดงที่น่ารังเกียจอีกต่อไปเพราะฉันเชื่อถือใน Safari) ดูว่าผู้ออกแตกต่างกันอย่างไร ฉันจะทำอะไรได้บ้าง


มีความแตกต่างระหว่าง * .github.com และ github.com คุณใช้เบราว์เซอร์ใด
Ramhound

โครเมียม. Chrome ใช้งานไม่ได้ แต่ใช้งานได้ใน Firefox มันไม่ทำงานกับ curl
เทรเวอร์ดิกซัน

คุณสามารถโพสต์ข้อมูล Firefox ที่แสดงว่าใบรับรองไม่มีข้อผิดพลาดหรือไม่?
Ramhound

เพิ่มรูปภาพ Firefox ที่ด้านล่าง
เทรเวอร์ดิกซัน

ปัญหาเดียวกันกับdigicert.comนั้นเอง
เทรเวอร์ดิกซัน

คำตอบ:


42

สิ่งนี้ใช้ได้กับฉัน:

Keychain.app > Preferences > General > Reset My Default Keychain

UPDATE

ตัวเลือกที่รุนแรงน้อยกว่าคือการลบใบรับรองDigiCertออกจากการเข้าสู่ระบบ Keychain : คุณควรมีหนึ่งในรูทพวงกุญแจอยู่แล้ว ข้อผิดพลาดนี้ดูเหมือนจะเกิดขึ้นเมื่อทั้งสองไม่ตรงกัน


2
ดูเหมือนจะรุนแรง ...
JLundell

3
ฉันเชื่อว่าการลบใบรับรองในการเข้าสู่ระบบ Keychain อาจใช้ได้เช่นกัน หากฉันเข้าใจถูกต้องแล้ว DigiCert ก็อยู่ในรูกุญแจของพวงกุญแจอยู่ดี ควรลองก่อนที่จะรีเซ็ต (แน่นอนสำรองข้อมูลอื่น ๆ ฯลฯ )
evacchi

ใช่มันใช้งานได้สำหรับฉัน ไขปริศนาว่าทำไมมันถึงอยู่ในพวงกุญแจการเข้าสู่ระบบ ในการตรวจสอบทั้งสองเวอร์ชันไม่เหมือนกัน อยากรู้ว่ารุ่นการเข้าสู่ระบบมาจากที่ใด
JLundell

เป็นการดีที่จะรู้ว่าฉันจะปรับปรุงคำตอบ
evacchi

3
นอกเหนือจาก: ปัญหาที่คล้ายกันอาจเกิดจากการมีใบรับรองหลักที่หมดอายุใน Login Keychain ของบุคคลซึ่งจะแทนที่ใบรับรองที่อัปเดตจาก System Roots หากต้องการแสดงให้เปิดใช้งาน "แสดงใบรับรองที่หมดอายุ" ในเมนู "มุมมอง"
Arjan

79

มีปัญหาใหม่ ณ วันที่ 26 กรกฎาคม 2014 เมื่อใบรับรองการแพร่กระจายแบบเก่าแบบกึ่งกว้างหมดอายุแล้ว

ขึ้นอยู่กับhttps://www.yesthatallen.com/fixing-an-old-digicert-issue/

คำแนะนำสำหรับการล้างใบรับรอง DigiCert SSL ที่หมดอายุบน OSX

 
  1. การเปิดการเข้าถึง Keychain ผ่าน Spotlight
    • ⌘-อวกาศ
    • ประเภท "การเข้าถึงพวงกุญแจ"
    • ตีกลับมา
  2. ตรวจสอบให้แน่ใจว่าใบรับรองที่หมดอายุแสดงขึ้น; เปิดใช้งาน "แสดงใบรับรองที่หมดอายุ" ในเมนู "มุมมอง"
  3. ค้นหา "Digicert"
  4. คลิกขวาที่ใบรับรองด้วยเครื่องหมาย X สีแดงและเลือก "ลบ DigiCert High Assurance EV Root CA"
  5. ใบรับรองอาจไม่ถูกลบออกจนกว่าการเข้าถึง Keychain Access จะเริ่มต้นใหม่
  6. รีสตาร์ทเบราว์เซอร์ของคุณ
คุณควรจะสามารถเข้าถึงไซต์ที่ได้รับผลกระทบอีกครั้ง

 


2
การลบใบรับรองไม่ได้ช่วยฉันรีบูตเครื่องคอมพิวเตอร์ ปัญหายังคงมีอยู่ ความคิดใด ๆ
Aviel

9
ตกลงฉันอาจลบใบรับรอง digi มากเกินไปฉันไปที่นี่digicert.com/digicert-root-certificates.htmและดาวน์โหลดใบรับรอง"DigiCert High Assurance EV Root CA" ที่ดาวน์โหลด
Aviel

1
@Aviel ขอบคุณการดาวน์โหลดและติดตั้งใบรับรองนั้นทำเพื่อฉัน
ทิมสกอตต์

1
สิ่งนี้ได้ผลเช่นเสน่ห์สำหรับฉันและยังแก้ไขปัญหาที่คล้ายกันกับซาฟารี (ตามที่คุณคาดหวัง) ฉันจำเป็นต้องรีสตาร์ท Chrome แม้ว่า
biggusjimmus

ที่ดี! สิ่งนี้ใช้ได้สำหรับฉัน ขอบคุณ @Allen Hancock :)
Mark Robson

2

คำตอบเหล่านี้ไม่เหมาะกับฉัน แต่ฉันพบใบรับรองหลักของ DigiCert ดาวน์โหลดและติดตั้งด้วยตนเองโดยคลิกที่ Finder ใน Finder

ค้นหาพวกเขาที่นี่ภายใต้การตรวจสอบที่เก็บใบรับรองระดับกลาง: https://www.digicert.com/ssl-support/windows-cross-signed-chain.htm


1

ฉันลองใช้วิธีแก้ปัญหาของจอห์น แต่ก็ไม่ได้ช่วยอะไร แม้ว่าในกรณีของฉันฉันไม่พบไอคอน "blue +" ใด ๆ ใน Class
ดังนั้นสิ่งที่ฉันทำก็คือลบไฟล์แคชทั้งสองที่แนะนำและรีบูต
ในกรณีของฉันฉันกำลังพยายามอัปเดตแอปพลิเคชันใน Macports ที่ใช้ git เพื่อเชื่อมต่อกับ github เพื่อดาวน์โหลดซอร์สและนั่นทำให้เกิดข้อผิดพลาด และฉันเห็นข้อผิดพลาดใน Safari แต่ไม่ใช่ใน Firefox

หลังจากข้างต้นฉันได้ติดต่อกับ DigiCert และพวกเขามีประโยชน์มากเกี่ยวกับการแก้ไข ใน Keychain Access-> System Roots หมวดหมู่: ใบรับรอง

DigiCert High Assurance EV Root CA-> Trust-> SSL เปลี่ยนจาก: ไม่ได้ระบุค่าเป็น: เชื่อถือได้เสมอ GTE CyberTrust Global Root-> Trust-> SSL เปลี่ยนจาก: ไม่ได้ระบุค่าเป็น: Trust เสมอ


1

สำหรับฉันปัญหาได้รับการแก้ไขโดยเริ่มยูทิลิตี้ Keychain Access การเลือก Keychain First Aid จากเมนู Keychain Access และเลือก Repair


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

0

พบปัญหากับใบรับรอง SSL ต่างๆในขณะที่กลับพบว่าสามารถใช้งานได้ 90% ของปัญหาเหล่านั้น

ลบไฟล์ /var/db/crls/crlcache.db และ /var/db/crls/ocspcache.db สามารถพบสิ่งเหล่านี้ได้โดยใช้ Finder's Go>; ไปที่เมนูโฟลเดอร์ (Cmd + Shift + G) สิ่งนี้จะรีเซ็ตแคชของใบรับรองที่ยอมรับในระบบ มันไม่ได้ลบออกมันเพียงบังคับให้ระบบสร้างแคชใหม่เมื่อรีสตาร์ท

เปิด Keychain Access (/ Applications / Utilities / Keychain Access) เลือกใบรับรองในตัวเลือกหมวดหมู่ทางด้านซ้าย ในแถบค้นหาพิมพ์คำว่า Class ดูรายการนั้นและค้นหาใบรับรองใด ๆ ที่มีสัญลักษณ์สีน้ำเงิน + อยู่เหนือไอคอน สิ่งเหล่านี้คือสิ่งที่คุณต้องการแก้ไข

เลือกอันที่มีสีน้ำเงิน + และกด Command + I คลิกสามเหลี่ยมเปิดเผยข้างรายการ“ Trust” เพื่อแสดงรายการการอนุญาต ตอนนี้สิ่งที่เราต้องทำคือการตั้งค่าใบรับรองนี้ให้ใช้ค่าเริ่มต้นของระบบ อย่างไรก็ตามด้วยเหตุผลบางอย่างเมื่อคุณเลือกมันจะไม่บันทึก ดังนั้นสิ่งที่คุณต้องทำคือ ภายใต้“ ความน่าเชื่อถือ” ซึ่งมีข้อความว่า“ Secure Sockets Layer (SSL)” ให้เปลี่ยนเมนูแบบเลื่อนลงเพื่อพูดว่า“ ไม่มีค่าที่ระบุ” จากนั้นปิดหน้าต่าง มันจะขอสิทธิ์ผู้ดูแลระบบของคุณ จากนั้นเปิดบานหน้าต่างข้อมูลสำหรับใบรับรองนั้นอีกครั้ง ภายใต้“ ความน่าเชื่อถือ” อีกครั้งให้ตั้งค่าดรอปดาวน์ที่ระบุว่า“ เมื่อใช้ใบรับรองนี้:” เพื่อพูดว่า“ ใช้ค่าเริ่มต้นของระบบ” จากนั้นคุณสามารถปิดบานหน้าต่างข้อมูลและป้อนรหัสผ่านของคุณอีกครั้ง ทำสิ่งนี้สำหรับใบรับรองใด ๆ ที่มีเครื่องหมาย + สีน้ำเงินที่ไอคอน ควรมีอย่างน้อยหนึ่งหรือสองรายการ

รีสตาร์ทระบบของคุณ

แจ้งให้เราทราบหากใช้งานได้ฉันจะอยากรู้ว่าทำงานได้หรือไม่

เนื่องจากมีการสำรองข้อมูลโดยใช้ Time Machine อยู่เสมอสาเหตุที่ทำให้แย่ลงอย่างน้อยคุณก็สามารถย้อนกลับไปได้!


0

สำหรับผู้ที่ลบใบรับรองที่หมดอายุ แต่ยังมีปัญหาอยู่ เปิดใช้การเข้าถึงพวงกุญแจไปที่รายการเมนูสำหรับมันเลือก "การปฐมพยาบาลพวงกุญแจ" เรียกใช้เช็คเรียกใช้การซ่อมแซมแล้วเรียกใช้การตรวจสอบอีกครั้งเพื่อให้แน่ใจว่า ปัญหาควรหายไป


สิ่งนี้ดูเหมือนจะเหมือนกับคำตอบของ Keith Bennettในวันที่ 6 ก.ค.
Scott

0

สิ่งนี้ช่วยฉัน:

(chrome, OsX)

  1. เปิดKeychain.app
  2. ค้นหา "digicert" ที่มุมบนขวาของ Keychain.app
  3. เลือกใบรับรอง digicert ทั้งหมดและลบออกด้วยคลิกขวาและเมนูบริบท ( http://screencast.com/t/2T4f1XQa0Xu )
  4. ไปที่นี่http://digicert.com/digicert-root-certificates.htm
  5. ค้นหาในหน้าและดาวน์โหลดใบรับรองDigiCert High Assurance EV Root CA
  6. เมื่อดาวน์โหลด - คลิกที่มันและติดตั้งลงในพวงกุญแจของคุณ
  7. รีสตาร์ท Chrome ของคุณ

0

ฉันทำตามเคล็ดลับของอัลเลน แต่มันไม่ได้ผลสำหรับฉัน ดังนั้นฉันลองสิ่งนี้ ดูเหมือนว่ามันใช้งานได้

  1. ทำตามขั้นตอนทั้งหมดของอัลเลน
  2. เปิดไซต์ที่ได้รับผลกระทบบน Safari (เช่น: github.com)
  3. มันจะทำให้คุณแจ้งเตือนกล่องนี้ คลิก 'แสดงใบรับรอง' ป้อนคำอธิบายรูปภาพที่นี่
  4. ที่ 'เมื่อใช้ใบรับรองนี้:' เลื่อนลงเลือก 'ไว้วางใจเสมอ' ดร็อปดาวน์ทั้ง 2 ด้านล่างจะเป็นไปตามกฎเดียวกันกับที่คุณเลือกไว้ที่นี่ ป้อนคำอธิบายรูปภาพที่นี่
  5. เปิด Chrome ลองเข้าใช้เว็บไซต์ที่ได้รับผลกระทบ (เช่น: github.com)

ฉันได้ลองแล้ว Facebook โหลดตามปกติ แต่ GitHub โหลดโดยไม่มี CSS ฉันได้รับโครงกระดูก github ฉันไม่รู้ว่าทำไมสิ่งนี้เกิดขึ้น แต่การเชื่อมต่อนั้นได้รับการยอมรับและโอเคแล้ว

มีไอเดียอะไรบ้าง?


0

หลังจากใช้เวลาหลายชั่วโมงพยายามแก้ไขสิ่งนี้ฉันดาวน์โหลด - ลิงก์ ;

  • DigiCert Global Root CA
  • DigiCert ความเชื่อมั่นสูง EV รูต CA
  • DigiCert Root ID การรับรอง CA

ไม่มีความคิดว่าวิธีปฏิบัติที่ดี แต่มันใช้ได้สำหรับฉัน ฉันใช้ OSX 10.9.5 และ Chrome 42.0.2311.152 (64- บิต)


0

ทำงานกับฉันใน MAC 10.10.3 1) เปิดการเข้าถึงพวงกุญแจ 2) ค้นหาDigiCert ความเชื่อมั่นสูง EV ราก CA 3) ดับเบิลคลิกที่DigiCert ความเชื่อมั่นสูง EV ราก CA 4) บน Windows DigiCert ความเชื่อมั่นสูงราก EVเลือกCA 5 ไว้วางใจด้วย เมนูเปิดเมื่อใช้ใบรับรองนี้กับ ALONES TRUST DONE


0

พบออนไลน์ด้านล่าง ฉันแน่ใจว่าเป็นเรื่องตลกเหมือนที่คุณเคยหลอกใครบางคนให้กด ALT + F4 บน Windows แต่มันใช้ได้กับฉันและเพื่อนร่วมงาน:

  1. คลิกที่ใดก็ได้ในกรอบ Chrome ที่ได้รับผลกระทบ
  2. บนแป้นพิมพ์ให้พิมพ์: อันตราย

นั่นแหล่ะโหลดหน้าเว็บ CSS ไม่โหลดดังนั้นคุณเพียงแค่ "ดูแหล่งที่มา" คลิกที่ไฟล์ css และคุณจะเห็นข้อความแสดงข้อผิดพลาดอีกครั้ง ทำซ้ำขั้นตอนข้างต้นและ CSS จะปรากฏขึ้น จากนั้นรีเฟรชหน้า Github และทุกอย่างดี

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