Ein TLS-Fatal-Alarm wurde mit exim4 in Debian 9 empfangen

Ein TLS-Fatal-Alarm wurde mit exim4 in Debian 9 empfangen

Ich versuche, meinen Server zum Senden von E-Mails zu konfigurieren und erhalte bei jedem Versuch, E-Mails zu senden, die Fehlermeldung „TLS Fatal Alert“.

Ich habe die indieser Beitragim Zusammenhang mit meinem Problem, um zu versuchen, das Problem zu lösen, aber schließlich erhalte ich den Fehler, den ich beschreibe:

apt install gnutls-bin
cd /etc/exim4/
certtool --generate-privkey --outfile exim.key
certtool --generate-request --load-privkey exim.key --outfile exim.csr
  • Allgemeiner Name: gestiondecorreos.es

  • den Rest lasse ich leer (Eingabe)

  • URL:http://www.cacert.org/

  • bei CACert anmelden => auf "Serverzertifikate" klicken => Neu

  • Sie werden aufgefordert, die Zertifikatsanforderung einzufügen: Ich füge den Inhalt der Datei exim.csr ein.

  • CACert fordert Sie auf, den Hostnamen zu bestätigen.

  • Danach wird auf der resultierenden Webseite ein Zertifikat angezeigt. Legen Sie das Zertifikat in eine neue Datei mit dem Namen exim.crt

    cd /etc/exim4/ chgrp Debian-exim exim.key chmod g+r exim.key vim /etc/exim4/conf.d/main/000_local (neue Datei)

  • und fügen Sie darin ein:

    MAIN_LOG_SELECTOR=+tls_cipher +tls_peerdn MAIN_TLS_ENABLE=t

    update-exim4.conf /etc/init.d/exim4 Neustart

Ich versuche per TLS eine Verbindung zu meinem Mailserver herzustellen:

gnutls-cli -s -p 587 gestiondecorreos.es
ehlo gestiondecorreos.es
starttls
^D (ctr+d)
  • das Fehlerergebnis:

*** Starting TLS handshake
- Certificate type: X.509
- Got a certificate list of 1 certificates.
- Certificate[0] info:
 - subject `EMAIL=eguz*****@gmail.com,CN=server.example.com,OU=IT,O=Vesta Control Panel,L=San Francisco,ST=California,C=US', issuer `EMAIL=eguz*****@gmail.com,CN=server.example.com,OU=IT,O=Vesta Control Panel,L=San Francisco,ST=California,C=US', serial 0x0086e738bec1714309, RSA key 4096 bits, signed using RSA-SHA256, activated `2020-02-04 15:42:00 UTC', expires `2021-02-03 15:42:00 UTC', key-ID `sha256:6095e39dc286060d74d300f494814744d803ad2f5c55587ca38a2d7ed2b58194'
   Public Key ID:
      sha1:5f4b******************
      sha256:6095****************
   Public key's random art:
      +--[ RSA 4096]----+
      |        ..o    .o|
      |       .   o   +.|
      *******************
      |             .oo.|
      +-----------------+

- Status: The certificate is NOT trusted. The certificate issuer is unknown. The name in the certificate does not match the expected.
*** PKI verification of server certificate failed...
*** Fatal error: Error in the certificate.
*** Handshake has failed

Ich weiß nicht, warum als Betreff CN=server.example.com angezeigt wird.

Die Datei /var/log/exim4/mainlog sagte:

TLS error on connection from lixxxxxx.members.linode.com ([127.0.0.1]) [xxxxxxxxxxx] (gnutls_handshake): A TLS fatal alert has been received.

In meinem Linode-VPS ist die Hauptdomäne gestiondecorreos.es und orbelanet.com ist eine weitere Domäne, auf der ich SMTP-Tests durchführe.

Vielen Dank im Voraus! Mikel

Antwort1

Lösungsversuch:

  • Hostnamen ändern (in vestacp): (Server => gestiondecorreos.es, meine Hauptdomäne auf dem Server):

    /usr/local/vesta/bin/v-change-sys-hostname gestiondecorreos.es

  • Installieren von letsencrypt in gestiondecorreos.es:

/usr/local/vesta/bin/v-add-letsencrypt-domain 'admin' gestiondecorreos.es '' 'yes'

  • wenden Sie das im vorherigen Schritt installierte SSL-Zertifikat in Vesta, Exim und Dovecot an:

/usr/local/vesta/bin/v-update-host-certificate admin gestiondecorreos.es

  • fügen Sie "update_hostname_ssl='yes'" in /usr/local/vesta/conf/vesta.conf hinzu:

    echo "UPDATE_HOSTNAME_SSL='yes'" >> /usr/local/vesta/conf/vesta.conf

Dadurch wird Vesta angewiesen, SSL für Vesta-, Exim- und Dovecot-Daemons jedes Mal zu aktualisieren, wenn SSL erneuert wird. Dies geschieht automatisch

die Lösung

  • beim erneuten Erstellen der Dateien und exim.keymit den vorherigen Schritten und beim Durchführen des TLS-Mail-Diensttests tritt diesmal kein Fehler auf, alles ist in Ordnung.exim.csrexim.crtgnutls-cli -s -p 587 gestiondecorreos.es

  • aber beim Versuch, eine neue E-Mail zu senden, wird der folgende Fehler angezeigt:

    H=lixxxxxxxx.linode.com ([127.0.0.1]) [172.xxxxxxxxxx] X=TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128 CV=no rejected MAIL <xxxx@xxxxxxxx>: Helo name contains a ip address (HELO was [127.0.0.1]) and not is valid

  • Die Lösung besteht darin, dass ich immer wieder die folgenden Zeilen in /etc/exim4/exim4.conf deaktiviere:

\# deny condition = ${if eq{$sender_helo_name}{}}
\# message = HELO required before MAIL

\# drop message = Helo name contains a ip address (HELO was $sender_helo_name) and not is valid
\# condition = ${if match{$sender_helo_name}{\N((\d{1,3}[.-]\d{1,3}[.-]\d{1,3}[.-]\d{1,3})|([0-9a-f]{8})|([0-9A-F]{8}))\N}{yes}{no}}
\# condition = ${if match {${lookup dnsdb{>: defer_never,ptr=$sender_host_address}}\}{$sender_helo_name}{no}{yes}}
\# delay = 45s

\# drop condition = ${if isip{$sender_helo_name}}
\# message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
  • exim4 neu starten:

    service exim4 restart

Und jetzt kann ich problemlos E-Mails versenden!

verwandte Informationen