Potrzebuję skonfigurować połączenie z serwerem za pomocą protokołu SSL. Dostałem od właścicieli serwera 2 pliki - certyfikat główny CA (ca.pem) i żądanie certyfikatu testowego (plik test.csr).Problemy z SSL (openssl)
Jestem spróbuj przetestować łączyć się za pośrednictwem narzędzia openssl s_connect i daję dziwny wynik (xxx - wartości zamaskowanych):
openssl s_client -connect MYURL -CAfile ca.pem
CONNECTED(00000003)
xxx verify return:1
xxx verify return:1
3074332296:error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure:s3_pkt.c:1193:SSL alert number 40
3074332296:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:177:
Ale po ostrzegania i druku uzgadniania danych certyfikatu widzę:
SSL handshake has read yyy bytes and written yyy bytes
New, xxx, Cipher is xxx
Server public key is xxx bit
Compression: xxx
Expansion: xxx
SSL-Session:
Protocol : xxx
Cipher : xxx
Session-ID:
Session-ID-ctx:
Master-Key: xxx
Key-Arg : xxx
PSK identity: xxx
PSK identity hint: xxx
Compression: xxx
Start Time: xxx
Timeout : xxx (sec)
Verify return code: 0 (ok)
Co to znaczy zweryfikować kod powrotu to 0 (ok)? Jak to możliwe, jeśli wystąpił błąd/alert o uzgadnianiu?
Sprawdź, czy obsługiwane szyfry wymuszane przez serwer są zgodne z tym, z czym klient próbuje się połączyć. Możesz uzyskać ten błąd, jeśli próbujesz połączyć się z szyfrem, którego konfiguracja serwera sieciowego nie obsługuje - może to być spowodowane przez dystrybucję openssl po stronie serwera, na przykład –