ใบรับรอง SSL หายไป IIS


19

ฉันกำลังพยายามนำเข้าใบรับรองไปยัง IIS ทุกอย่างก็โอเคบน MMC (Windows Console) ฉันเสร็จตัวช่วยสร้างและดูเหมือนว่าจะเป็นสิ่งที่ถูกต้อง แต่เมื่อฉันรีเฟรชรายการใบรับรองหรือย้ายไปที่หน้าจออื่นของ IIS ใบรับรองจะหายไปจากรายการ

ฉันไม่ทราบว่าปัญหาคืออะไร ฉันควรทำอย่างไร


คำตอบส่วนใหญ่ครอบคลุมประเด็นสำคัญ (คีย์ส่วนตัวนั้นหายไป) และฉันมีโพสต์บล็อกเพื่อเปิดเผยข้อมูลพื้นหลังเพิ่มเติมblog.lextudio.com/…
Lex Li

คำตอบ:


13

ปัญหานี้เกิดขึ้นเมื่อใบรับรองที่นำเข้าไม่มีคีย์ส่วนตัวที่เกี่ยวข้อง หากมีคนพยายามที่จะนำเข้าใบรับรองระดับโดเมนไปยัง IIS แล้วเราจะไม่สามารถนำเข้าได้หากใบรับรองไม่มีรหัสส่วนตัวที่เกี่ยวข้องและจะทำให้ใบรับรองหายไปเมื่อรีเฟรช

วิธีแก้ปัญหาคือการนำเข้าไฟล์. CER ไปยังระบบของคุณ (จากที่มีการร้องขอใบรับรอง) เก็บบุคลากรและส่งออกด้วยรหัสส่วนตัว จากนั้นคัดลอกไฟล์. pfx ไปยังเซิร์ฟเวอร์ที่ต้องการและนำเข้าจากตัวเลือกใบรับรองเซิร์ฟเวอร์ภายใต้ IIS นี่จะแก้ไขปัญหา


1
บางคนไม่ใช้ Windows เพื่อขอใบรับรองดังนั้นโซลูชันอาจไม่ช่วยพวกเขา พวกเขาควรอ้างถึงคำตอบอื่น ๆ เพื่อสร้างไฟล์. pfx ด้วยเครื่องมือเช่น OpenSSL
Lex Li

3

ฉันมีปัญหานี้หลายครั้ง หากใช้ NetworkSolutions SSL การแก้ไขคือ:

  1. ไปที่ MMC Certificate Manager
  2. ดูใบรับรองส่วนบุคคลและลบใบรับรองที่เป็น "หายไป"
  3. จากนั้นดู "คำขอลงทะเบียนใบรับรอง" และคลิกขวาเพื่อส่งออก
  4. เลือก "ใช่ส่งออกด้วยรหัสส่วนตัว

สิ่งนี้จะช่วยให้คุณสามารถส่งออกไฟล์. pfx ที่คุณสามารถนำเข้าจากตัวจัดการ IIS 7 อย่าลืมกลับไปที่ MMC Certificate Manager และเลือก "ใบรับรองส่วนบุคคล" และภายในคุณสมบัติเพิ่ม "ชื่อที่จำง่าย" กลับเข้าไปใหม่เพื่อให้แสดงภายใน IIS Manager


โซลูชันของฉันกำลังลากใบรับรองที่มีคีย์ส่วนตัวจาก "ผู้ออกใบรับรองระดับกลาง" ถึง "ใบรับรองส่วนบุคคล" ใน mmc โดยกด Ctrl (คัดลอกใบรับรอง)
Bruce

ฉันสามารถส่งออก. pfx ได้ (ขอให้ฉันใช้รหัสผ่านเพื่อป้องกันรหัสส่วนตัว) การส่งออกทำงานได้ แต่เมื่อฉันพยายามนำเข้าสู่ IIS มันบอกว่าล้มเหลวในการถอดรหัสไฟล์
Alejandro Lozdziejski

1

นี่คือใน IIS 6 หรือ IIS 7 หรือไม่ คุณนำเข้ามาในคอนโซล MMC หรือ IIS หรือไม่ ลองนำเข้ามาในคอนโซล MMC ก่อนจากนั้นเลือกใน IIS ตรวจสอบให้แน่ใจว่าไฟล์ที่คุณกำลังนำเข้านั้นเป็นไฟล์. pfx ที่มีรหัสส่วนตัว


1

ฉันมีปัญหานี้เช่นกันและแก้ไขได้โดยใช้ OpenSSL เพื่อสร้างไฟล์. pfx ที่ถูกต้อง คำแนะนำสำหรับสิ่งนี้สามารถพบได้ที่นี่


1
มันเป็นทางออกเดียวที่ทำงานกับฉัน
Shiko

1

หากเซิร์ฟเวอร์ไม่มีคีย์ส่วนตัวที่เชื่อมโยงกับใบรับรองที่นำเข้าใบรับรองจะหายไปเมื่อรีเฟรช (และจะไม่พร้อมใช้งานสำหรับการผูก)

คุณสามารถตรวจสอบใน mmc - ใบรับรอง - ร้านค้าส่วนบุคคลและยืนยันว่ามีการติดตั้งใบรับรอง แต่ไม่มีคีย์ส่วนตัว

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

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


0

ใช้โปรแกรมจัดการใบรับรองเพื่อนำเข้าไฟล์ จากที่นั่นให้ลองส่งออก หากคุณไม่สามารถส่งออกเป็นไฟล์ PFX ได้ฉันเชื่อว่านั่นหมายความว่าไม่มีรหัสส่วนตัวในใบรับรอง คุณอาจดาวน์โหลดผิดจาก CA ของคุณ ฉันกำลังจัดการกับ CA ของเราตอนนี้ดังนั้นฉันยังไม่แน่ใจ 100% เกี่ยวกับเรื่องนี้


0

ดังนั้นหลังจากที่ต้องดิ้นรนกับเรื่องนี้สองสามชั่วโมงให้ทำการดาวน์โหลดเวลาที่ใช้ในการรับรองทางโทรศัพท์อีกครั้งด้วยการสนับสนุนทางเทคนิคและดูทุก ๆ บล็อกที่ฉันเจอฉันก็นิ่งงัน ฉันพยายามส่งคำขอใบรับรองอีกครั้งเพื่อสร้างใบรับรองใหม่ (ไม่มีโชค) ด้วยความพยายามครั้งสุดท้ายฉันได้สร้างคำขอใบรับรองซ้ำและ rekeyed ใบรับรองและตอนนี้ก็ใช้ได้ดี ฉันไม่รู้ว่าเกิดอะไรขึ้นและฉันระมัดระวังอย่างมากในการป้อนข้อมูลของฉันทั้งสองครั้ง โซลูชันของฉันเป็นเพียงการสร้างคำขอใหม่และรับรองใบรับรองซ้ำ


ฉันแค่ต้องการที่สองสิ่งที่เดฟเขียน: rekeying ใบรับรอง ฉันมีปัญหาที่อาจเกิดจากการนำเข้าใบรับรองที่ไม่ถูกต้องใน MMC (ใบรับรองของ Intermediate Certification Authority ควรจะนำเข้าโดยใช้ MMC แต่ฉันนำเข้าใบรับรองสำหรับเว็บไซต์แทน) ฉันลบมันหลังจากที่ฉันรู้ แต่ไม่มีอะไรช่วยจนกว่าฉันจะสร้าง CSR ตามคำแนะนำของ CA (godaddy ซึ่งการสนับสนุนทางเทคนิคดีมาก) และนำเข้าใบรับรอง rekeyed ใน IIS

0

ฉันมีปัญหาเดียวกันกับ IIS cert (w / private key, .pfx) หลังจากนำเข้าสู่ MMC Local / Personal / Certificate โหนดบนเครื่อง Windows Server 2008R2

ใบรับรองนำเข้าที่ดีพูดว่าดีกับ CA ที่ดีเช่นกัน ฉันสามารถกำหนดค่าพร็อกซีเซิร์ฟเวอร์ของฉัน (TMG 2010) เพื่อใช้ใบรับรองในตัวฟังเว็บ ทุกอย่างใช้งานได้ดีและฟังเว็บและกฎต่อมาที่ใช้ฟังทั้งหมดทำงานได้ดี

หลังจากนั้นสักครู่ฉันยังไม่ได้ลองเลยใบรับรองจะหายไปจากโหนด MMC L / P / C ผู้ฟัง TMG ของฉันยังคงแสดงใบรับรองนั้นว่าเป็นใบรับรองที่กำหนดค่าให้ใช้ แต่ใบรับรองที่แท้จริงหายไป


0

ฉันพบว่าปัญหาสามารถทำซ้ำได้เมื่อมีการติดตั้งใบรับรองใบภายใต้ผู้ออกใบรับรองระดับกลาง ลบมัน (และปล่อยให้สื่อกลางจริง ๆ ถ้ามี) จากนั้นตัวช่วยสร้างการแก้ไขปัญหา


0

ตามที่ Sandeep กล่าวว่า IIS ลบใบรับรองของคุณหากไม่มีรหัสส่วนตัว ปัญหานี้มักเกิดขึ้นหากคุณใช้ IIS เพื่อสร้างการร้องขอใบรับรองจาก CA CA ของคุณไม่มีไพรเวตคีย์ (คุณมี) ดังนั้นไฟล์ไม่มีไพรเวตคีย์ เขาเป็นขั้นตอนที่แน่นอนที่คุณต้องทำ:

คุณเริ่มสร้างการร้องขอใบรับรองจาก IIS บนเซิร์ฟเวอร์ของคุณ คุณส่งไฟล์ TXT คำขอไปยังผู้ออกใบรับรองของคุณเพื่อให้พวกเขาสามารถสร้างใบรับรองให้กับคุณ

ผู้ให้บริการออกใบรับรองของคุณส่งไฟล์. CRT กลับมาให้คุณใน Windows Server เดียวกับที่คุณใช้สร้างคำขอใบรับรองใน Windows Explorer ให้คลิกเมาส์ขวาบนไฟล์. CRT ที่หน่วยงานออกใบรับรองของคุณส่งถึงคุณ

เลือกติดตั้งใบรับรองตัวช่วยสร้างการนำเข้าใบรับรองจะทำงาน

ในตัวช่วยสร้างการนำเข้าใบรับรองในที่ตั้งร้านให้เลือก Local Machine

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

ตกลงสิ่งนี้ทำให้ Windows นำเข้าใบรับรองไปยัง Windows (ไม่ใช่ไปยัง IIS) ตอนนี้คุณต้องได้รับไฟล์ PFX ที่มีรหัสส่วนตัว:

เปิดตัว Mmc

ไฟล์ - เพิ่ม / ลบ Snap-in ...

ใบรับรอง (Local Computer)

จากใบรับรอง (Local Computer) - ขยายการรับรองรูทที่เชื่อถือได้

โฟลเดอร์เจ้าหน้าที่

Selected Certificates

Noticed my imported certificate with a key logo displayed on it

เปิดใบรับรอง

ขอให้สังเกตว่าจะแสดง "คุณมีคีย์ส่วนตัวที่สอดคล้องกับใบรับรองนี้"

ตกลง

คลิกขวาที่ใบรับรอง

All Tasks --> Export

ต่อไป

ในหน้า "ส่งออกคีย์ส่วนตัว" ของตัวช่วยสร้างเลือก "ใช่ส่งออกคีย์ส่วนตัว"

ต่อไป

ตัวช่วยสร้างการส่งออกใบรับรองจะแจ้งให้คุณ - ส่งออกรูปแบบไฟล์ PKCS # 12 (.PFX)

ต่อไป

ตัวช่วยสร้างการส่งออกใบรับรองต้องการให้คุณปกป้องไฟล์ด้วยรหัสผ่าน:

ป้อนรหัสผ่านเพื่อป้องกันไฟล์

ต่อไป

เรียกดูตำแหน่งและระบุชื่อไฟล์ ไฟล์จะมีนามสกุล. PFX

จากนั้นเปิด IIS 7

เลือกเซิร์ฟเวอร์ IIS ของคุณในบานหน้าต่างด้านซ้าย (การเชื่อมต่อ)

คลิกเปิดใบรับรองเซิร์ฟเวอร์ในมุมมองคุณลักษณะ

จากบานหน้าต่าง "การทำงาน" ทางด้านขวาให้คลิกนำเข้า ...

เลือกไฟล์ PFX ที่คุณส่งออก

ระบุรหัสผ่านที่คุณใช้เพื่อป้องกัน

คลิกตกลง


0

ฉันมีปัญหาเดียวกันเมื่อเช้านี้ซึ่งฉันสามารถเพิ่มใบรับรองได้ แต่ทันทีที่ฉันคลิกรีเฟรชมันก็หายไป นี่คือวิธีที่ฉันแก้ไขมัน -:

ใช้ขั้นตอนด้านล่างเพื่อติดตั้ง ssl cert บน dev box-: ใช้ไฟล์. pfx จากกล่อง dev ของคุณไปที่เครื่องมือการจัดการ -> ตัวจัดการ IIS -> ใบรับรองเซิร์ฟเวอร์ คลิกที่นำเข้าจากบานหน้าต่างด้านขวา เรียกดูไฟล์. pfx ที่ดาวน์โหลดมาใช้รหัสผ่านตรวจสอบให้แน่ใจว่าได้เลือก "อนุญาตให้ส่งออกใบรับรองนี้" มิฉะนั้นหากคุณได้รับข้อผิดพลาดในการผูกข้อมูลในภายหลัง ไปที่ไซต์ค้นหาไซต์ของคุณคลิกการเชื่อมโยงและแก้ไข https เพื่อใช้ใบรับรอง SSL ใหม่


0

โซลูชันของ Nick Olsen ใช้งานได้สำหรับฉัน (ใบรับรอง RapidSSL) และฉันจะรวมขั้นตอนที่แน่นอนที่นี่ (มีการเชื่อมโยงหลายแห่งหนึ่งเสีย)

  1. ติดตั้ง OpenSSL จากที่นี่
  2. สร้างไฟล์ต่อไปนี้ภายในไดเรกทอรีการติดตั้ง OpenSSL (C: \ OpenSSL-Win32 \ bin โดยค่าเริ่มต้น):

    • privatekey.txt - คัดลอกและวางเนื้อหาคีย์ส่วนตัว
    • certificate.txt - คัดลอกและวางข้อความส่วนใบรับรอง
    • middle.txt - คัดลอกและวางข้อความของส่วนสื่อกลาง
  3. สร้างไฟล์. pfx โดยใช้คำสั่งต่อไปนี้

    openssl pkcs12 -export -out certificate.pfx -inkey privatekey.txt -in certificate.txt -certfile intermediate.txt
    
  4. นำเข้าไฟล์ภายในใบรับรองเซิร์ฟเวอร์ (IIS)


0

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

กระบวนการที่ถูกต้องมีดังนี้:

  1. ใน IIS คุณขอใบรับรอง (ผู้คนจำนวนมากพลาดส่วนนี้)
  2. คุณใช้รหัสที่ร้องขอจาก IIS เพื่อขอใบรับรองบนเว็บไซต์สาธารณะ (เช่น godaddy) ผู้คนจำนวนมากไม่ได้ทำตามขั้นตอนที่หนึ่งและใช้คีย์ที่สร้างแบบสุ่ม
  3. ดาวน์โหลดใบรับรองที่สร้างขึ้นโดยใช้รหัสคำขอของคุณ
  4. คุณเพิ่มใบรับรองระดับกลางในหน่วยงานผู้ออกใบรับรองท้องถิ่น (ใช้ MMC เพื่อไปที่นั่น)
  5. คุณเพิ่มใบรับรองอื่น ๆ ใน IIS
  6. คุณกำหนดค่าการรวม

นี่คือลิงค์ สร้างการร้องขอใบรับรอง

https://www.instantssl.com/ssl-certificate-support/csr-generation/iis-ssl-certificate-7x.html

https://uk.godaddy.com/help/iis-8-install-a-certificate-4951


0

ดำเนินการหากเปิดใช้งานใบรับรอง

  1. ลงชื่อเข้าใช้ Go Daddy VPS ผ่าน Remote Desktop
  2. เปิดตัวจัดการ IIS / โหนดเซิร์ฟเวอร์เน้น (บานหน้าต่างด้านซ้าย, IP ของ VPS ของคุณ) / ดับเบิลคลิกใบรับรองเซิร์ฟเวอร์ (บานหน้าต่างกลาง) / คลิกสร้างคำขอใบรับรอง / กรอก (ชื่อสามัญคือ FQDN, yourdomain.com) / เลือก Microsoft RSA SChannel และ ความยาว 2048 บิต / บันทึกเป็นไฟล์ yourdomain.txt ไปยังเดสก์ท็อป
  3. เปิดไฟล์ yourdomain.txt ที่คุณเพิ่งสร้าง / คัดลอกข้อความทั้งหมด
  4. เข้าสู่ระบบ Go Daddy จากเบราว์เซอร์ของคุณภายใน VPS ผ่านเดสก์ท็อประยะไกล / ผลิตภัณฑ์ของฉัน / SSL / ใช้เครดิต SSL ที่เปิดใช้งานของคุณ / สี่เหลี่ยมสีเทาคลิกศูนย์สี่เหลี่ยม Re-Key และจัดการ / วางข้อความลงในกล่องข้อความ / บันทึก / ส่งการเปลี่ยนแปลงที่บันทึกไว้
  5. หลังจากที่เจ้าของโดเมนได้รับการตรวจสอบแล้วให้กลับไปที่ Go Daddy / My Products / SSL Certificates / เลือก Domain นั้นใบรับรองจะถูกนำไปใช้กับ / เลือกประเภทเซิร์ฟเวอร์ (IIS) / ดาวน์โหลด / แยกไปยังเดสก์ท็อป
  6. เรียกใช้ mmc / ไฟล์ / เพิ่มลบสแน็ปอิน / ใบรับรอง / เพิ่ม / บัญชีคอมพิวเตอร์ / คอมพิวเตอร์ในท้องถิ่น / เสร็จสิ้น / ตกลง
  7. ขยายใบรับรอง (Local Computer) / คลิกขวา Intermediate Certificate Authorities / คลิกขวา / งานทั้งหมด / นำเข้า / นำเข้าไฟล์ด้วย PKCS7 # 7 จากรายการแบบหล่นลงและไฟล์นั้นจะแสดงในหน้าต่าง / ถัดไป / ตรวจสอบ "วางใบรับรองทั้งหมดในร้านค้าดังต่อไปนี้" เลือก "ผู้ออกใบรับรองระดับกลาง" / เสร็จสิ้น / ปิด / บันทึก "ไม่" / ปิดคอนโซล mmc
  8. กลับไปที่ IIS Manager / เลือกเว็บไซต์ที่กำหนดให้กับใบรับรอง (บานหน้าต่างด้านซ้าย) / การเชื่อมโยง (แผงด้านขวา) / เพิ่ม / ประเภท (https), ที่อยู่ IP (IP ของ VPS ของคุณ), พอร์ต (443) เพิ่มชื่อโดเมนของคุณ (yourdomain .com) / ใบรับรองควรแสดงในรายการแบบหล่นลงที่แสดง yourdomain.com

หมายเหตุ: ฉันจะลองดู YouTube / Sachin Sammy เกี่ยวกับวิธีการทำสคริปต์เปลี่ยนเส้นทางจาก http ไปยัง https

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