อาการ
พิจารณาสถานการณ์ต่อไปนี้:
-
ในสภาพแวดล้อม Microsoft Forefront คุกคามจัดการเกตเวย์ (TMG) 2010 คุณเปิดใช้งานการตรวจสอบ HTTPS
-
คุณสามารถตั้งค่า HTTPSiClientProtocols Const SE_VPS_VALUEเป็น160 ค่านี้จะกล่าวถึงในบทความ 982876 ในฐานความรู้ของ Microsoft
-
คุณพยายามเข้าถึงเว็บไซต์มี HTTPS ที่สนับสนุน TLS v1.0
ในสถานการณ์สมมตินี้ คุณไม่สามารถเข้าถึงเว็บไซต์
สาเหตุ
ปัญหานี้เกิดขึ้นเนื่องจาก TMG 2010 ส่งไคลเอนต์ "hello" ข้อความที่มี TLS อย่างไรก็ตาม เนื่องจากเว็บเซิร์ฟเวอร์ไม่สนับสนุน TLS จะไม่ยอมรับข้อความ และปิดการเชื่อมต่อ ในสถานการณ์สมมตินี้ ไคลเอ็นต์โดยทั่วไปอยู่กลับไป SSL v3.0 อย่างไรก็ตาม TMG ไม่ถอยกลับไปใช้ SSL v3.0 เมื่อเปิดใช้งานการตรวจสอบ HTTPS
การแก้ไข
เมื่อต้องการแก้ไขปัญหานี้ ติดตั้งการปรับปรุงซอฟต์แวร์ที่อธิบายไว้ในบทความในฐานความรู้ของ Microsoft ต่อไปนี้:
2517957ซอฟต์แวร์ปรับปรุง 1 สะสม 4 สำหรับเกตเวย์การจัดการคาม Forefront (TMG) 2010 Service Pack 1เมื่อต้องการเปิดใช้งานการแก้ไขนี้ ให้ทำตามขั้นตอนเหล่านี้:
-
เริ่มแผ่นจดบันทึก
-
คัดลอก และวางสคริปต์ต่อไปนี้ใน Notepad:
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Copyright (c) Microsoft Corporation. All rights reserved.' THIS CODE IS MADE AVAILABLE AS IS, WITHOUT WARRANTY OF ANY KIND. THE ENTIRE' RISK OF THE USE OR THE RESULTS FROM THE USE OF THIS CODE REMAINS WITH THE' USER. USE AND REDISTRIBUTION OF THIS CODE, WITH OR WITHOUT MODIFICATION, IS' HEREBY PERMITTED.''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' This script disables the use of old client protocols like PCT and SSLv2''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "HTTPSiDontUseOldClientProtocols"Const SE_VPS_VALUE = TRUESub SetValue() ' Create the root object. Dim root ' The FPCLib.FPC root object Set root = CreateObject("FPC.Root") 'Declare the other objects that are needed. Dim array ' An FPCArray object Dim VendorSets ' An FPCVendorParametersSets collection Dim VendorSet ' An FPCVendorParametersSet object Set array = root.GetContainingArray Set VendorSets = array.VendorParametersSets On Error Resume Next Set VendorSet = VendorSets.Item( SE_VPS_GUID ) If Err.Number <> 0 Then Err.Clear ' Add the item. Set VendorSet = VendorSets.Add( SE_VPS_GUID ) CheckError WScript.Echo "New VendorSet added... " & VendorSet.Name Else WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME) End If if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then Err.Clear VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE If Err.Number <> 0 Then CheckError Else VendorSets.Save false, true CheckError If Err.Number = 0 Then WScript.Echo "Done with " & SE_VPS_NAME & ", saved!" End If End If Else WScript.Echo "Done with " & SE_VPS_NAME & ", no change!" End IfEnd SubSub CheckError() If Err.Number <> 0 Then WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description Err.Clear End IfEnd SubSetValue
-
บันทึกแฟ้มแผ่นจดบันทึก โดยใช้ส่วนขยายชื่อแฟ้ม.vbs ตัวอย่างเช่น ใช้ชื่อต่อไปนี้เมื่อคุณบันทึกแฟ้มนี้:
EnableHTTPSiDontUseOldClientProtocols.vbs
-
ที่พรอมต์คำสั่ง เรียกใช้สคริปต์ ตัวอย่างเช่น ใช้ไวยากรณ์ต่อไปนี้เพื่อเรียกใช้สคริปต์:
cscript.exe EnableHTTPSiDontUseOldClientProtocols.vbs
สถานะ
Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "นำไปใช้กับ"