Симптоми
Да разгледаме следния сценарий:
-
В среда на Microsoft Forefront Threat Management Gateway (TMG) 2010 можете да разрешите HTTPS проверка.
-
Можете да HTTPSiClientProtocols Const SE_VPS_VALUE стойност 160. Тази стойност е споменато в статия 982876 в базата знания на Microsoft.
-
Опитвате се да отворите HTTPS уеб сайт, който не поддържа TLS v1.0.
В този случай нямате достъп до сайта.
Причина
Проблемът възниква, защото TMG 2010 изпрати клиент "Здравейте" съобщение, което предлага TLS. Обаче, тъй като уеб сървърът не поддържа TLS, тя отхвърля съобщението и затваря връзката. В този случай Клиентът обикновено преминава към SSL v3.0. Обаче TMG не се върнат на SSL v3.0 когато HTTPS проверка е разрешена.
Решение
За да разрешите този проблем, инсталирайте актуализация на софтуера, който е описан в следната статия в базата знания на Microsoft:
2517957 софтуер 1 Сборен пакет за актуализация 4 за Forefront Threat Management Gateway (TMG) 2010 Service Pack 1За да разрешите тази корекция, изпълнете следните стъпки:
-
Стартирайте Notepad.
-
Копирайте и поставете следния скрипт в 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 разширение запишете файл на Notepad. Например използвайте следното име, когато запишете този файл:
EnableHTTPSiDontUseOldClientProtocols.vbs
-
В командния ред изпълнете скрипта. Например използвайте следния синтаксис, за да изпълните скрипта:
cscript.exe EnableHTTPSiDontUseOldClientProtocols.vbs
Статус
Microsoft потвърждава, че това е проблем в продуктите на Microsoft, изброени в раздела "Отнася се за".