web-dev-qa-db-fra.com

Ubuntu 20.04 - Comment définir le niveau de sécurité SSL inférieur?

J'aimerais demander s'il existe un moyen de réduire le niveau de sécurité SSL à 1 sur Ubuntu 20.04, depuis que je reçois:

141A318A:SSL routines:tls_process_ske_dhe:dh key too small

en essayant de boucler le site Web.

Curl fonctionne si j'ajoute --ciphers 'DEFAULT:!DH' Paramètre, cependant, je ne suis pas capable de récupérer un site Web via mon application client écrite en C #. Le site Web fonctionne également lorsqu'il est ouvert via navigateur.

Selon - bugs.launchpad.net L'équipe Ubuntu définit un niveau de sécurité SSL plus élevé.

Dans plusieurs endroits, je suis tombé sur une information qui change CipherString = DEFAULT@SECLEVEL=2 à 1 dans openssl.cnf aide, mais mon fichier de configuration n'a pas eu une telle ligne du tout et l'ajout de cela n'avait aucun effet.

Je ne contrôle pas le serveur de site Web, je ne suis donc pas en mesure de modifier sa configuration de sécurité.

Des idées? Installerait une aide d'un forfait OpenSL plus âgée?

Merci d'avance

Edit: En ce qui concerne les modifications apportées à mon fichier de configuration, j'ai ajouté ce qui suit à la fin:

system_default = system_default_sect 

[system_default_sect] 
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=1 

Sortie de openssl version -a:

OpenSSL 1.1.1f 31 Mar 2020 built on: Mon Apr 20 11:53:50 2020 UTC
platform: debian-AMD64
options: bn(64,64) rc4(16x,int) des(int) blowfish(ptr)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -Wa,
--noexecstack -g -O2 -fdebug-prefix-map=/build/openssl-P_ODHM/openssl-1.1.1f=. 
-fstack-protector-strong -Wformat -Werror=format-security
-DOPENSSL_TLS_SECURITY_LEVEL=2 -DOPENSSL_USE_NODELETE
-DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ
-DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT
-DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m
-DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM
-DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM
-DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DNDEBUG
-Wdate-time -D_FORTIFY_SOURCE=2
OPENSSLDIR: "/usr/lib/ssl" ENGINESDIR:
"/usr/lib/x86_64-linux-gnu/engines-1.1" Seeding source: os-specific
31
l.sypniewski

Vous n'avez pas vos changements de configuration à droite. Vous devez ajouter ceci au début de votre fichier de configuration:

openssl_conf = default_conf

Et puis cela à la fin:

[ default_conf ]

ssl_conf = ssl_sect

[ssl_sect]

system_default = ssl_default_sect

[ssl_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT:@SECLEVEL=1

Notez que si vous préférez que vous puissiez modifier une copie locale du fichier de configuration, puis assurez-vous que votre processus est démarré avec la variable d'environnement OPENSSL_CONF Défini sur le point à l'emplacement de votre fichier de configuration:

export OPENSSL_CONF=/path/to/my/openssl.cnf

De cette façon, vous pouvez apporter des modifications sans avoir à affecter votre système entier.

Remarque: Pour rechercher le fichier openssl.cnf du système, exécutez ce qui suit:

% openssl version -d

la course ls -l sur le répertoire sorti pour voir où le openssl.cnf Le fichier est via son symbolique dans ce répertoire selon vos besoins.

22
Matt Caswell

Éditer openssl.conf fichier:

Sudo nano /etc/ssl/openssl.cnf

Ajouter cette ligne en haut:

openssl_conf = openssl_init

Et ajoutez ces lignes à la fin:

[openssl_init]
ssl_conf = ssl_sect

[ssl_sect]
system_default = system_default_sect

[system_default_sect]
CipherString = DEFAULT@SECLEVEL=1

Ça marche pour moi. :)

Ref: quand j'essaie de curl un site Web, j'obtiens une erreur SSL

0
WHY