Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Serverwechsel, jetzt funktioniert HTTPS nicht mehr - serverseitige Lösung gesucht (https://www.delphipraxis.net/203851-serverwechsel-jetzt-funktioniert-https-nicht-mehr-serverseitige-loesung-gesucht.html)

Strict 31. Mär 2020 19:44


Serverwechsel, jetzt funktioniert HTTPS nicht mehr - serverseitige Lösung gesucht
 
Nach einem eher schwerem Servercrash habe ich meine Webseite auf ein komplett neues System von netcup umgezogen. Meine Domain habe ich transferiert, Let's Excrypt installiert - wunderbar. Sie Seite funktioniert wieder. Ich bekomme auch keine HTTPS-Warnung.

Aus meiner Anwendung heraus, rufe ich eine meine Domain über HTTPS auf. Das hat immer funktioniert. Aber nun mit dem neuen Server bekomme ich diese Fehlermeldung
Delphi-Quellcode:
Im Projekt tmp.exe ist eine Exception der Klasse EIdOSSLUnderlyingCryptoError mit der Meldung 'Fehler beim Verbinden mit SSL.
error:1409442E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version' aufgetreten.
Meine HTTP-Objekte
Delphi-Quellcode:
constructor THTTPObject.Create;
begin
 inherited;

 FIOHndl := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
 Request.BasicAuthentication := True;
 HandleRedirects := True;

 ReadTimeout := 3000;
 ConnectTimeout := 3000;
 FIOHndl.ReadTimeout := 3000;
 FIOHndl.ConnectTimeout := 3000;

 IOHandler := FIOHndl;
end;
Ein explizites Hinzufügen der TLS-Versionen scheint das Problem zu beheben. Der neue Server nutzt TLS 1.2. Der alte höchstwahrscheinlich nicht.
Delphi-Quellcode:
FIOHndl.SSLOptions.SSLVersions := [sslvTLSv1_2, sslvTLSv1_1, sslvTLSv1];


Gibt es für das Problem eine temporäre, serverseitige Lösung, bis alle Clients das neue Update haben?

jfheins 31. Mär 2020 19:59

AW: Serverwechsel, jetzt funktioniert HTTPS nicht mehr - serverseitige Lösung gesucht
 
Hi :-)
Du müsstest einfach im Server TLS 1.0 aktivieren können. Das solltest du allerdings beizeiten auch wieder zurück nehmen und (falls möglich) nur TLS 1.2 oder höher erlauben. (Also sowohl im Client als auch im Server)
Welchen HTTP Server verwendest du denn?

Strict 31. Mär 2020 20:02

AW: Serverwechsel, jetzt funktioniert HTTPS nicht mehr - serverseitige Lösung gesucht
 
Danke für deine Antwort. Aktuell wegen Kompatibilitäsgründen Apache.
Kannst du mir sagen, wo ich die TLS-Version bei netcup einstelle?´

Clientseitig ist das schon behoben. Aber das Update kann niemand beziehen, da der Server TLS Version 1.2 hat.

jaenicke 1. Apr 2020 06:23

AW: Serverwechsel, jetzt funktioniert HTTPS nicht mehr - serverseitige Lösung gesucht
 
Zitat:

Zitat von Strict (Beitrag 1460953)
Kannst du mir sagen, wo ich die TLS-Version bei netcup einstelle?

Bei Bestandskunden wird nun schrittweise eine Umstellung auf neuere Betriebssysteme gemacht und damit einhergehend TLS 1.0 und 1.1 deaktiviert. Als Neukunde kann es sein, dass du das gar nicht zur Verfügung hast und auch nicht mehr einstellen kannst. Das kann nur der Support beantworten, ob man es kurzzeitig bei dir noch einmal aktivieren kann.

TLS 1.0 und 1.1 wird übrigens ab März nun auch von den großen Browsern nicht mehr unterstützt. Die Abschaltung war schon lange geplant und wird "quasi überall" gerade gemacht.

Strict 2. Apr 2020 11:31

AW: Serverwechsel, jetzt funktioniert HTTPS nicht mehr - serverseitige Lösung gesucht
 
Danke für die Erklärungen. Dass das geplant war, wusste ich nicht. Dann ist es jetzt an der Zeit, alles richtig zu machen.
Sollte man von nun an auch direkt alle anderen verfügbaren Versionen unterstützen und nach und nach wieder entfernen, wenn es an der Zeit ist?
Delphi-Quellcode:
type
  TIdSSLVersion = (sslvSSLv2, sslvSSLv23, sslvSSLv3, sslvTLSv1,sslvTLSv1_1,sslvTLSv1_2);
Da TLS 1.0 ohnehin ausgedient hat, sollten beim nächsten Update von Delphi in der Datei IdSSLOpenSSL auch diese Zeilen angepasst werden
Delphi-Quellcode:
const
  DEF_SSLVERSION = sslvTLSv1_2;// DEF_SSLVERSION = sslvTLSv1;
  DEF_SSLVERSIONS = [sslvTLSv1_2]; // DEF_SSLVERSIONS = [sslvTLSv1];

jaenicke 6. Apr 2020 06:48

AW: Serverwechsel, jetzt funktioniert HTTPS nicht mehr - serverseitige Lösung gesucht
 
Es sollte heute nur noch TLS 1.2 verwendet werden. Alle anderen aufgeführten Protokolle gelten als unsicher.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:27 Uhr.

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