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

feat(*) kuma-dp verifies connection to the kuma-cp #1065

Merged
merged 11 commits into from
Oct 16, 2020

Conversation

jakubdyszkiewicz
Copy link
Contributor

Summary

Since Bootstrap is now served via HTTPS, we should verify their cert.

I introduced a new arg to kuma-dp called ca-cert-file. When it's specified and the connection to bootstrap is HTTPS (now by default) then we verify cert.
If bootstrap uses HTTPS but we don't specify this file, we've got a warning in logs:

Connecting to HTTPS Bootstrap server without CA verification. Consider passing CA via --ca-cert-file or KUMA_CONTROL_PLANE_CA_CERT.

On Kubernetes, injector now automatically pass CA to every dataplane. I introduced new config for HELM (and kumactl install control plane) that let's you specify CA cert that then will be used for verification.

Keep in mind that DP first connects to API Server for catalog that returns path to Boostrap server. Right now is API Server is HTTP without TLS.
That means that technically someone can impersonate Control Plane and provide invalid bootstrap path, but the attacker would have to acquire cert for invalid bootstrap server signed by CA.
Overall I think we should connect directly to the bootstrap server which should have the same port for XDS, SDS, but it's not in the scope of this PR.

Documentation

  • TODO (production deployment guide?)

Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
@jakubdyszkiewicz jakubdyszkiewicz requested a review from a team as a code owner October 12, 2020 12:43
Copy link
Contributor

@austince austince left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me in terms of the chart!

docs/cmd/kumactl/HELP.md Show resolved Hide resolved
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Signed-off-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
@jakubdyszkiewicz jakubdyszkiewicz merged commit b6af290 into master Oct 16, 2020
@jakubdyszkiewicz jakubdyszkiewicz deleted the feat/kuma-dp-ca branch October 16, 2020 12:02
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

Successfully merging this pull request may close these issues.

None yet

3 participants