Skip to content

Conversation

incfly
Copy link

@incfly incfly commented Nov 1, 2019

Auto mTLS user guide doc on istio.io.

A separate task page under Istio security section to explain how to use auto mutual TLS, the impact, consequences, instructions.

istio/istio#14524

@incfly incfly requested a review from a team as a code owner November 1, 2019 06:03
@googlebot googlebot added the cla: yes Set by the Google CLA bot to indicate the author of a PR has signed the Google CLA. label Nov 1, 2019
@istio-testing istio-testing added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Nov 1, 2019
@incfly
Copy link
Author

incfly commented Nov 1, 2019

/cc @linsun just fyi, if you want to provide some feedback to how to make better wording or organizing content.

@incfly
Copy link
Author

incfly commented Nov 1, 2019

@rcaballeromx This is a new doc task. let me know if you have quick early high level feedback requiring big changes first, so that we can worry about fine grane polishing later.

I should be able to get a review from @diemtvu soon on technical part.

Thanks.

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: httpbin
Copy link
Collaborator

Choose a reason for hiding this comment

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

This is the same deployment as on line 49, isn't it? Won't this replace the previous one, so the pod with sidecar will be deleted?

Why do we need both anyway? What special is it demonstrating?

Copy link
Author

Choose a reason for hiding this comment

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

This deployment is created inline, without sidecar injected, i made the changes on the label. This won't replace previous deployment (which has sidecar and different app labels).

But you're right, probably i need to modify the deployment name as well.

I'm trying to demonstrate customers don't have to worry about configuration with mTLS, even when their server workloads are partially sidecar injected. Compared with foo namespace

Copy link
Author

Choose a reason for hiding this comment

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

modified the name to be httpbin-nosidecar this should be more obvious now.

@incfly
Copy link
Author

incfly commented Nov 5, 2019

This is ready for another look, thanks! @frankbu

You should also verify that there is a default mesh authentication policy in the system, which you can do as follows:

{{< text bash >}}
$ kubectl get policies.authentication.istio.io --all-namespaces
Copy link
Contributor

Choose a reason for hiding this comment

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

Not sure if we need to mention this. It is internal policy for grafana and may confuse users.

Copy link
Author

Choose a reason for hiding this comment

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

This is copied from old doc. I think it ensure that customer dont have some leftover of their own policy, right?

Copy link
Member

@rshriram rshriram left a comment

Choose a reason for hiding this comment

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

nice!

@incfly
Copy link
Author

incfly commented Nov 6, 2019

Per @diemtvu suggestion, use new httpbin:8000/headers to get the client certificate illustrating mtls is used actually

Copy link
Contributor

@diemtvu diemtvu left a comment

Choose a reason for hiding this comment

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

/lgtm

@frankbu
Copy link
Collaborator

frankbu commented Nov 6, 2019

@incfly Thanks for clarifying things. Technically, it looks much better now! There are still lots of English wording and grammar problems that should be fixed. Not sure if it would be easier to merge it now and then fix the grammar in a followup PR, instead of trying to suggest many more changes.

@rcaballeromx @geeknoid WDYT?

@incfly
Copy link
Author

incfly commented Nov 6, 2019

@frankbu Thanks for the feedback!

Yes, to clarify, regarding the timeline, we definitely need this as minimal viable docs for this important security feature in 1.4 before release is cut. I treat this as my highest priority task at the moment.

Let me know if anything I can do on my side to expedite the doc process. @geeknoid @rcaballeromx , thanks.

* Understand Istio [authentication policy](/docs/concepts/security/#authentication-policies) and related
[mutual TLS authentication](/docs/concepts/security/#mutual-tls-authentication) concepts.

* Have a Kubernetes cluster with Istio installed (e.g use `install/kubernetes/istio-demo.yaml` as described in
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
* Have a Kubernetes cluster with Istio installed (e.g use `install/kubernetes/istio-demo.yaml` as described in
* Install Istio with the `global.mtls.enabled` option set to false and `global.mtls.auto` set to true.

Copy link
Author

Choose a reason for hiding this comment

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

applied.

Copy link
Collaborator

@frankbu frankbu left a comment

Choose a reason for hiding this comment

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

OK, let's merge this now as is. I will try to send a followup PR with grammatical improvements soon.

@istio-testing istio-testing merged commit d0dae3f into istio:master Nov 6, 2019
@incfly
Copy link
Author

incfly commented Nov 6, 2019

Thanks a lot!

@incfly incfly deleted the automtls branch November 6, 2019 23:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla: yes Set by the Google CLA bot to indicate the author of a PR has signed the Google CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants