Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make support for trusting self-signed certificates in AdhocBrowserPool #333

Open
wzin opened this issue Feb 20, 2017 · 4 comments
Open

Make support for trusting self-signed certificates in AdhocBrowserPool #333

wzin opened this issue Feb 20, 2017 · 4 comments
Assignees

Comments

@wzin
Copy link
Contributor

wzin commented Feb 20, 2017

Overview:

Consider following scenario:

  • browser pool is configured to trust an SSL certificate that's available under http://lg-head:8080/self-signed.crt
  • when pool starts up, it automatically trusts the cert by adding it to system's nssdb:
certutil -d sql:${HOME}/.pki/nssdb -A -t "P,," -n self-signed-crt-host -i self-signed-crt-host

Requirements:

  • make adhoc browser pool attempt to fetch all certificates that are mentioned in ros params that are starting with ~ssl_trust_*
  • make adhoc browser pool iterate over all URLs that are values to abovementioned rosparams and execute addition/trust command idempotently:
certutil -d sql:${HOME}/.pki/nssdb -A -t "P,," -n self-signed-crt-host -i self-signed-crt-host
  • make the pool crash after 10 attempts of not being able to download and trust the certs
  • make sure that nothing interferes with nssdb between relaunches
  • make sure that it's retrofitted (supports upstarts managed ssl)
    bonus point:
  • make sure upstart job does not remove the database
@wzin wzin added this to the Development milestone Feb 20, 2017
@wzin wzin modified the milestones: LG 2.4.0, Development Mar 28, 2017
@minshallj minshallj assigned minshallj and FuriousJulius and unassigned minshallj Apr 5, 2017
@minshallj
Copy link
Contributor

we need to not start any browser before all certificates have been trusted

@minshallj
Copy link
Contributor

So we followed instructions on how to make a https server & self signed key here:

https://anvileight.uk/blog/2016/03/20/simple-http-server-with-python/

But even after running the certutil command manually, we still get the chrome "not trusted" page

@wzin wzin changed the title Make support for trusting self-signed certificates Make support for trusting self-signed certificates in AdhocBrowserPool Apr 12, 2017
@axisofentropy
Copy link
Contributor

Can we add to Chrome's trusted CA list instead of one individual certificate? For example, we could configure LG Chrome to trust End Point's existing CA, then use it to easily sign lots of certs.

@jonjensen
Copy link
Member

@axisofentropy We definitely shouldn't be using literal self-signed certs, as you surmise. But End Point's existing CA is end of life. We're making a new one, but we wouldn't use that for LG stuff anyway. The LG infrastructure should have its own CA, I think.

@minshallj minshallj modified the milestones: LG 2.5.0, LG 2.4.0 Apr 19, 2017
@minshallj minshallj removed this from the LG 2.5.0 milestone May 16, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants