Un poco de información de fondo primero. Tengo un paquete SSIS que se ejecuta dentro de un entorno Windows Server 2003 SP2 de 32 bits. El paquete comenzó a fallar recientemente con el siguiente error durante una tarea de script que descarga una página web utilizando una conexión SSL:
"The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.
Algunas excavaciones revelaron un par de cosas: tampoco pude acceder al sitio web en cuestión usando IE8 desde el servidor (sí puedo con Firefox), y el sitio web acababa de recibir un nuevo certificado SHA256.
Después de investigar un poco, mi suposición actual es que el problema es que no tengo soporte para certificados SHA2 en este servidor. Tomé el certificado del sitio y lo ejecuté, lo CertUtil -verify [cert file]
que da el siguiente resultado:
The signature of the certificate can not be verified. 0x80096004 (-2146869244)
Encontré un par de revisiones de Microsoft, y por lo que entiendo, cualquiera de ellos debería habilitar el soporte para certificados SHA2:
Entonces solicité el hotfix para kb968730 e intenté instalarlo, pero recibí el siguiente error:
The installation cannot continue because the following packages might not be valid:
KB2616676_V2 c:\windows\system32\dllcache\crypt32.dll 5.131.3790.4905
KB2616676_V2 c:\windows\system32\crypt32.dll 5.131.3790.4905
Reinstall the packages listed above, and then reinstall KB968730
La versión de la biblioteca crypt32 que se incluye con la revisión es 5.131.3790.4477, lo que explica por qué el instalador no continuará.
En este punto no estoy muy seguro de lo que necesito hacer. El artículo kb968730 indica que crypt32.dll es el único archivo actualizado por la revisión, lo que me hace pensar que, dado que ya tengo una versión más nueva, ¿no debería tener esta funcionalidad? Pero, parecería que no, a menos que me equivoque acerca de la causa raíz del problema.
fuente
Respuestas:
La versión Crypt32.dll 5.131.3790.5235 soluciona el problema (después de un reinicio). Está disponible en http://support2.microsoft.com/kb/2868626
La versión instalada anteriormente era la versión 5.131.3790.5014 y no solucionó el problema. Según esta publicación ( https://mendel129.wordpress.com/tag/crypt32-dll/ ), hay dos variantes de la versión 5014: una de Windows Update (KB2661254, no funciona) y otra como QFE (KB968730 )
fuente
Este problema se resuelve instalando KB3072630 , que se instala automáticamente si tiene Windows Update habilitado. El número de versión de Crypt32.dll es 5.131.3790.5668 después de la actualización.
KB938397 y KB968730 están en desuso y se reemplazan por la actualización anterior.
fuente
Recibí este error también. Continuaría e instalaría el certificado en el servidor designado y obtendría este error. Mi solución fue que tenía que seguir adelante e instalar el certificado raíz / intermedio en cada servidor que llamaba a ese certificado específico. Esto fue probablemente porque acababa de actualizar mi CA interna.
Entonces, si hay una cantidad X de servidores que llaman a ese certificado, instálelo en esos servidores. Eso se encargó de mi problema.
fuente