Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand (https://www.delphipraxis.net/212274-indy-und-tlsv2-funktioniert-seit-heute-nicht-mehr-mit-mailversand.html)

Harry Stahl 17. Jan 2023 15:36

Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

ich verwende folgenden Code, mit dem ich bislang mit der SSLVTLSv2 Einstellung erfolgreich Mails versenden konnte (TLS V1 wird ja seit letzes Jahr nicht mehr unterstützt).

Delphi-Quellcode:
{$REGION 'SSL-Optionen'}
      // kein SSL bei Kommunikation zwischen Mailserver und Programm
      if (bSMTPSSL) and (bPop3UseLanServer = false) then begin
        DMI.IdSMTP1.IOHandler := DMI.SSLIOSMTP;

        // Hinweis: Das muss nicht immer so sein
        // Evtl. einstellbar machen
        // Einstellungen Postausgangsserver
        // 587 entspricht STARTTLS  (explizit)
        // 465 entspricht SSL/TLS (implizit), was wohl sicherer ist...

        //DMI.IdSMTP1.UseEhlo := True;

        if (StrToInt(sSMTPPort)= 587) then begin
          DMI.IdSMTP1.UseTLS := utUseExplicitTLS;
        end else begin // StrToInt(sSMTPPort)= 465)
          DMI.IdSMTP1.UseTLS := utUseImplicitTLS;
        end;

        DMI.IdSMTP1.Port := StrToInt(sSMTPPort);

        if sSMtpSSLVer = 'SSLV2' then DMI.SSLIOSMTP.SSLOptions.method := sslvSSLV2;
        if sSMtpSSLVer = 'SSLV23' then DMI.SSLIOSMTP.SSLOptions.method := sslvSSLV23;
        if sSMtpSSLVer = 'SSLV3' then DMI.SSLIOSMTP.SSLOptions.method := sslvSSLV3;
        if sSMtpSSLVer = 'TLSV1' then DMI.SSLIOSMTP.SSLOptions.method := sslvTLSV1;

        if sPop3SSLVer = 'SSLVTLSV_1' then DMI.SSLIOPOP.SSLOptions.method := sslvTLSv1_1;
        if sPop3SSLVer = 'SSLVTLSV_2' then DMI.SSLIOPOP.SSLOptions.method := sslvTLSv1_2;

      end else begin
        DMI.IdSMTP1.UseTLS := utNoTLSSupport;
        DMI.IdSMTP1.IOHandler := NIL;
      end;
      {$ENDREGION}
Seit heute funktioniert das nicht mehr, habe auch schon entsprechende Kundenrückmeldungen (als WorkAround kann man SSLV23 wählen, dann handeln die Server das aus, funktioniert wohl, gibt aber evtl. trotzdem Fehlermeldungen - z.b. bei Web.de ).

Beim Debuggen kann ich verfolgen, dass als Protokoll auch TLSV2 gewählt wurde.

Egal, ob ich als Sendeport 465 oder 587 wähle, es kommt immer die anliegende Fehlermeldung.

Und im Protokoll steht dieses:

"Fehlerprotokoll vom:17.01.2023 16:21
1: Verbinde für Senden...
2: SSL-Status: Host-Name securesmtp.t-online.de wird aufgelöst.
3: SSL-Status: Verbinden mit 194.25.134.46.
4: SSL-Status-Info: SSL-Status: "before/connect initialization"
5: SSL-Status-Info: SSL-Status: "before/connect initialization"
6: SSL-Status-Info: SSL-Status: "SSLv3 write client hello A"
7: SSL-Status-Info: SSL-Status: "SSLv3 read server hello A"
8: SSL-Status-Info: SSL-Status: "error"
9: Fehlermeldung des Mailservers (SMTP):
10: Verbindung konnte nicht hergestellt werden.
11: Fehlertyp: EIdOSSLUnderlyingCryptoError Meldung: Fehler beim Verbinden mit SSL.
12: error:1409442E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version"

Was kann ich machen, um das zu fixen?

haentschman 17. Jan 2023 16:23

AW: Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Hallöle...:P

aktuelle SSL DLL´s ?

Harry Stahl 17. Jan 2023 16:36

AW: Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Ja, vom 21.12.2019: https://github.com/IndySockets/OpenS...i386-win32.zip

Das ist die letzte, mir bekannte Fassung.
Bislang hat es damit ja auch funktioniert (zumindest bei T-Online, bei Web.DE traten Probleme schon früher auf).

Uwe Raabe 17. Jan 2023 16:58

AW: Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Ist zwar schon ein paar Wochen her, aber könnte es daran liegen? Microsoft liefert Updates gegen SSL-/TLS-Probleme durch Windows-Updates

TUhr 17. Jan 2023 17:00

AW: Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Hallo Nachbar,

ich sehe nirgends die Definition das beim SMTP (nicht POP) TLS1_2 verwendet wird oder ?

MfG

mytbo 17. Jan 2023 17:04

AW: Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Zitat:

Zitat von Harry Stahl (Beitrag 1517521)
Das ist die letzte, mir bekannte Fassung.

Vielleicht hier mal nach einer neueren OpenSSL Version suchen und diesen Pull-Request lesen. Habe es selbst noch nicht getestet, sondern nur die Info gepinnt.

Bis bald...
Thomas

Harry Stahl 17. Jan 2023 17:09

AW: Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Zitat:

Zitat von TUhr (Beitrag 1517528)
Hallo Nachbar,

ich sehe nirgends die Definition das beim SMTP (nicht POP) TLS1_2 verwendet wird oder ?

MfG

Doch: if sPop3SSLVer = 'SSLVTLSV_2' then DMI.SSLIOPOP.SSLOptions.method := sslvTLSv1_2;

sPop3SSLVer hat den Wert so dass als Methode auch sslvTLSV1_2 verwendet wird (wie gesagt, ich kann es beim Debuggen sehen).

Harry Stahl 17. Jan 2023 17:11

AW: Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1517527)
Ist zwar schon ein paar Wochen her, aber könnte es daran liegen? Microsoft liefert Updates gegen SSL-/TLS-Probleme durch Windows-Updates

Das wäre aber ein extremer Zufall, wenn das heute bei mir und den Kunden gleichzeitig auftritt (befürchte, werde ab morgen haufenweise Mails bekommen, dass der Mailversand nicht mehr funktioniert)...

Die Meldung ist ja auch schon von Oktober. Dann hätte ich bestimmt schon von Problemen gehört...

Und es geht schon los, habe gerade telefonische Sprechstunde, alle das gleiche Problem....

TUhr 17. Jan 2023 17:16

AW: Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Zitat:

Zitat von Harry Stahl (Beitrag 1517531)
Zitat:

Zitat von TUhr (Beitrag 1517528)
Hallo Nachbar,

ich sehe nirgends die Definition das beim SMTP (nicht POP) TLS1_2 verwendet wird oder ?

MfG

Doch: if sPop3SSLVer = 'SSLVTLSV_2' then DMI.SSLIOPOP.SSLOptions.method := sslvTLSv1_2;

sPop3SSLVer hat den Wert so dass als Methode auch sslvTLSV1_2 verwendet wird (wie gesagt, ich kann es beim Debuggen sehen).

Es geht doch um das Senden von Mails und nicht um das Empfangen oder ?
Ich sehe nur das der Empfang auf sslvTLSV1_2 gestellt wird oder ?

MfG

Harry Stahl 17. Jan 2023 17:31

AW: Indy und TLSv2 funktioniert seit heute nicht mehr mit Mailversand
 
Zitat:

Zitat von TUhr (Beitrag 1517533)
Zitat:

Zitat von Harry Stahl (Beitrag 1517531)
Zitat:

Zitat von TUhr (Beitrag 1517528)
Hallo Nachbar,

ich sehe nirgends die Definition das beim SMTP (nicht POP) TLS1_2 verwendet wird oder ?

MfG

Doch: if sPop3SSLVer = 'SSLVTLSV_2' then DMI.SSLIOPOP.SSLOptions.method := sslvTLSv1_2;

sPop3SSLVer hat den Wert so dass als Methode auch sslvTLSV1_2 verwendet wird (wie gesagt, ich kann es beim Debuggen sehen).

Es geht doch um das Senden von Mails und nicht um das Empfangen oder ?
Ich sehe nur das der Empfang auf sslvTLSV1_2 gestellt wird oder ?

MfG

Ja, es geht um das Senden und SMTP ist ja senden.

Der Code der danach kommt ist der hier:

Delphi-Quellcode:
if DMI.IdSMTP1.connected = false then begin
        try
          DMI.IdSMTP1.Connect;
        except
          on E: Exception do
          begin
            AnError := True;
            frm_Main.DisPlaySendStatus ('Fehlermeldung des Mailservers (SMTP): ' + hs_IndyError);
            frm_Main.DisplaySendStatus ('Verbindung konnte nicht hergestellt werden.');
            frm_Main.DisplaySendStatus ('Fehlertyp: ' + E.ClassName + ' Meldung: ' + E.Message);
          end;
        end;
      end;
Das Connecten geht noch, aber bei

Delphi-Quellcode:
DMI.IdSMTP1.Send(DMI.IdMessage1);
kommen dann die Fehlermeldungen...

T-Online hat ja schon September 2021 TLS 1.1 abgeschaltet, so dass ab da sowieso ja nur noch TLS 1.2 möglich war und das funktionierte ja auch (bis heute).


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:16 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz