กำหนดค่าการป้องกันเพิ่มเติมใน Exchange Server
สภาพแวดล้อมจำนวนมากยังไม่ได้เปิดใช้งานการป้องกันแบบขยายใน Exchange Server แม้ว่าจะเป็นไปได้สำหรับพวกเขาที่จะเปิดใช้งาน Extended Protection แต่พวกเขาก็ไม่ทราบหรือแจ้งอย่างถูกต้องว่าควรเปิดใช้งานด้วยเหตุผลด้านความปลอดภัย ในบทความนี้ คุณจะได้เรียนรู้วิธีกำหนดค่า Extended Protection ใน Exchange Server
การคุ้มครองเพิ่มเติมคืออะไร?
Windows Extended Protection ปรับปรุงการรับรองความถูกต้องที่มีอยู่ใน Windows Server และบรรเทาการส่งต่อการรับรองความถูกต้องหรือการโจมตี "คนตรงกลาง" (MitM) การบรรเทาผลกระทบนี้ทำได้โดยใช้ข้อมูลความปลอดภัยที่นำไปใช้ผ่านข้อมูลการผูกช่องสัญญาณที่ระบุผ่าน Channel Binding Token (CBT) ซึ่งใช้สำหรับการเชื่อมต่อ SSL เป็นหลัก
แม้ว่า Extended Protection สามารถเปิดใช้งานได้ด้วยตนเองในแต่ละไดเร็กทอรีเสมือน แต่ Microsoft ได้จัดเตรียมสคริปต์ ExchangeExtensedProtectionManagement.ps1 PowerShell เพื่อช่วยดำเนินการนี้ให้สำเร็จในจำนวนมาก
มีข้อจำกัดบางประการที่ต้องทราบก่อนเปิดใช้งาน Extended Protection บน Exchange Server ดังนั้น คุณต้องตรวจสอบเอกสารของ Microsoft (ซึ่งได้รับการปรับปรุงให้เป็นปัจจุบัน) และตรวจสอบว่าคุณมีสิทธิ์หรือไม่
Windows Extended Protection ได้รับการสนับสนุนบน Exchange Server เวอร์ชันด้านล่าง:
-
แลกเปลี่ยนเซิร์ฟเวอร์ 2013
แลกเปลี่ยนเซิร์ฟเวอร์ 2016
แลกเปลี่ยนเซิร์ฟเวอร์ 2019
หมายเหตุ: คุณต้องมี Exchange Server Security Update (SU) รุ่นเดือนสิงหาคม 2022 หรือติดตั้งใหม่กว่าบน Exchange Server
ข้อสำคัญ: อย่าลืมอัปเดตเซิร์ฟเวอร์ Exchange ให้ทันสมัยอยู่เสมอด้วยการอัปเดต Exchange Cumulative Update และการอัปเดตความปลอดภัยของ Exchange ล่าสุด สมัครรับจดหมายข่าว และอย่าพลาดการอัปเดต Exchange Server
ตรวจสอบสถานะการคุ้มครองเพิ่มเติม
เราขอแนะนำสองวิธีในการตรวจสอบสถานะ Extended Protection บน Exchange Server
วิธีที่ 1. สคริปต์ Exchange Health Checker
เรียกใช้สคริปต์ Exchange Health Checker และสร้างรายงานการตรวจสอบความสมบูรณ์ของเซิร์ฟเวอร์ Exchange สิ่งนี้จะบอกคุณว่า Extended Protection ถูกเปิดใช้งานบน Exchange Server หรือไม่
[PS] C:\scripts>Get-ExchangeServer | ?{$_.AdminDisplayVersion -Match "^Version 15"} | %{.\HealthChecker.ps1 -Server $_.Name}; .\HealthChecker.ps1 -BuildHtmlServersReport; .\ExchangeAllServersReport.htmlExtended Protection ไม่ได้เปิดใช้งานบน Exchange Server และแสดงช่องโหว่ด้านความปลอดภัย:
CVE-2022-24516
CVE-2022-21979
CVE-2022-21980
CVE-2022-24477
-
CVE-2022-30134
วิธีที่ 2 สคริปต์ PowerShell การจัดการการป้องกันเพิ่มเติมของ Exchange
ดาวน์โหลดสคริปต์ ExchangeExtensedProtectionManagement.ps1 PowerShell และบันทึกไว้ในโฟลเดอร์ C:\scripts
เรียกใช้ Exchange Management Shell ในฐานะผู้ดูแลระบบและเรียกใช้สคริปต์ รวมถึงพารามิเตอร์ -ShowExtensedProtection
คอลัมน์ ค่า และ ค่าที่สนับสนุน ควรเป็นค่าเดียวกัน
ในตัวอย่างของเรา คอลัมน์ ค่า แสดง ไม่มี สำหรับไดเรกทอรีเสมือนทั้งหมด ซึ่งหมายความว่า Extended Protection ไม่ได้เปิดใช้งานบน Exchange Server
[PS] C:\>C:\scripts\.\ExchangeExtendedProtectionManagement.ps1 -ShowExtendedProtection
Version 23.05.04.2151
Results for Server: EX01-2019
Default Web Site Value SupportedValue ConfigSupported RequireSSL ClientCertificate IPFilterEnabled
---------------- ----- -------------- --------------- ---------- ----------------- ---------------
API None Require False True (128-bit) Ignore False
Autodiscover None None True True (128-bit) Ignore False
ECP None Require False True (128-bit) Ignore False
EWS None Allow True True (128-bit) Ignore False
Microsoft-Server-ActiveSync None Allow True True (128-bit) Ignore False
OAB None Require False True (128-bit) Ignore False
Powershell None Require False False Accept False
OWA None Require False True (128-bit) Ignore False
RPC None Require False False Ignore False
MAPI None Require False True (128-bit) Ignore False
Exchange Back End Value SupportedValue ConfigSupported RequireSSL ClientCertificate IPFilterEnabled
----------------- ----- -------------- --------------- ---------- ----------------- ---------------
API None Require False True (128-bit) Ignore False
Autodiscover None None True True (128-bit) Ignore False
ECP None Require False True (128-bit) Ignore False
EWS None Require False True (128-bit) Ignore False
Microsoft-Server-ActiveSync None Require False True (128-bit) Ignore False
OAB None Require False True (128-bit) Ignore False
Powershell None Require False True (128-bit) Accept False
OWA None Require False True (128-bit) Ignore False
RPC None Require False False Ignore False
PushNotifications None Require False True (128-bit) Ignore False
RPCWithCert None Require False False Ignore False
MAPI/emsmdb None Require False True Ignore False
MAPI/nspi None Require False True Ignore Falseในขั้นตอนถัดไป เราจะเปิดใช้งาน Extended Protection บน Exchange Server
วิธีเปิดใช้งาน Exchange Server Extended Protection
ทำตามขั้นตอนด้านล่างเพื่อเปิดใช้งานการป้องกันแบบขยายบน Exchange Server
ข้อสำคัญ: ทำตามขั้นตอนหลังเวลาทำงาน แม้ว่าจะมีการกำหนดค่า DAG ก็ตาม นั่นเป็นเพราะคุณต้องแน่ใจว่าไคลเอนต์ Outlook สามารถเชื่อมต่อได้สำเร็จหลังจากการเปลี่ยนแปลง
1. อัปเดตเป็น Exchange Server CU/SU ล่าสุด
2. กำหนดการตั้งค่า Exchange Server TLS
3. ปิดใช้งานการถ่ายโอนข้อมูล SSL สำหรับ Outlook ทุกที่
การถ่ายโอนข้อมูล SSL สำหรับ Outlook Anywhere จะถูกเปิดใช้งานตามค่าเริ่มต้น และต้องปิดใช้งานสำหรับ Extended Protection
[PS] C:>Set-OutlookAnywhere "EX01-2019\RPC (Default Web Site)" -SSLOffloading $false4. ดาวน์โหลดสคริปต์ ExchangeExtensedProtectionManagement.ps1 PowerShell และบันทึกไว้ในโฟลเดอร์ C:\scripts
5. ตรวจสอบให้แน่ใจว่าเพิ่มผู้ดูแลระบบลงในกลุ่ม การจัดการองค์กร
หมายเหตุ: ผู้ใช้จะต้องอยู่ใน การจัดการองค์กร และต้องเรียกใช้สคริปต์นี้จากพร้อมท์คำสั่ง Exchange Management Shell (EMS) ที่ยกระดับ หลังจากเพิ่มผู้ใช้ในกลุ่ม การจัดการองค์กร ให้ลงชื่อออกและลงชื่อเข้าใช้อีกครั้งเพื่อให้การเปลี่ยนแปลงมีผล
6. เปลี่ยนไดเรกทอรีเส้นทางเป็น โฟลเดอร์สคริปต์ และเรียกใช้สคริปต์ PowerShell เพื่อเปิดใช้งาน Extended Protection บน Exchange Server
[PS] C:\>cd C:\scripts
[PS] C:\scripts>.\ExchangeExtendedProtectionManagement.ps17. ผลลัพธ์จะแสดงข้อมูลเกี่ยวกับการเปิดใช้งาน Extended Protection กด Y และ Enter
Version 23.05.04.2151
Enabling Extended Protection
Extended Protection is recommended to be enabled for security reasons. Known Issues: Following scenarios will not work
when Extended Protection is enabled.
- SSL offloading or SSL termination via Layer 7 load balancing.
- Exchange Hybrid Features if using Modern Hybrid.
- Access to Public folders on Exchange 2013 Servers.
You can find more information on: https://aka.ms/ExchangeEPDoc. Do you want to proceed?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y8. สคริปต์จะประมวลผลงานข้อกำหนดเบื้องต้น สร้างการสำรองข้อมูลสำหรับ applicationHost.config และกำหนดค่า Extended Protection
The following servers have the TLS Configuration below
EX01-2019
RegistryName Location Value
------------ -------- -----
SchUseStrongCrypto SOFTWARE\Microsoft\.NETFramework\v2.0.50727 1
SystemTlsVersions SOFTWARE\Microsoft\.NETFramework\v2.0.50727 1
SchUseStrongCrypto SOFTWARE\Microsoft\.NETFramework\v4.0.30319 1
SystemTlsVersions SOFTWARE\Microsoft\.NETFramework\v4.0.30319 1
SchUseStrongCrypto SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727 1
SystemTlsVersions SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727 1
SchUseStrongCrypto SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319 1
SystemTlsVersions SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319 1
DisabledByDefault SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client 1
Enabled SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client 0
DisabledByDefault SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server 1
Enabled SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server 0
DisabledByDefault SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client 1
Enabled SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client 0
DisabledByDefault SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server 1
Enabled SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server 0
DisabledByDefault SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client 0
Enabled SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client 1
DisabledByDefault SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server 0
Enabled SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server 1
TLS prerequisites check successfully passed!
All servers that we are trying to currently configure for Extended Protection have RPC (Default Web Site) set to false for SSLOffloading.
EX01-2019: Backing up applicationHost.config.
EX01-2019: Successful backup to C:\Windows\System32\inetSrv\config\applicationHost.cep.20230505220519.bak
EX01-2019: Successfully updated applicationHost.config.
Successfully enabled Extended Protection: EX01-2019
Do you have feedback regarding the script? Please email ExToolsFeedback@microsoft.com.เปิดใช้งานการป้องกันแบบขยายเรียบร้อยแล้ว
ตรวจสอบสถานะเปิดใช้งานการป้องกันแบบขยาย
ตรวจสอบให้แน่ใจว่าทุกอย่างได้รับการตั้งค่าอย่างถูกต้องและสร้างรายงานการตรวจสอบประสิทธิภาพการทำงานของเซิร์ฟเวอร์ Exchange ใหม่
ไม่มีช่องโหว่ด้านความปลอดภัยสำหรับ Extended Protection อีกต่อไป โดยจะแสดง Extensed Protection Enabled (VDir ใดๆ) ด้วยค่า True
อีกวิธีหนึ่งคือตรวจสอบด้วยสคริปต์ PowerShell นี่คือลักษณะที่ปรากฏ
คอลัมน์ ค่า และ ค่าที่สนับสนุน แสดงค่าเดียวกัน ซึ่งหมายความว่า Extended Protection ถูกเปิดใช้งานบน Exchange Server
[PS] C:\>C:\scripts\.\ExchangeExtendedProtectionManagement.ps1 -ShowExtendedProtection
Version 23.05.04.2151
Results for Server: EX01-2019
Default Web Site Value SupportedValue ConfigSupported RequireSSL ClientCertificate IPFilterEnabled
---------------- ----- -------------- --------------- ---------- ----------------- ---------------
API Require Require True True (128-bit) Ignore False
Autodiscover None None True True (128-bit) Ignore False
ECP Require Require True True (128-bit) Ignore False
EWS Allow Allow True True (128-bit) Ignore False
Microsoft-Server-ActiveSync Allow Allow True True (128-bit) Ignore False
OAB Require Require True True (128-bit) Ignore False
Powershell Require Require True False Accept False
OWA Require Require True True (128-bit) Ignore False
RPC Require Require True True (128-bit) Ignore False
MAPI Require Require True True (128-bit) Ignore False
Exchange Back End Value SupportedValue ConfigSupported RequireSSL ClientCertificate IPFilterEnabled
----------------- ----- -------------- --------------- ---------- ----------------- ---------------
API Require Require True True (128-bit) Ignore False
Autodiscover None None True True (128-bit) Ignore False
ECP Require Require True True (128-bit) Ignore False
EWS Require Require True True (128-bit) Ignore False
Microsoft-Server-ActiveSync Require Require True True (128-bit) Ignore False
OAB Require Require True True (128-bit) Ignore False
Powershell Require Require True True (128-bit) Accept False
OWA Require Require True True (128-bit) Ignore False
RPC Require Require True True (128-bit) Ignore False
PushNotifications Require Require True True (128-bit) Ignore False
RPCWithCert Require Require True True (128-bit) Ignore False
MAPI/emsmdb Require Require True True (128-bit) Ignore False
MAPI/nspi Require Require True True (128-bit) Ignore False
Extended Protection ได้รับการกำหนดค่าบน Exchange Server เรียบร้อยแล้ว
การป้องกันแบบขยายการแลกเปลี่ยนแบบย้อนกลับ
ไวยากรณ์นี้จะย้อนกลับการกำหนดค่าการป้องกันแบบขยายสำหรับเซิร์ฟเวอร์ Exchange ทั้งหมดที่ออนไลน์อยู่ซึ่งมีการกำหนดค่าการป้องกันแบบขยายไว้ก่อนหน้านี้
[PS] C:\scripts>.\ExchangeExtendedProtectionManagement.ps1 -RollbackType "RestoreIISAppConfig"ไวยากรณ์นี้จะย้อนกลับการลดการป้องกันแบบขยายของการจำกัด IP สำหรับไดเรกทอรีเสมือน EWS Backend ของ Exchange Server ทั้งหมดที่ออนไลน์อยู่ซึ่งมีการกำหนดค่าการป้องกันแบบขยายไว้ก่อนหน้านี้
[PS] C:\scripts>.\ExchangeExtendedProtectionManagement.ps1 -RollbackType "RestrictTypeEWSBackend"แค่นั้นแหละ!
อ่านเพิ่มเติม: เปิดใช้งานการลงนามเพย์โหลดการทำให้เป็นอนุกรมของ PowerShell ใน Exchange Server »
บทสรุป
คุณได้เรียนรู้วิธีกำหนดค่า Extended Protection ใน Exchange Server ขั้นแรก ตรวจสอบให้แน่ใจว่าเป็นไปตามข้อกำหนดเบื้องต้น จากนั้นให้เรียกใช้สคริปต์ PowerShell สคริปต์จะแจ้งให้คุณทราบหากมีการกำหนดค่าที่ขาดหายไปและจะยกเลิก หากทุกอย่างดูดี ระบบจะเปิดใช้งาน Extended Protection บนไดเร็กทอรีเสมือนทั้งหมด สมมติว่าคุณมีปัญหา คุณสามารถคืนค่าการเปลี่ยนแปลง Extended Protection ด้วยสคริปต์ PowerShell ได้อย่างง่ายดาย
คุณสนุกกับบทความนี้หรือไม่? คุณอาจต้องการจำกัดการเข้าถึง/จากพอร์ต 25 บน Exchange Server อย่าลืมติดตามเราและแบ่งปันบทความนี้


