![]() |
https web-Server mit indy 10 Fehler: SSL3_GET_Record:wrong version number
Hallo Zusammen,
aktuell versuche dieses Beispiel ein Web-Server und Client per HTTPS zum laufen zum bringen. ![]() Die aktuellen DLLs habe ich mir über diesen Link geholt ![]() Im root Verzeichnis der exe habe ich meine Zertifikat Dateien abgelegt und dem handler übergeben. Es ist ein wildcard Zertifikat *.meinedomain.de deshalb kann ich es von Zuhause aus testen home.meinedomain.de Beim Versuch von außen den Server anzusprechen, bekomme ich am Server die Meldung: "Fehler beim Annehmen der Verbindung mit SSL. error:1408F108B:SSL routines:SSL3_GET_RECORD:wrong version number" Im ssl IO handler habe ich nur [sslvTLSv1_2] eingestellt. Auch wenn ich alle SSLVersionen aktiviere, kommt die gleiche Meldung. Ich habe auch ein Satz DLLs die zuverlässig mit INDY und sslvTLSv1_2 funktionieren von einem andere REST-API Projekt welches ebenfalls Indy 10 nutzt. Doch auch die funktionieren nicht. [Edit] Die Einstellung SSLOptions.Method ist sslvSSLv23 Hat jemand eine Idee? |
AW: https web-Server mit indy 10 Fehler: SSL3_GET_Record:wrong version number
Funktioniert denn der Zugriff auf den Server innerhalb des lokalen Netzes über einen Browser (Chrome, Firefox, Edge, ...) oder kommt hier auch eine Fehlermeldung?
Hier ist ein minimales Testprojekt für Indy HTTPS Konfiguration:
Delphi-Quellcode:
program IndyHttpsTest;
{$APPTYPE CONSOLE} uses IdSSLOpenSSL, IdGlobal, IdHTTPServer, SysUtils, Classes, ShellAPI; procedure Start; var IOHandler: TIdServerIOHandlerSSLOpenSSL; Server: TIdHTTPServer; begin // create IOHandler for OpenSSL IOHandler := TIdServerIOHandlerSSLOpenSSL.Create; IOHandler.SSLOptions.CertFile := 'cert.pem'; IOHandler.SSLOptions.KeyFile := 'key.pem'; IOHandler.SSLOptions.RootCertFile := 'cacert.pem'; IOHandler.SSLOptions.Mode := sslmServer; Server := TIdHTTPServer.Create; try Server.DefaultPort := 443; Server.IOHandler := IOHandler; Server.Active := True; // start the server WriteLn(Format('Server is listening on port %d', [Server.DefaultPort])); // launch browser ShellExecute(0, 'open', PChar('https://127.0.0.1'), '', '', 0); // terminate WriteLn('Hit any key to terminate.'); ReadLn; finally Server.Active := False; Server.Free; end; end; begin try Start; except on E:Exception do begin Writeln(E.Classname, ': ', E.Message); ReadLn; end; end; end. ![]() Es gehört zu diesem Artikel: ![]() |
AW: https web-Server mit indy 10 Fehler: SSL3_GET_Record:wrong version number
Vielen Dank Michael,
dein Beispiel funktionier auf meinen Server mit meinen Zertifikaten und den passenden zwei Files: libeay32.dll, ssleay32.dll. Da es ein wildcard Zertifikat ist, kann ich es nicht auf localhost laufen lassen. Auf dem Server läuft es allerdings. Ich bekomme ein 200 OK. [Edit] Nachdem ich durch deine Demo sicherstellen konnte dass es grundsätzlich funktioniert, habe ich nochmals den Server neu gemacht, und siehe da, alles funktioniert auf anhieb. Vermutlich hatte ich irgendeine Einstellung versehentlich vorgenommen die solche Probleme führte. Dir noch eine schöne Zeit und frohe Ostern. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz