PERINGATAN: SSLv3 sudah usang . Pertimbangkan untuk menonaktifkannya sama sekali .
Saya mencoba mengatur Stunnel ke server sebagai cache SSL. Semuanya mulus, dan sebagian besar berfungsi seperti yang dirancang.
Kemudian saya menemukan kesalahan dalam file log:
SSL_accept: 1408F10B: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number
Tidak semua klien memicu hal itu, untuk beberapa alasan aneh. Menghubungkan dari CentOS menggunakan tautan - kesalahan muncul (mencoba beberapa mesin). Menghubungkan dari Ubuntu menggunakan tautan - tidak ada kesalahan.
Sudah mencoba menggunakan wget, dan semuanya lancar dengan TLSv1, tetapi kesalahan muncul dengan SSLv3. Pada saat yang sama, wget melaporkan:
OpenSSL: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure
Tidak dapat membuat koneksi SSL.
Ini konfigurasi saya:
pid = /etc/stunnel/stunnel.pid
debug = 3
output = /etc/stunnel/stunnel.log
socket=l:TCP_NODELAY=1
socket=r:TCP_NODELAY=1
verify=3
; fixing "fingerprint does not match" error
fips=no
[https]
accept=12.34.56.78:443
connect=127.0.0.1:80
TIMEOUTclose=0
xforwardedfor=yes
CAfile = /path/to/ssl/example.com.cabundle
cert=/path/to/ssl/example.com.crt
key=/path/to/ssl/example.com.key
Adakah yang tahu apa yang terjadi di sini? Di-Google beberapa jam sekarang, tidak dapat menemukannya.
Versi OpenSSL: OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008.
Versi stunnel: 4.32
EDIT:
Berikut ini adalah output dari openssl s_client -connect example.com:443 -ssl3
CONNECTED(00000004)
3897:error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure:s3_pkt.c:1086:SSL alert number 40
3897:error:1409E0E5:SSL routines:SSL3_WRITE_BYTES:ssl handshake failure:s3_pkt.c:530:
Sama dengan -tls1
berfungsi OK, tanpa kesalahan.
sumber
Jawaban:
Oke, masalah terpecahkan ... Saya menambahkan ini ke konfigurasi:
Sejauh yang saya mengerti, kesalahan terkait dengan SSLv23. Sekarang semua berfungsi seperti yang diharapkan.
sumber
fips = no
option = NO_SSLv3
untuk memaksa salah satu varian TLS untuk dipilih.SSL3_GET_RECORD:wrong version number
adalah kuncinya. Tampaknya lynx pada sistem CentOS Anda tidak menggunakan SSLv3.Akan lebih mudah untuk memeriksa perilaku yang tepat dengan
openssl s_client
:Periksa apa yang terjadi hanya dengan SSLv3:
Dan hanya dengan TLS:
sumber
-no_ticket
ke upaya SSLv3. Sepertinya bug OpenSSL ini .openssl version
?Saya harus mengatur
untuk menonaktifkan opsi sekarang standar NO_SSLv3. (Server yang terhubung ke tidak melakukan TLS)
sumber