1cloud_init_selinux(8) SELinux Policy cloud_init cloud_init_selinux(8)
2
3
4
6 cloud_init_selinux - Security Enhanced Linux Policy for the cloud_init
7 processes
8
10 Security-Enhanced Linux secures the cloud_init processes via flexible
11 mandatory access control.
12
13 The cloud_init processes execute with the cloud_init_t SELinux type.
14 You can check if you have these processes running by executing the ps
15 command with the -Z qualifier.
16
17 For example:
18
19 ps -eZ | grep cloud_init_t
20
21
22
24 The cloud_init_t SELinux type can be entered via the cloud_init_exec_t
25 file type.
26
27 The default entrypoint paths for the cloud_init_t domain are the fol‐
28 lowing:
29
30 /usr/lib/systemd/system-generators/cloud-init.*, /usr/bin/cloud-init,
31 /usr/libexec/min-cloud-agent, /usr/libexec/min-metadata-service
32
34 SELinux defines process types (domains) for each process running on the
35 system
36
37 You can see the context of a process using the -Z option to ps
38
39 Policy governs the access confined processes have to files. SELinux
40 cloud_init policy is very flexible allowing users to setup their
41 cloud_init processes in as secure a method as possible.
42
43 The following process types are defined for cloud_init:
44
45 cloud_init_t
46
47 Note: semanage permissive -a cloud_init_t can be used to make the
48 process type cloud_init_t permissive. SELinux does not deny access to
49 permissive process types, but the AVC (SELinux denials) messages are
50 still generated.
51
52
54 SELinux policy is customizable based on least access required.
55 cloud_init policy is extremely flexible and has several booleans that
56 allow you to manipulate the policy and run cloud_init with the tightest
57 access possible.
58
59
60
61 If you want to dontaudit all daemons scheduling requests (setsched,
62 sys_nice), you must turn on the daemons_dontaudit_scheduling boolean.
63 Enabled by default.
64
65 setsebool -P daemons_dontaudit_scheduling 1
66
67
68
69 If you want to deny user domains applications to map a memory region as
70 both executable and writable, this is dangerous and the executable
71 should be reported in bugzilla, you must turn on the deny_execmem bool‐
72 ean. Disabled by default.
73
74 setsebool -P deny_execmem 1
75
76
77
78 If you want to control the ability to mmap a low area of the address
79 space, as configured by /proc/sys/vm/mmap_min_addr, you must turn on
80 the mmap_low_allowed boolean. Disabled by default.
81
82 setsebool -P mmap_low_allowed 1
83
84
85
86 If you want to allow system to run with NIS, you must turn on the
87 nis_enabled boolean. Disabled by default.
88
89 setsebool -P nis_enabled 1
90
91
92
93 If you want to disable kernel module loading, you must turn on the se‐
94 cure_mode_insmod boolean. Disabled by default.
95
96 setsebool -P secure_mode_insmod 1
97
98
99
100 If you want to allow unconfined executables to make their heap memory
101 executable. Doing this is a really bad idea. Probably indicates a
102 badly coded executable, but could indicate an attack. This executable
103 should be reported in bugzilla, you must turn on the selinuxuser_ex‐
104 echeap boolean. Disabled by default.
105
106 setsebool -P selinuxuser_execheap 1
107
108
109
110 If you want to allow unconfined executables to make their stack exe‐
111 cutable. This should never, ever be necessary. Probably indicates a
112 badly coded executable, but could indicate an attack. This executable
113 should be reported in bugzilla, you must turn on the selinuxuser_exec‐
114 stack boolean. Enabled by default.
115
116 setsebool -P selinuxuser_execstack 1
117
118
119
121 The SELinux process type cloud_init_t can manage files labeled with the
122 following file types. The paths listed are the default paths for these
123 file types. Note the processes UID still need to have DAC permissions.
124
125 file_type
126
127 all files on the system
128
129
131 SELinux requires files to have an extended attribute to define the file
132 type.
133
134 You can see the context of a file using the -Z option to ls
135
136 Policy governs the access confined processes have to these files.
137 SELinux cloud_init policy is very flexible allowing users to setup
138 their cloud_init processes in as secure a method as possible.
139
140 STANDARD FILE CONTEXT
141
142 SELinux defines the file context types for the cloud_init, if you
143 wanted to store files with these types in a different paths, you need
144 to execute the semanage command to specify alternate labeling and then
145 use restorecon to put the labels on disk.
146
147 semanage fcontext -a -t cloud_init_exec_t '/srv/cloud_init/con‐
148 tent(/.*)?'
149 restorecon -R -v /srv/mycloud_init_content
150
151 Note: SELinux often uses regular expressions to specify labels that
152 match multiple files.
153
154 The following file types are defined for cloud_init:
155
156
157
158 cloud_init_exec_t
159
160 - Set files with the cloud_init_exec_t type, if you want to transition
161 an executable to the cloud_init_t domain.
162
163
164 Paths:
165 /usr/lib/systemd/system-generators/cloud-init.*, /usr/bin/cloud-
166 init, /usr/libexec/min-cloud-agent, /usr/libexec/min-metadata-ser‐
167 vice
168
169
170 cloud_init_tmp_t
171
172 - Set files with the cloud_init_tmp_t type, if you want to store cloud
173 init temporary files in the /tmp directories.
174
175
176
177 cloud_init_unit_file_t
178
179 - Set files with the cloud_init_unit_file_t type, if you want to treat
180 the files as cloud init unit content.
181
182
183 Paths:
184 /usr/lib/systemd/system/cloud-init.*, /usr/lib/systemd/sys‐
185 tem/cloud-config.*
186
187
188 Note: File context can be temporarily modified with the chcon command.
189 If you want to permanently change the file context you need to use the
190 semanage fcontext command. This will modify the SELinux labeling data‐
191 base. You will need to use restorecon to apply the labels.
192
193
195 semanage fcontext can also be used to manipulate default file context
196 mappings.
197
198 semanage permissive can also be used to manipulate whether or not a
199 process type is permissive.
200
201 semanage module can also be used to enable/disable/install/remove pol‐
202 icy modules.
203
204 semanage boolean can also be used to manipulate the booleans
205
206
207 system-config-selinux is a GUI tool available to customize SELinux pol‐
208 icy settings.
209
210
212 This manual page was auto-generated using sepolicy manpage .
213
214
216 selinux(8), cloud_init(8), semanage(8), restorecon(8), chcon(1), sepol‐
217 icy(8), setsebool(8)
218
219
220
221cloud_init 23-10-20 cloud_init_selinux(8)