การเซ็นใบรับรองของส่วนข้อมูลแบบอนุกรมของ PowerShell ใน Exchange Server

นำไปใช้กับ
Exchange Server 2019 Exchange Server 2016 Exchange Server 2013

สรุป

ตั้งแต่การอัปเดตความปลอดภัย (SU) ประจําเดือนมกราคม 2023 สําหรับ Microsoft Exchange Server เราได้เปิดตัวฟีเจอร์ใหม่ที่ช่วยให้ผู้ดูแลระบบสามารถกําหนดค่าการเซ็นชื่อตามใบรับรองของส่วนข้อมูลแบบอนุกรมของ PowerShell ได้ ฟีเจอร์นี้จะต้องเปิดใช้งานด้วยตนเองโดยผู้ดูแลระบบ Exchange Server หลังจากติดตั้ง SU บนเซิร์ฟเวอร์ที่ใช้ Exchange ทั้งหมด บทความนี้มีขั้นตอนในการเปิดใช้งานการรับรองโดยใช้ใบรับรองของข้อมูลแบบอนุกรมของ PowerShell ใน Exchange Server

ข้อกำหนดเบื้องต้น

ข้อกําหนดเบื้องต้นเพื่อเปิดใช้งานฟีเจอร์นี้:

  • ตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ที่ใช้ Exchange ทั้งหมดในสภาพแวดล้อมของคุณได้ติดตั้ง SU เดือนมกราคม 2023 หรือ SU ที่ใหม่กว่า ถ้าคุณเปิดใช้งานฟีเจอร์นี้ก่อนที่คุณจะอัปเดตเซิร์ฟเวอร์ทั้งหมด อาจเกิดความล้มเหลวในการดีซีเรียลไลซ์และทําให้เกิดปัญหาอื่นๆ
  • ตรวจสอบให้แน่ใจว่าใบรับรองการรับรองความถูกต้อง Exchange Server ที่ถูกต้องได้รับการกําหนดค่าและพร้อมใช้งานบนเซิร์ฟเวอร์ที่ใช้ Exchange ทั้งหมด (ยกเว้นเซิร์ฟเวอร์ Edge Transport) ก่อนและหลังจากที่คุณเปิดใช้งานการรับรองใบรับรอง

คุณสามารถเรียกใช้ MonitorExchangeAuthCertificate.ps1 สคริปต์เพื่อตรวจสอบใบรับรองการรับรองความถูกต้องที่ถูกต้องบนเซิร์ฟเวอร์ที่ใช้ Exchange ในสภาพแวดล้อมของคุณ สคริปต์ยังตรวจสอบว่าใบรับรองการรับรองความถูกต้องจะหมดอายุภายในเวลาน้อยกว่า 60 วันหรือไม่ และสามารถช่วยคุณหมุนเวียนใบรับรองได้ สําหรับข้อมูลเพิ่มเติมเกี่ยวกับ MonitorExchangeAuthCertificate.ps1ตรวจสอบ Exchange AuthCertificate

เมื่อต้องการตรวจสอบความพร้อมใช้งานและความถูกต้องของใบรับรองการรับรองความถูกต้องด้วยตนเอง ให้ดูความ พร้อมใช้งานและความถูกต้องของใบรับรองการรับรองความถูกต้อง

เราขอแนะนําให้คุณใช้ส MonitorExchangeAuthCertificate.ps1 คริปต์ (หรือสร้างสคริปต์ใหม่ หากจําเป็น) ทั้งนี้เนื่องจากสคริปต์ยังสามารถต่ออายุใบรับรองการรับรองความถูกต้องที่หมดอายุแล้วได้ สคริปต์มีโหมดการดําเนินการด้วยตนเอง (ตรวจสอบความพร้อมของใบรับรองการรับรองความถูกต้อง หรือตรวจสอบและดําเนินการ หากจําเป็น) สคริปต์ยังมีโหมดอัตโนมัติที่ทํางานโดยใช้ Windows Task Scheduler

การแก้ปัญหา

สําหรับเซิร์ฟเวอร์ที่ใช้ Exchange Server 2019 หรือ Exchange Server 2016 (อัปเดตเป็น SU เดือนมกราคม 2023 หรือใหม่กว่า)

  1. เรียกใช้ cmdlet ต่อไปนี้ใน Exchange Management Shell (EMS) บนเซิร์ฟเวอร์ที่ใช้ Exchange Server ในสภาพแวดล้อมของคุณ:

    New-SettingOverride -Name "EnableSigningVerification" -Component Data -Section EnableSerializationDataSigning -Parameters @("Enabled=true") -Reason "Enabling Signing Verification"

    cmdlet นี้เปิดใช้งานเซิร์ฟเวอร์ทั้งหมดที่ใช้งาน Exchange Server 2019, 2016 หรือ 2013 ในสภาพแวดล้อมของคุณสําหรับการลงนามใบรับรองของส่วนข้อมูลแบบอนุกรมของ PowerShell คุณไม่จําเป็นต้องเรียกใช้ cmdlet บนทุกเซิร์ฟเวอร์

  2. รีเฟรชอาร์กิวเมนต์ VariantConfiguration โดยการเรียกใช้ cmdlet ต่อไปนี้:
      
    Get-ExchangeDiagnosticInfo -Process Microsoft.Exchange.Directory.TopologyService -Component VariantConfiguration -Argument Refresh 

  3. เมื่อต้องการนําการตั้งค่าใหม่ไปใช้ ให้เริ่มระบบ World Wide Web Publishing Service และ Windows Process Activation Service (WAS) ใหม่ เมื่อต้องการดําเนินการนี้ ให้เรียกใช้ cmdlet ต่อไปนี้:

    Restart-Service -Name W3SVC, WAS -Force 

    หมายเหตุ

    เริ่มบริการเหล่านี้ใหม่บนเซิร์ฟเวอร์ที่ใช้ Exchange Server ซึ่งมีการตั้งค่าแทนที่ cmdlet ทํางานอยู่

สําหรับเซิร์ฟเวอร์ที่ใช้ Exchange Server 2013

ถ้าคุณมีเซิร์ฟเวอร์ที่ใช้ Microsoft Exchange Server 2013 ในสภาพแวดล้อมของคุณ คุณต้องกําหนดค่ารีจิสทรีคีย์บนแต่ละเซิร์ฟเวอร์ ระบุการตั้งค่าต่อไปนี้

รีจิสทรีคีย์:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ExchangeServer\v15\Diagnostics

ค่า: EnableSerializationDataSigning

ประเภท: สตริง

ข้อมูล: 1

เมื่อต้องการสร้างค่ารีจิสทรีบนเซิร์ฟเวอร์ที่ใช้ Exchange Server 2013 ให้เรียกใช้ cmdlet ต่อไปนี้:

  • New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\ExchangeServer\v15\Diagnostics -Name "EnableSerializationDataSigning" -Value 1 -Type String

เมื่อต้องการนําการตั้งค่าใหม่ไปใช้ ให้เริ่มระบบ World Wide Web Publishing Service และ Windows Process Activation Service (WAS) ใหม่ เมื่อต้องการดําเนินการนี้ ให้เรียกใช้ cmdlet ต่อไปนี้:

  • Restart-Service -Name W3SVC, WAS -Force

หมายเหตุ

เริ่มบริการเหล่านี้ใหม่บนเซิร์ฟเวอร์ที่ใช้ Exchange Server 2013 ทั้งหมดในสภาพแวดล้อมของคุณที่มีการเปลี่ยนแปลงรีจิสทรี

ปัญหาที่ทราบแล้ว

  • ถ้าความสามารถในการลงชื่อข้อมูลแบบซีเรียลไลซ์ถูกเปิดใช้งาน ใบรับรองการรับรองความถูกต้องที่หมดอายุจะป้องกันไม่ให้ cmdlet Get-ExchangeCertificate ส่งคืนรายละเอียดใบรับรอง

  • หลังจากติดตั้งแพคเกจโปรแกรมปรับปรุงความปลอดภัยประจําเดือนมกราคม 2023 หรือเดือนกุมภาพันธ์ 2023 สําหรับ Microsoft Exchange Server 2019, 2016 หรือ 2013 และเปิดใช้งานการเซ็นใบรับรองของส่วนข้อมูลแบบอนุกรมของ PowerShell กล่องเครื่องมือและตัวแสดงคิว Exchange จะไม่เริ่มทํางาน สําหรับข้อมูลเพิ่มเติม ให้ดู กล่องเครื่องมือ Exchange และตัวแสดงคิวล้มเหลวหลังจากการลงชื่อเข้าใช้ใบรับรองของส่วนข้อมูลแบบซีเรียลไลซ์ของ PowerShell ถูกเปิดใช้งาน (KB5023352)

  • ถ้าเปิดใช้งานความสามารถในการเซ็นชื่อข้อมูลแบบซีเรียลไลซ์ cmdlet Get-ExchangeCertificate จะไม่ส่งกลับค่าที่มองเห็นได้เมื่อทํางานบนคอมพิวเตอร์ที่มีเครื่องมือการจัดการ Exchange ติดตั้งอยู่ แต่ไม่มีบทบาท Exchange Server อื่น ปัญหานี้จะเกิดขึ้นโดยไม่คํานึงว่าใบรับรองการรับรองความถูกต้องถูกต้องหรือไม่

  • สคริปต์บางสคริปต์ที่รวมอยู่ใน Exchange Server (ตัวอย่างเช่น RedistributeActiveDatabases.ps1) จะทํางานไม่ถูกต้องถ้าเงื่อนไขต่อไปนี้เป็นจริง

    • ฟีเจอร์การรับรองส่วนข้อมูลแบบอนุกรมของ PowerShell ถูกเปิดใช้งาน
    • คุณไม่ได้ใช้กลุ่มความปลอดภัยเริ่มต้นที่ Exchange RBAC มีให้
    • ผู้ใช้ที่เรียกใช้สคริปต์ไม่ได้เป็นสมาชิกของกลุ่มบทบาทการจัดการองค์กร