Sendmail lehnt einige Verbindungen mit Handshake-Fehler ab: SSL-Warnung Nummer 40

Sendmail lehnt einige Verbindungen mit Handshake-Fehler ab: SSL-Warnung Nummer 40

Mein Sendmail-Server unter CentOS 5 begann, einige Verbindungen abzulehnen, und protokollierte die folgende Meldung:

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

Wenn ich versuche, mit OpenSSL vom CentOS 6-Server aus eine Verbindung dazu herzustellen, erhalte ich die folgende Fehlermeldung:

$ 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
(...)

E-Mails auf dem CentOS 6-Server werden vorübergehend mit abgelehnt Deferred: 403 4.7.0 TLS handshake failed.

Was muss ich tun, um E-Mails von CentOS 6/RHEL 6 an einen CentOS6/RHEL5-Server senden zu können?

Antwort1

Dies liegt daran, dass openssl-1.0.1e-30.el6.11.x86_64Programme, die diese Bibliothek verwenden, nach einem kürzlichen Update von OpenSSL auf CentOS 6 die Verbindung zu Servern verweigerten, die anfällig sind fürStauTLS-Sicherheitslücke.

Sie müssen sendmail so konfigurieren, dass es einen stärkeren temporären Diffie-Hellman-Schlüssel verwendet – mindestens 1024 Bit. Es ist nicht derselbe Schlüssel, den Sie in Ihrem TLS-Zertifikat verwenden. Wenn Ihr Zertifikat also einen 2048-Bit-Schlüssel verwendet, können Sie immer noch angreifbar sein.

Generieren Sie eine DH-Parameterdatei auf Ihrem Server:

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

Konfigurieren Sie sendmail so, dass diese Parameterdatei und nur starke Chiffren verwendet werden. Hinzufügen zu /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

Verwenden Sie dann make -C /etc/mail/und service sendmail restart.

Antwort2

Ja es funktioniert:-)

Mein Fehler war etwas anders, aber die Lösung ist die gleiche:

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

Ich generiere einen temporären Serverschlüssel: DH-Datei (ich habe keinen in meiner Konfiguration, der Standardwert ist 512 Bit)

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

(dauert sehr, sehr lange ;-)

und ich habe eine Zeile in sendmail.cf eingefügt

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

Nach dem Neustart beginnt mein Sendmail wieder, E-Mails zu versenden:-)

verwandte Informationen