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
Change seccomp default to 'docker/default' #39845
Comments
|
fwiw when we launched it with docker i tested all the publically available dockerfiles on github and docker hub with it... so it was not done without much testing, we also only had one issue iirc after the release which was a lot better than i expected. |
|
+1 for attempting to roll out the default docker configuration.
Ideally, we want users to use seccomp profiles that is fined tuned for each
container.
We might have to develop some tooling to make it easy to consume this
feature in k8s. The current approach of storing profiles on node's root
partition is complicated.
…On Tue, Feb 14, 2017 at 2:34 PM, Jess Frazelle ***@***.***> wrote:
fwiw when we launched it with docker i tested all the publically available
dockerfiles on github and docker hub with it...
so it was not done without much testing, we also only had one issue iirc
after the release which was a lot better than i expected.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#39845 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AGvIKHFfYlPID8Ijgj0aF5KaJAp4fi-9ks5rcivzgaJpZM4LifTL>
.
|
|
Just want to add my +1 for making this the default. |
Agreed, I consider this alpha-behavior. For both seccomp & apparmor I'd like to add the ability to consume a ConfigMap (or maybe a new resource) as a profile. However, I consider this tangential to the issue discussed here. Adjusting the default is already supported through the PodSecurityPolicy, but we still need to put some thought into how we'd go about rolling this out. |
|
So there are a few ways I can imagine going about this, happy to open a proposal if you if agree with any:
I am kinda in favor of 2, 3, and 4 so we have the most control. |
|
2,3 sound good to me. I think we can do (2) before fully implementing (3), since it's technically still an "alpha" feature. I think we should use the OCI spec, but I don't know the details on it. (4) is essentially already implemented on the PodSecurityPolicy, via an annotation (should graduate to a field before seccomp support goes to beta): "seccomp.security.alpha.kubernetes.io/defaultProfileName" (see https://github.com/kubernetes/kubernetes/blob/master/pkg/security/podsecuritypolicy/seccomp/strategy.go) |
makes sense
Should we use theirs as a base and make our own or vendor theirs (ie what happens if they change theirs) |
That's a question for @kubernetes/sig-api-machinery-misc, but my hunch is that we create our own copy (rather than vendoring), since I don't think we have any other examples of embedding a third party API in ours (unless it's opaque) |
|
cool thats what i was leaning towards :)
…On Mon, May 22, 2017 at 11:57 PM, Tim St. Clair ***@***.***> wrote:
Should we use theirs as a base and make our own or vendor theirs (ie what
happens if they change theirs)
That's a question for @kubernetes/sig-api-machinery-misc
<https://github.com/orgs/kubernetes/teams/sig-api-machinery-misc>, but my
hunch is that we create our own copy (rather than vendoring), since I don't
think we have any other examples of embedding a third party API in ours
(unless it's opaque)
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#39845 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABYNbFj4EA4CEFFzUjn6YDpSLmqmJi5vks5r8hLmgaJpZM4LifTL>
.
--
Jessie Frazelle
4096R / D4C4 DD60 0D66 F65A 8EFC 511E 18F3 685C 0022 BFF3
pgp.mit.edu <http://pgp.mit.edu/pks/lookup?op=get&search=0x18F3685C0022BFF3>
|
|
I'll open a proposal this afternoon :)
…On May 22, 2017 7:01 PM, "Jess Frazelle" ***@***.***> wrote:
cool thats what i was leaning towards :)
On Mon, May 22, 2017 at 11:57 PM, Tim St. Clair ***@***.***>
wrote:
> Should we use theirs as a base and make our own or vendor theirs (ie what
> happens if they change theirs)
>
> That's a question for @kubernetes/sig-api-machinery-misc
> <https://github.com/orgs/kubernetes/teams/sig-api-machinery-misc>, but
my
> hunch is that we create our own copy (rather than vendoring), since I
don't
> think we have any other examples of embedding a third party API in ours
> (unless it's opaque)
>
> —
> You are receiving this because you commented.
> Reply to this email directly, view it on GitHub
> <https://github.com/kubernetes/kubernetes/issues/
39845#issuecomment-303242333>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/
ABYNbFj4EA4CEFFzUjn6YDpSLmqmJi5vks5r8hLmgaJpZM4LifTL>
> .
>
--
Jessie Frazelle
4096R / D4C4 DD60 0D66 F65A 8EFC 511E 18F3 685C 0022 BFF3
pgp.mit.edu <http://pgp.mit.edu/pks/lookup?op=get&search=
0x18F3685C0022BFF3>
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#39845 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABYNbBZm91alwgzF1H1jqj6uylRuWWMaks5r8hPXgaJpZM4LifTL>
.
|
|
@jessfraz So can we use the default profile to set seccomp as |
|
I think we should spec the seccomp format first, refer #39128. or else, other container runtimes couldn't know how to process |
|
For other runtimes that is why we are using the docker default as a base...
not literally docker/default. but yes we can spec it out
On Thu, May 25, 2017 at 04:02 Pengfei Ni ***@***.***> wrote:
I think we should spec the seccomp format first, refer #39128
<#39128>. or else, other
container runtimes couldn't know how to process docker/default.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#39845 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABYNbPXPe5BC0qtVMEg1Fa61gXHlO8zHks5r9TWagaJpZM4LifTL>
.
--
Jessie Frazelle
4096R / D4C4 DD60 0D66 F65A 8EFC 511E 18F3 685C 0022 BFF3
pgp.mit.edu <http://pgp.mit.edu/pks/lookup?op=get&search=0x18F3685C0022BFF3>
|
|
Issues go stale after 90d of inactivity. Prevent issues from auto-closing with an If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or |
|
/remove-lifecycle stale |
|
discussion on seccomp format is here : #52827 |
|
not sure a docker-specific seccomp name is good as a default |
|
/assign @wangzhen127 |
|
@tallclair: GitHub didn't allow me to assign the following users: wangzhen127. Note that only kubernetes members and repo collaborators can be assigned. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
@wangzhen127: you can't re-open an issue/PR unless you authored it or you are assigned to it. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Use 'docker/default' as default seccomp profile for unprivileged PodSecurityPolicy **What this PR does / why we need it**: This PR sets the default seccomp profile for unprivileged PodSecurityPolicy to 'docker/default'. This PR is a followup of [#62662](#62662). We are using 'docker/default' instead of 'runtime/default' in addons in order to handle node version skew. When default seccomp profile is applied later, we can remove those annotations. **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes #39845 **Special notes for your reviewer**: **Release note**: ```release-note NONE ```
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Use default seccomp profile for unprivileged addons **What this PR does / why we need it**: This PR sets the default seccomp profile of unprivileged addons to 'docker/default'. This PR is a followup of [kubernetes#62662](kubernetes#62662) and [kubernetes#62671](kubernetes#62671). We are using 'docker/default' instead of 'runtime/default' in addons in order to handle node version skew. When seccomp profile is applied automatically by default later, we can remove those annotations. **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes kubernetes#39845 **Special notes for your reviewer**: **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 61963, 64279, 64130, 64125, 64049). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Use default seccomp profile for DNS addons. **What this PR does / why we need it**: This PR sets the default seccomp profile of DNS addons to 'docker/default'. This PR is a followup of #62662. We are using 'docker/default' instead of 'runtime/default' in addons in order to handle node version skew. When seccomp profile is applied automatically by default later, we can remove those annotations. This is PR is part of #39845. **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes # **Special notes for your reviewer**: **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 64281, 62991). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Use default seccomp profile for flutend-elasticsearch addons **What this PR does / why we need it**: This PR sets the default seccomp profile to 'docker/default' for: - fluentd-es daemon set. - kibana-logging deployment. The elasticsearch-logging stateful set is still unconfined because it uses gce:podsecuritypolicy:privileged. This PR is a followup of #62662. We are using 'docker/default' instead of 'runtime/default' in addons in order to handle node version skew. When seccomp profile is applied automatically by default later, we can remove those annotations. This is PR is part of #39845. **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes # **Special notes for your reviewer**: **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 64276, 64094, 64719, 64766, 64750). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Use default seccomp profile for GCE manifests **What this PR does / why we need it**: This PR sets the default seccomp profile of unprivileged addons to 'docker/default' for GCE manifests. This PR is a followup of kubernetes#62662. We are using 'docker/default' instead of 'runtime/default' in addons in order to handle node version skew. When seccomp profile is applied automatically by default later, we can remove those annotations. This is PR is part of kubernetes#39845. **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes # **Special notes for your reviewer**: **Release note**: ```release-note NONE ```
|
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
|
/remove-lifecycle stale |
|
long-term-issue (note to self) |
Generally, the fact that this a breaking change, and it's very hard to get breaking changes into Kubernetes these days, especially something that is hard to get visibility into. Other issues are that this is still an "alpha" feature, but predates feature gates, so it's an alpha feature that's enabled in every cluster. Before changing the default, we probably need to promote the feature to GA, which includes:
And possibly:
|
|
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
|
Stale issues rot after 30d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
|
Rotten issues close after 30d of inactivity. Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
|
@fejta-bot: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Seccomp is currently defaulted to
unconfinedon docker:kubernetes/pkg/kubelet/dockertools/docker_manager.go
Line 120 in 9a88687
I believe this is for historical reasons, from #21790. However, we now have the ability (albeit alpha) to control seccomp profiles, so we should change the default to the more secure
docker/defaultoption. This profile is carefully curated, and should provide enhanced security without breaking the majority of users. Unfortunately "the majority" is not "everybody", so changing this default would be a breaking change, and care needs to be taken when rolling it out.This may also need to wait for seccomp to be promoted to beta.
@vishh @pmorie @kubernetes/sig-node-misc
The text was updated successfully, but these errors were encountered: