> but for now the localhost wss failed again. If you have another hint please 
> let me know - I won't give up ;-)

Eventually I succeeded with this tool:

https://github.com/FiloSottile/mkcert

After certificate generation and installation I was able connecting to 
localhost - very good !

Now I need to figure how to automize this process on any client's machine.

Further inspiration appreciated - thanks for your help !

Best

Alex


--
http://www.carot.de
Email : alexan...@carot.de
Tel.: +49 (0)177 5719797


> Gesendet: Dienstag, 28. Juli 2020 um 08:05 Uhr
> Von: "Alexander Carôt" <alexander_ca...@gmx.net>
> An: "Mårten Nordheim" <marten.nordh...@qt.io>
> Cc: "Thiago Macieira" <thiago.macie...@intel.com>, "Paul Pfützenreuter" 
> <paul.pfuetzenreu...@gmx.de>, "interest@qt-project.org" 
> <interest@qt-project.org>
> Betreff: Re: [Interest] wss:// on localhost
>
> Hallo Marten,
> 
> thanks for your additionl reply !
> 
> There are two reasons why I have to use a secure websocket:
> 
> 1.) In some cases our website connects to our app not on localhost but some 
> other place on the LAN.
> 
> 2.) Our site is part of a CMS-based project which per default runs with SSL. 
> Changing the specific sites to no-SSL (http) and the corresponding ws leades 
> to mixed content often ignored by the browser.
> 
> In fact in our current workaroud we redirect to http and run a non-secure ws 
> but this fails for some browsers and especially in context with 1) it fails 
> completely - so I believe there is no other choice than using SSL-Websockets 
> and I am happy that theoretically there is a way to do achieve this is a 
> user-friendly way. However, I am still struggeling. So far this tutorial 
> looked promising:
> 
> https://www.freecodecamp.org/news/how-to-get-https-working-on-your-local-development-environment-in-5-minutes-7af615770eec/
> 
> but for now the localhost wss failed again. If you have another hint please 
> let me know - I won't give up ;-)
> 
> Best
> 
> Alex
> 
> 
> --
> http://www.carot.de
> Email : alexan...@carot.de
> Tel.: +49 (0)177 5719797
> 
> 
> > Gesendet: Montag, 27. Juli 2020 um 15:45 Uhr
> > Von: "Mårten Nordheim" <marten.nordh...@qt.io>
> > An: "Alexander Carôt" <alexander_ca...@gmx.net>, "Thiago Macieira" 
> > <thiago.macie...@intel.com>
> > Cc: "Paul Pfützenreuter" <paul.pfuetzenreu...@gmx.de>, 
> > "interest@qt-project.org" <interest@qt-project.org>
> > Betreff: Re: [Interest] wss:// on localhost
> >
> > Hello Alexander,
> > 
> > I don't know (or recall) what your setup is like. The following answer 
> > assumes the website you refer to also runs on the local machine:
> > 
> > Somewhat going in the other direction I'd say wss/https is not necessary if 
> > your application actually only listens to localhost (127.0.0.1/[::1]).
> > It won't travel across the network at that point, and if the local machine 
> > is compromised encryption doesn't matter much.
> > 
> > If you are listening to other addresses as well though (to let other 
> > clients in the network connect as well) then you need to generate 
> > certificates
> > that includes the hostname or IP of the machine running the server since 
> > "localhost" is no longer enough/correct for that.
> > 
> > However if the website is remote and you run attempt to connect to a 
> > websocket on the local machine then it needs to be encrypted and Thiago's
> > suggestion will get you most of the way. You will also need to get the OS 
> > to trust the certificate for the browser to accept it as well. Usually with
> > untrusted certificates browsers will show a warning and let you ignore it, 
> > but that doesn't happen in most browsers when opening a websocket
> > connection in the background!
> > 
> > Mårten
> > 
> > ________________________________________
> > From: Interest <interest-boun...@qt-project.org> on behalf of Alexander 
> > Carôt <alexander_ca...@gmx.net>
> > Sent: Tuesday, July 21, 2020 19:32
> > To: Thiago Macieira
> > Cc: Paul Pfützenreuter; interest@qt-project.org
> > Subject: Re: [Interest] wss:// on localhost
> > 
> > Hej Thiago,
> > 
> > > Whether they work or not is irrelevant, since you shouldn't be shipping 
> > > the
> > > same certificate to all users. You'd have to make it extremely long-lived
> > > (expiry 20 years from now). Generating a short-lived one (3 months) 
> > > limits the
> > > damage if it somehow gets misused.
> > 
> > 
> > just to avoid misunderstandings: The goal is not sending existing 
> > certificates as part of the application download but rather generate the 
> > certificte automatically upon launching the app ?
> > 
> > 
> > > There are lots of examples on the Internet on how to do this with the 
> > > openssl
> > > command. You'll have to find out how to do it with the API, if you don't 
> > > want
> > > to ship the command.
> > 
> > 
> > If my assumption above is right then any kind of automized process would be 
> > fine to me - e.g. running the openssl command as part of a script, which is 
> > executed before launching the application or probably generate the 
> > certificate within the app code which would be even more convenient.
> > 
> > Is this somehow the right track or am I completely mistaken ? Sorry again - 
> > completely new in the domain of security ;-)
> > 
> > Best
> > 
> > Alex
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > > 1) create a private/public key pair (usually RSA, but doesn't need to be).
> > > Creating a private key usually involves random number, so please be sure 
> > > that
> > > OpenSSL's random generator is properly seeded, if it can't be guaranteed 
> > > to
> > > auto-seed. Qt's QRandomGenerator::system() is of cryptographic quality and
> > > requires no seeding[*], so you can use it to generate random data to seed
> > > OpenSSL if necessary. RSA key pairs are usually big these days (2048 to 
> > > 4096
> > > bits), so you may want to investigate an elliptic curve key instead, which
> > > would reduce the computation time.
> > >
> > > 2) create a certificate-signing request (CSR), which contains the 
> > > certificate
> > > header fields. Notably, it has the CN (Common Name) field, which 
> > > identifies
> > > which hostnames it applies for. You want "localhost"
> > >
> > > 3) sign the CSR. You'll sign with the key used in #1, causing this to be 
> > > self-
> > > signed. The result is the certificate.
> > >
> > > There are lots of examples on the Internet on how to do this with the 
> > > openssl
> > > command. You'll have to find out how to do it with the API, if you don't 
> > > want
> > > to ship the command.
> > >
> > > For anyone wondering about turning off the SSL error on self-signed
> > > certificates: self-signing isn't inherently bad. The SSL error comes not
> > > because the certificate is self-signed, but because it's not signed by any
> > > certificate in the Certificate Authority list. The fact it's self-signed 
> > > is
> > > simply extra information, as it's the most common cause of an authority 
> > > not
> > > being found. But if you add the certificate itself to the CA list (in 
> > > fact,
> > > make it the only entry!), then it'll match to a CA and you get no SSL 
> > > error.
> > >
> > > [*] this is also why René is having problems with the RDRAND instruction 
> > > in
> > > the other thread.
> > > --
> > > Thiago Macieira - thiago.macieira (AT) intel.com
> > >   Software Architect - Intel DPG Cloud Engineering
> > >
> > >
> > >
> > > _______________________________________________
> > > Interest mailing list
> > > Interest@qt-project.org
> > > https://lists.qt-project.org/listinfo/interest
> > >
> > _______________________________________________
> > Interest mailing list
> > Interest@qt-project.org
> > https://lists.qt-project.org/listinfo/interest
> >
> _______________________________________________
> Interest mailing list
> Interest@qt-project.org
> https://lists.qt-project.org/listinfo/interest
>
_______________________________________________
Interest mailing list
Interest@qt-project.org
https://lists.qt-project.org/listinfo/interest

Reply via email to