我想知道特定的停靠容器是否运行默认的seccomp配置文件。我无法访问用于启动容器的命令行,也无法访问Dockerfile。
启动ps aufxwww时,我可以看到流程/usr/bin/dockerd-current有选项--seccomp-profile=/etc/docker/seccomp.json。这确实是默认的seccomp配置文件。
但是,启动容器化应用程序的进程/usr/bin/docker-containerd-current还没有。docker inspect返回:"SecurityOpt": null,。
那我该相信哪一个?
更令人惊讶的是,我在显式指定seccomp筛选器的同时运行了一个停靠程序。
docker run -d --security-opt seccomp=/etc/docker/seccomp.python.json friendly/proc/$pid/status文件返回seccomp 0。
据这位男子说,我本来希望:
2 SECCOMP_MODE_FILTER发布于 2018-10-30 14:47:03
我不是一个专家,实际上我找到了这个帖子,因为我搜索了同样的问题,但我发现了这个。
如果您使用Seccomp配置文件运行Docker,则可以指定nothing,而docker将使用默认设置,或者在daemon.json或命令行中自己指定配置文件,然后运行:
docker run -it alpine /bin/sh
/ # grep Seccomp /proc/1/status
Seccomp: 2正如您所看到的,您确实可以看到Seccomp过滤器在码头内。如果显式地告诉docker在没有Seccomp配置文件的情况下运行,就会得到0。
docker run -it --security-opt seccomp=unconfine alpine /bin/sh
/ # grep Seccomp /proc/1/status
Seccomp: 0所以你可以从码头里面看到它。也许这是有意义的,因为需要被Seccomp配置文件限制的是Docker内部的进程。
您还可以通过下载默认配置文件测试概要文件,并从其中删除某些内容,例如chown,然后尝试:
docker run -it --security-opt seccomp=/etc/docker/myseccomp.json alpine /bin/sh
/ # touch testfile
/ # chown 100.100 testfile
chown: testfile: Operation not permitted最后,根据手册页,从内核4.14中可以看到如下内容:
/proc/sys/kernel/seccomp/actions_avail这在我的4.9内核中是不存在的。我希望这对某人有帮助。
https://serverfault.com/questions/929589
复制相似问题