1- @{DOCKER_GRAPH_PATH}=/var/lib/docker
1+ package main
2+
3+ const dockerProfileTemplate = `@{DOCKER_GRAPH_PATH}=/var/lib/docker
24
35profile /usr/bin/docker (attach_disconnected, complain) {
46 # Prevent following links to these files during container setup.
@@ -15,9 +17,11 @@ profile /usr/bin/docker (attach_disconnected, complain) {
1517
1618 umount,
1719 pivot_root,
20+ {{if ge .MajorVersion 2}}{{if ge .MinorVersion 9}}
1821 signal (receive) peer=@{profile_name},
1922 signal (receive) peer=unconfined,
2023 signal (send),
24+ {{end}}{{end}}
2125 ipc rw,
2226 network,
2327 capability,
@@ -34,10 +38,12 @@ profile /usr/bin/docker (attach_disconnected, complain) {
3438 /etc/localtime r,
3539 /etc/ld.so.cache r,
3640
41+ {{if ge .MajorVersion 2}}{{if ge .MinorVersion 9}}
3742 ptrace peer=@{profile_name},
3843 ptrace (read) peer=docker-default,
3944 deny ptrace (trace) peer=docker-default,
4045 deny ptrace peer=/usr/bin/docker///bin/ps,
46+ {{end}}{{end}}
4147
4248 /usr/lib/** rm,
4349 /lib/** rm,
@@ -57,9 +63,11 @@ profile /usr/bin/docker (attach_disconnected, complain) {
5763 /sbin/zfs rCx,
5864 /sbin/apparmor_parser rCx,
5965
66+ {{if ge .MajorVersion 2}}{{if ge .MinorVersion 9}}
6067 # Transitions
6168 change_profile -> docker-*,
6269 change_profile -> unconfined,
70+ {{end}}{{end}}
6371
6472 profile /bin/cat (complain) {
6573 /etc/ld.so.cache r,
@@ -81,8 +89,10 @@ profile /usr/bin/docker (attach_disconnected, complain) {
8189 /dev/null rw,
8290 /bin/ps mr,
8391
92+ {{if ge .MajorVersion 2}}{{if ge .MinorVersion 9}}
8493 # We don't need ptrace so we'll deny and ignore the error.
8594 deny ptrace (read, trace),
95+ {{end}}{{end}}
8696
8797 # Quiet dac_override denials
8898 deny capability dac_override,
@@ -100,11 +110,15 @@ profile /usr/bin/docker (attach_disconnected, complain) {
100110 /proc/tty/drivers r,
101111 }
102112 profile /sbin/iptables (complain) {
113+ {{if ge .MajorVersion 2}}{{if ge .MinorVersion 9}}
103114 signal (receive) peer=/usr/bin/docker,
115+ {{end}}{{end}}
104116 capability net_admin,
105117 }
106118 profile /sbin/auplink flags=(attach_disconnected, complain) {
119+ {{if ge .MajorVersion 2}}{{if ge .MinorVersion 9}}
107120 signal (receive) peer=/usr/bin/docker,
121+ {{end}}{{end}}
108122 capability sys_admin,
109123 capability dac_override,
110124
@@ -123,7 +137,9 @@ profile /usr/bin/docker (attach_disconnected, complain) {
123137 /proc/[0-9]*/mounts rw,
124138 }
125139 profile /sbin/modprobe /bin/kmod (complain) {
140+ {{if ge .MajorVersion 2}}{{if ge .MinorVersion 9}}
126141 signal (receive) peer=/usr/bin/docker,
142+ {{end}}{{end}}
127143 capability sys_module,
128144 /etc/ld.so.cache r,
129145 /lib/** rm,
@@ -137,7 +153,9 @@ profile /usr/bin/docker (attach_disconnected, complain) {
137153 }
138154 # xz works via pipes, so we do not need access to the filesystem.
139155 profile /usr/bin/xz (complain) {
156+ {{if ge .MajorVersion 2}}{{if ge .MinorVersion 9}}
140157 signal (receive) peer=/usr/bin/docker,
158+ {{end}}{{end}}
141159 /etc/ld.so.cache r,
142160 /lib/** rm,
143161 /usr/bin/xz rm,
@@ -238,4 +256,4 @@ profile /usr/bin/docker (attach_disconnected, complain) {
238256
239257 capability mac_admin,
240258 }
241- }
259+ }`
0 commit comments