2017-06-13 2 views
0

Je n'arrive pas à activer les connexions TLS 1.2 sur un environnement Windows (environnements Windows 2008 et Windows 10). Actuellement, mes clés privées sont gérées par le magasin de certificats Windows, en utilisant le CAPI engineId dans stunnel (v 5.41), qui utilise OpenSSL 1.0.2k-fips. Pour cette raison, stunnel ne peut négocier qu'une connexion TLS 1.1 (SSLv2 et SSLv3/TLS1 sont désactivés pour des raisons évidentes).Configuration de stunnel et openssl sous Windows pour prendre en charge TLS 1.2

J'ai essayé de compiler OpenSSL 1.1.0f et stunnel 5.41, mais pas de chance de croiser la compilation sous CentOS, ni sous Windows en utilisant MSYS2/MINGW32 ou Cygwin.

Je suis spécifiquement à la recherche d'un moyen de gérer pfx/p12 (clé privée) dans stunnel sans avoir recours au magasin de certificats Windows. J'ai trouvé un exemple sur la façon de configurer stunnel pour utiliser capi - qui a fonctionné magnifiquement, mais comme openssl 1.0.2 ne supporte pas les chiffrements utilisés dans TLS 1.2, seul TLS 1.1 fonctionne. J'ai besoin de TLS 1.2.

https://www.stunnel.org/pipermail/stunnel-users/2017-February/005720.html explique pourquoi je ne peux pas utiliser TLS 1.2 avec OpenSSL 1.0.2. OpenSSL 1.0.2 est ce qui est intégré dans stunnel 5.41. Recompiler n'a pas fonctionné. Je cherche spécifiquement comment configurer stunnel pour pointer sur une clé pkcs12.

+0

passer par: https://stackoverflow.com/help/how-to-ask – Gahan

+1

« mais parce que OpenSSL 1.0 ne prend pas en charge les chiffrements utilisés dans TLS 1.2, seul le TLS 1.1 fonctionne. »Ce n'est pas correct - openssl 1.0.1 prend en charge TLS1.2 –

+0

Vous devriez poser une question spécifique pour un problème particulier. raison de vous: * "Les questions qui nous demandent de recommander ou de trouver un livre, un outil, une bibliothèque de logiciels, un tutoriel ou une autre ressource hors site sont hors sujet pour Stack Overflow car elles ont tendance à attirer les réponses avisées et le spam. et ce qui a été fait jusqu'à présent pour le résoudre. "* – jww

Répondre

0

Solution basée sur le commentaire de dave_thompson_085:

La solution était de simplement mettre à l'emplacement du fichier p12 pour la variable cert, ne comprennent pas EngineID, ne comprennent pas la clé. Ne vous inquiétez pas du mot de passe, stunnel vous demandera votre mot de passe. J'ai toujours pensé que j'avais besoin de régler un moteur - comme avec pkcs11 ou capi.

C'est-à-dire, j'étais trop penser et complètement manqué l'évidence.

Exemple d'extrait qui a fonctionné pour moi ci-dessous. (Tout ce qui précède a été laissé par défaut, à l'exception SSLOptions, qui a été mis à SSLOptions = TLS1.2

[https-test-services] 
client=yes 
accept=127.0.0.1:7000 
connect=hostname.of.remote.server:8443 
verifyChain = yes 
CAfile = ca-certs.pem 
cert = C:\Location\To\certandkey.p12 
checkHost = hostname.of.remote.server 
OCSPaia=yes