ใบรับรอง 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.