Hallo,
ich bin gerade dabei auf Basis eines Raspberry eine Rollladensteuerung zu bauen. Der PHP-Server für die eigentliche Steuerung der Hardware und der Apache2 für den Client (PHP & Javascript) laufen auf dem Pi.
Ich benutze für die Kommunikation zwischen dem Web-Client und dem Server Websockets. Um dies sicher zu gestalten möchte ich https für die HTML-Seite und dann aber auch wss für die Websocket Kommunikation verwenden.
Ich habe mir dazu eine eigene CA (Certificate Authority) und ein mit dieser CA selbst signiertes Zertifikat mit openssl erstellt. Die reine Website funktioniert damit gut über https.
Aber, Websockets verschlüsselt über wss gehen nicht
Es geht nur in der Kombination http & ws (in allen Browsern) oder https & ws (nur in Firefox und nur mit der Einstellung in about:config: "network.websocket.allowInsecureFromHTTPS = true".
Weder in Safari/iOS (wäre mir am wichtigsten) oder Chrome oder FF geht es mit wss.
Ohne die o.g. Config in FF und mit ws kommt die Meldung "SecurityError: The operation is insecure" Mit wss kommt nur die nichtssagende Meldung "Created! Status 0", (1 wäre Erfolg) und die Kommunikation geht einfach nicht.
Ich vermute es liegt am selbst signierten Zertifikat.
Wer weiß Rat bzw. hat https & wss zusammen schon einmal zum Laufen gebracht? Brauche ich doch ein "echtes" Zertifikat einer anerkannten CA?
Danke und Grüße
mdrmdr
ich bin gerade dabei auf Basis eines Raspberry eine Rollladensteuerung zu bauen. Der PHP-Server für die eigentliche Steuerung der Hardware und der Apache2 für den Client (PHP & Javascript) laufen auf dem Pi.
Ich benutze für die Kommunikation zwischen dem Web-Client und dem Server Websockets. Um dies sicher zu gestalten möchte ich https für die HTML-Seite und dann aber auch wss für die Websocket Kommunikation verwenden.
Ich habe mir dazu eine eigene CA (Certificate Authority) und ein mit dieser CA selbst signiertes Zertifikat mit openssl erstellt. Die reine Website funktioniert damit gut über https.
Aber, Websockets verschlüsselt über wss gehen nicht
Es geht nur in der Kombination http & ws (in allen Browsern) oder https & ws (nur in Firefox und nur mit der Einstellung in about:config: "network.websocket.allowInsecureFromHTTPS = true".
Weder in Safari/iOS (wäre mir am wichtigsten) oder Chrome oder FF geht es mit wss.
Ohne die o.g. Config in FF und mit ws kommt die Meldung "SecurityError: The operation is insecure" Mit wss kommt nur die nichtssagende Meldung "Created! Status 0", (1 wäre Erfolg) und die Kommunikation geht einfach nicht.
Ich vermute es liegt am selbst signierten Zertifikat.
Wer weiß Rat bzw. hat https & wss zusammen schon einmal zum Laufen gebracht? Brauche ich doch ein "echtes" Zertifikat einer anerkannten CA?
Danke und Grüße
mdrmdr