Este parece ser um problema conhecido com o OpenSSL 1.0.1 do Ubuntu: link
Não parece que uma correção esteja disponível. Se possível, você poderia fazer o downgrade para 1.0.0.
Experimente openssl s_client -tls1 -connect myhost.com:443
Estou tentando usar o OpenSSL para se conectar a um servidor SSL.
Quando eu corro:
openssl s_client -connect myhost.com:443
As seguintes configurações de cliente SSL funcionam bem:
OpenSSL 0.9.83e 23 Feb 2007
) OpenSSL 0.9.8o 01 Jun 2010
) OpenSSL 1.0.0-fips 29 Mar 2010
) A saída de qualquer conexão bem-sucedida é assim:
New, TLSv1/SSLv3, Cipher is DES-CBC3-SHA
Server public key is 2048 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1
Cipher : DES-CBC3-SHA
Session-ID: (hidden)
Session-ID-ctx:
Master-Key: (hidden)
Key-Arg : None
Krb5 Principal: None
PSK identity: None
PSK identity hint: None
Start Time: 1337266099
Timeout : 300 (sec)
Verify return code: 0 (ok)
No entanto, quando eu uso o cliente com meu Ubuntu 12.04 (com OpenSSL 1.0.1 14 Mar 2012
), recebo um erro:
CONNECTED(00000003)
...:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:177:
Como posso continuar resolvendo isso?
Todas as dicas são muito apreciadas!
Este parece ser um problema conhecido com o OpenSSL 1.0.1 do Ubuntu: link
Não parece que uma correção esteja disponível. Se possível, você poderia fazer o downgrade para 1.0.0.
Experimente openssl s_client -tls1 -connect myhost.com:443
Esse erro pode ser causado por uma versão mais antiga do openssl quando ele não pode renegociar a cifra (gerei um certificado autoassinado usando curvas elípticas).
Especificamente, eu estava recebendo o mesmo erro no MacOS com o padrão openssl - 0.9.8zh
Depois de instalar a versão brew OpenSSL 1.0.2f, o erro desapareceu:
~/bin/openssl s_client -connect localhost:45678 | grep Cipher
verify return:1
New, TLSv1/SSLv3, Cipher is ECDHE-ECDSA-AES256-GCM-SHA384
Cipher : ECDHE-ECDSA-AES256-GCM-SHA384
Se você obtiver esse problema com um servidor Java HTTPS em execução no OpenJDK, tente editar /etc/java-7-openjdk/security/java.security
e comentar a linha
security.provider.10=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/nss.cfg
como foi descoberto por Christoph W .