Sintomi
Considerare lo scenario descritto di seguito:
-
In un ambiente di Microsoft Forefront Threat Management Gateway (TMG) 2010, attivare controllo HTTPS.
-
Impostare il valore di HTTPSiClientProtocols SE_VPS_VALUE Const a 160. Questo valore è indicato nell'articolo 982876 della Microsoft Knowledge Base.
-
Si tenta di accedere a un sito Web HTTPS che non supporta TLS 1.0.
In questo scenario, è possibile accedere al sito Web.
Causa
Il problema si verifica perché TMG 2010 invia un client il messaggio "hello" che offre TLS. Tuttavia, poiché il server web non supporta TLS, il messaggio viene rifiutato e chiude la connessione. In questo scenario, il client in genere ricorre a SSL 3.0. Tuttavia, TMG non ritorna a SSL 3.0 quando è attivata l'ispezione HTTPS.
Risoluzione
Per risolvere questo problema, installare l'aggiornamento software descritto nel seguente articolo della Microsoft Knowledge Base:
2517957 software 1 aggiornamento cumulativo 4 per Forefront Threat Management Gateway (TMG) 2010 Service Pack 1Per attivare questa correzione, attenersi alla seguente procedura:
-
Avviare Blocco note.
-
Copiare e incollare lo script seguente nel blocco note:
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 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
-
Salvare il file di blocco note utilizzando l'estensione vbs. Quando si salva il file, ad esempio, utilizzare il seguente nome:
EnableHTTPSiDontUseOldClientProtocols.vbs
-
Al prompt dei comandi, eseguire lo script. Per eseguire lo script, ad esempio, utilizzare la sintassi seguente:
cscript.exe EnableHTTPSiDontUseOldClientProtocols.vbs
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".