Síntomas
Imagine la siguiente situación:
-
En un entorno de Microsoft Forefront Threat Management Gateway (TMG) 2010, habilitar la inspección de HTTPS.
-
Establezca el valor de HTTPSiClientProtocols Const SE_VPS_VALUE a 160. Este valor se menciona en el artículo 982876 de Microsoft Knowledge Base.
-
Intenta tener acceso a un página Web HTTPS que no es compatible con la versión 1.0 TLS.
En este escenario, no se puede acceder al sitio Web.
Causa
El problema se produce porque TMG 2010 envía a un cliente de mensaje "hello" que ofrece TLS. Sin embargo, dado que el servidor web no admite TLS, rechaza el mensaje y cierra la conexión. En este escenario, el cliente normalmente utiliza SSL v3.0. Sin embargo, TMG no recurre a SSL v3.0 cuando está habilitada la inspección de HTTPS.
Solución
Para resolver este problema, instale la actualización de software que se describe en el siguiente artículo en Microsoft Knowledge Base:
2517957 software Update 1 paquete acumulativo de actualizaciones 4 para Forefront Threat Management Gateway (TMG) 2010 Service Pack 1Para habilitar esta revisión, siga estos pasos:
-
Inicie el Bloc de notas.
-
Copie y pegue la siguiente secuencia de comandos en el Bloc de notas:
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 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
-
Guarde el archivo en el Bloc de notas mediante la extensión de nombre de archivo .vbs. Por ejemplo, puede utilizar el siguiente nombre al guardar este archivo:
EnableHTTPSiDontUseOldClientProtocols.vbs
-
En el símbolo del sistema, ejecute el script. Por ejemplo, utilice la siguiente sintaxis para ejecutar la secuencia de comandos:
cscript.exe EnableHTTPSiDontUseOldClientProtocols.vbs
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft recogidos en la sección "Se aplica a".