Ketika mencoba untuk terhubung ke server xmpp melalui SSL, openssl gagal dengan kesalahan berikut: 3071833836: kesalahan: 140790E5: rutinitas SSL: SSL23_WRITE: ssl handshake failure: s23_lib.c: 177
Saya percaya bahwa server menggunakan cipher RC4-MD5, di sini adalah output penuh:
[root@localhost ~]# openssl s_client -connect 184.106.52.124:5222 -cipher RC4-MD5
CONNECTED(00000003)
>>> SSL 2.0 [length 0032], CLIENT-HELLO
01 03 03 00 09 00 00 00 20 00 00 04 01 00 80 00
00 ff b0 c9 c2 3f 0b 0e 98 df b4 dc fe b7 e8 8f
17 9a 34 b5 9b 17 1b 2b ac 01 dc bd 2b a9 2d 18
44 0c
3071866604:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:177:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 52 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
---
Menggunakan gnutls-cli:
[root@localhost ~]# gnutls-cli 184.106.52.124 -p 5222
Resolving '184.106.52.124'...
Connecting to '184.106.52.124:5222'...
*** Fatal error: A TLS packet with unexpected length was received.
*** Handshake has failed
GNUTLS ERROR: A TLS packet with unexpected length was received.
Menghubungkan ke server yang sama pada port 5223 berfungsi dengan baik.
Menggunakan OpenSSL 1.0.1e-fips pada CentOS 6.5 dan OpenSSL 1.0.1f pada Ubuntu 14.04.1
Ada tips tentang cara mengatasi masalah ini? Terima kasih sebelumnya.
STARTTLS
.Jawaban:
Dari apa yang Anda posting sejauh ini, sepertinya proses mendengarkan pada port 5222 tidak menggunakan SSL. Sebagai diagnostik, mungkin coba jawaban yang ditemukan di sini:
https://serverfault.com/questions/37699/how-to-check-if-a-server-support-xmpp-protocol/37722#37722
Selain itu, sepertinya dari sini: https://stackoverflow.com/questions/3452161/which-ports-does-xmpp-use , bahwa koneksi pada port 5222 secara konvensional tidak dilindungi SSL (lihat RFC 3920, Lampiran D1).
sumber