-
Notifications
You must be signed in to change notification settings - Fork 130
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
Use scep without local CA #77
Comments
Sure. The entire CA component is a Go interface, with several implementations. If you want to implement the interface feel free to open a PR. Lines 10 to 15 in 0fbc95c
#2 is a related issue about making the CA pluggable. |
I'll look into it. |
We already have approval a via an exec in a recent PR. Take a look at the changes added in master and see is that works first. If you want to provide a different alternative like the one you describe you can implement the interface and exec a function. We can discuss the code specifics once there's a PR. |
+1 to this, especially if the plugin is able to talk to LetsEncrypt. Then we can get our routers to auto-enrol for free certificates. The plugin in #68 appears to be for a "CSR validation", so does this need additional work to be able to return the certificate itself? |
I foresee a potential problem. SCEP messages are signed and/or encrypted using the SCEP server's (local) CA cert and key: e.g. in func
I worry therefore that a SCEP client might find that the SCEP messages are signed by a different key than the certificate itself, and reject the certificate on that basis. As it says in the draft:
It's also unclear whether the GetCACert operation would need to return the CA certificate(s) of the third party who is actually doing the signing (e.g. LetsEncrypt), or the local "CA". If it's used to authenticate the messages (draft para 2.2), then I guess it should be the local CA. I note that Hence it probably needs prototyping and testing with a few router vendors and one or more Linux SCEP clients - including the As for the exec API, I guess it's as simple as:
Also need to decide whether scepserver will store the certs in depot or not. If it does, then the serial number will have to be extracted from the cert itself. |
You cannot use something like Let's Encrypt with SCEP. Let's Encrypt and other CAs are used as the server TLS certificates which is another use-case/problem. MicroMDM itself requires three types of x509 certificates to be fully operational.
|
SCEP (in general) can also be used to relay server certificates, not only client certificates. |
How about using the scep daemon without a local CA? Instead plugins could be used to actually issue certificates, i.e. requesting and fetching the cert from a remote CA (that does not support scep).
The text was updated successfully, but these errors were encountered: