sendmail menolak beberapa koneksi dengan kegagalan jabat tangan: nomor peringatan SSL 40

8

Server sendmail saya di CentOS 5 mulai menolak beberapa koneksi dengan pesan berikut dicatat:

error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure:s3_pkt.c:1092:SSL alert number 40

Ketika saya mencoba untuk terhubung menggunakan openssl dari server CentOS 6 saya mendapatkan kesalahan berikut:

$ openssl s_client -starttls smtp -crlf -connect hostname.example.net:smtp
(...)
error:14082174:SSL routines:SSL3_CHECK_CERT_AND_ALGORITHM:dh key too small:s3_clnt.c:3331
(...)
Server Temp Key: DH, 512 bits
(...)

Server Mail on CentOS 6 untuk sementara ditolak Deferred: 403 4.7.0 TLS handshake failed.

Apa yang harus dilakukan untuk dapat mengirim email dari server CentOS 6 / RHEL 6 ke CentOS6 / RHEL5?

Tometzky
sumber

Jawaban:

10

Ini karena setelah pembaruan terbaru untuk openssl pada CentOS 6 openssl-1.0.1e-30.el6.11.x86_64,, program yang menggunakan pustaka ini mulai menolak koneksi ke server yang rentan terhadap kerentanan TLS Logjam .

Anda perlu mengonfigurasi sendmail untuk menggunakan kunci Diffie – Hellman sementara yang lebih kuat - setidaknya 1024 bit. Ini bukan kunci yang sama yang Anda gunakan dalam sertifikat TLS Anda, jadi jika sertifikat Anda menggunakan kunci 2048 bit maka Anda masih bisa rentan.

Hasilkan file parameter DH di server Anda:

openssl dhparam -out /etc/pki/tls/certs/dhparams.pem 1024

Konfigurasikan sendmail untuk menggunakan file parameter ini, dan hanya menggunakan cipher yang kuat. Tambahkan ke /etc/mail/sendmail.mc:

LOCAL_CONFIG
O CipherList=HIGH:!ADH
O DHParameters=/etc/pki/tls/certs/dhparams.pem
O ServerSSLOptions=+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3 +SSL_OP_CIPHER_SERVER_PREFERENCE
O ClientSSLOptions=+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3

Kemudian gunakan make -C /etc/mail/dan service sendmail restart.

Tometzky
sumber
+1 dari saya - karya bagus, dan penyelamat hidup. Terima kasih!
MadHatter
Untuk klarifikasi, apakah itu server pengirim atau penerima yang memerlukan perubahan ini? atau keduanya?
Joe
1
@ Jo penerima sisi. Saya tidak yakin itu masih sangat diperlukan, karena ada paket openssl baru untuk RHEL5 / CentOS5 dirilis ( openssl-0.9.8e-36.el5_11) yang mungkin telah memperbaiki masalah ini. Ini masih disarankan.
Tometzky
Saya tidak berharap parameter DH 1024 bit aman untuk lebih lama. Mulai gunakan params 2048 bit sekarang.
Michael Hampton
Ok, itu bisa memperbaiki server, tapi bagaimana cara membuat s_client STFU dan tetap terhubung?
Ricky Beam
0

Ya, itu bekerja :-)

Kesalahan saya sedikit berbeda, tetapi solusinya sama:

SSL routines:SSL3_READ_BYTES:sslv3 alert illegal parameter:s3_pkt.c:1060:SSL alert number 47

Saya membuat kunci sementara server: File DH (Saya belum punya di konfigurasi saya, standarnya adalah 512bits)

openssl dhparam -out /etc/mail/certs/dhparams.pem 2048

(butuh waktu sangat, sangat lama ;-)

dan saya memasukkan baris ke sendmail.cf

O DHParameters=/etc/mail/certs/dhparams.pem

Setelah restart sendmail saya mulai mengirim email lagi :-)

zip
sumber