1zoneminder_selinux(8) SELinux Policy zoneminder zoneminder_selinux(8)
2
3
4
6 zoneminder_selinux - Security Enhanced Linux Policy for the zoneminder
7 processes
8
10 Security-Enhanced Linux secures the zoneminder processes via flexible
11 mandatory access control.
12
13 The zoneminder processes execute with the zoneminder_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 zoneminder_t
20
21
22
24 The zoneminder_t SELinux type can be entered via the zoneminder_exec_t
25 file type.
26
27 The default entrypoint paths for the zoneminder_t domain are the fol‐
28 lowing:
29
30 /usr/bin/zmpkg.pl
31
33 SELinux defines process types (domains) for each process running on the
34 system
35
36 You can see the context of a process using the -Z option to ps
37
38 Policy governs the access confined processes have to files. SELinux
39 zoneminder policy is very flexible allowing users to setup their zone‐
40 minder processes in as secure a method as possible.
41
42 The following process types are defined for zoneminder:
43
44 zoneminder_t, zoneminder_script_t
45
46 Note: semanage permissive -a zoneminder_t can be used to make the
47 process type zoneminder_t permissive. SELinux does not deny access to
48 permissive process types, but the AVC (SELinux denials) messages are
49 still generated.
50
51
53 SELinux policy is customizable based on least access required. zone‐
54 minder policy is extremely flexible and has several booleans that allow
55 you to manipulate the policy and run zoneminder with the tightest
56 access possible.
57
58
59
60 If you want to allow ZoneMinder to run su/sudo, you must turn on the
61 zoneminder_run_sudo boolean. Disabled by default.
62
63 setsebool -P zoneminder_run_sudo 1
64
65
66
67 If you want to allow users to resolve user passwd entries directly from
68 ldap rather then using a sssd server, you must turn on the authlo‐
69 gin_nsswitch_use_ldap boolean. Disabled by default.
70
71 setsebool -P authlogin_nsswitch_use_ldap 1
72
73
74
75 If you want to allow all daemons to write corefiles to /, you must turn
76 on the daemons_dump_core boolean. Disabled by default.
77
78 setsebool -P daemons_dump_core 1
79
80
81
82 If you want to enable cluster mode for daemons, you must turn on the
83 daemons_enable_cluster_mode boolean. Enabled by default.
84
85 setsebool -P daemons_enable_cluster_mode 1
86
87
88
89 If you want to allow all daemons to use tcp wrappers, you must turn on
90 the daemons_use_tcp_wrapper boolean. Disabled by default.
91
92 setsebool -P daemons_use_tcp_wrapper 1
93
94
95
96 If you want to allow all daemons the ability to read/write terminals,
97 you must turn on the daemons_use_tty boolean. Disabled by default.
98
99 setsebool -P daemons_use_tty 1
100
101
102
103 If you want to deny any process from ptracing or debugging any other
104 processes, you must turn on the deny_ptrace boolean. Enabled by
105 default.
106
107 setsebool -P deny_ptrace 1
108
109
110
111 If you want to allow any process to mmap any file on system with
112 attribute file_type, you must turn on the domain_can_mmap_files bool‐
113 ean. Enabled by default.
114
115 setsebool -P domain_can_mmap_files 1
116
117
118
119 If you want to allow all domains write to kmsg_device, while kernel is
120 executed with systemd.log_target=kmsg parameter, you must turn on the
121 domain_can_write_kmsg boolean. Disabled by default.
122
123 setsebool -P domain_can_write_kmsg 1
124
125
126
127 If you want to allow all domains to use other domains file descriptors,
128 you must turn on the domain_fd_use boolean. Enabled by default.
129
130 setsebool -P domain_fd_use 1
131
132
133
134 If you want to allow all domains to have the kernel load modules, you
135 must turn on the domain_kernel_load_modules boolean. Disabled by
136 default.
137
138 setsebool -P domain_kernel_load_modules 1
139
140
141
142 If you want to allow all domains to execute in fips_mode, you must turn
143 on the fips_mode boolean. Enabled by default.
144
145 setsebool -P fips_mode 1
146
147
148
149 If you want to enable reading of urandom for all domains, you must turn
150 on the global_ssp boolean. Disabled by default.
151
152 setsebool -P global_ssp 1
153
154
155
156 If you want to allow confined applications to run with kerberos, you
157 must turn on the kerberos_enabled boolean. Enabled by default.
158
159 setsebool -P kerberos_enabled 1
160
161
162
163 If you want to allow system to run with NIS, you must turn on the
164 nis_enabled boolean. Disabled by default.
165
166 setsebool -P nis_enabled 1
167
168
169
170 If you want to allow confined applications to use nscd shared memory,
171 you must turn on the nscd_use_shm boolean. Disabled by default.
172
173 setsebool -P nscd_use_shm 1
174
175
176
178 The SELinux process type zoneminder_t can manage files labeled with the
179 following file types. The paths listed are the default paths for these
180 file types. Note the processes UID still need to have DAC permissions.
181
182 cluster_conf_t
183
184 /etc/cluster(/.*)?
185
186 cluster_var_lib_t
187
188 /var/lib/pcsd(/.*)?
189 /var/lib/cluster(/.*)?
190 /var/lib/openais(/.*)?
191 /var/lib/pengine(/.*)?
192 /var/lib/corosync(/.*)?
193 /usr/lib/heartbeat(/.*)?
194 /var/lib/heartbeat(/.*)?
195 /var/lib/pacemaker(/.*)?
196
197 cluster_var_run_t
198
199 /var/run/crm(/.*)?
200 /var/run/cman_.*
201 /var/run/rsctmp(/.*)?
202 /var/run/aisexec.*
203 /var/run/heartbeat(/.*)?
204 /var/run/corosync-qnetd(/.*)?
205 /var/run/corosync-qdevice(/.*)?
206 /var/run/cpglockd.pid
207 /var/run/corosync.pid
208 /var/run/rgmanager.pid
209 /var/run/cluster/rgmanager.sk
210
211 faillog_t
212
213 /var/log/btmp.*
214 /var/log/faillog.*
215 /var/log/tallylog.*
216 /var/run/faillock(/.*)?
217
218 lastlog_t
219
220 /var/log/lastlog.*
221
222 motion_data_t
223
224 /var/motion(/.*)?
225
226 motion_log_t
227
228 /var/log/motion.log.*
229
230 motion_var_run_t
231
232 /var/run/motion.pid
233
234 public_content_rw_t
235
236 /var/spool/abrt-upload(/.*)?
237
238 root_t
239
240 /sysroot/ostree/deploy/.*-atomic.*/deploy(/.*)?
241 /
242 /initrd
243
244 security_t
245
246 /selinux
247
248 zoneminder_log_t
249
250 /var/log/zoneminder(/.*)?
251
252 zoneminder_spool_t
253
254 /var/spool/zoneminder-upload(/.*)?
255
256 zoneminder_tmpfs_t
257
258
259 zoneminder_var_lib_t
260
261 /var/lib/zoneminder(/.*)?
262
263 zoneminder_var_run_t
264
265
266
268 SELinux requires files to have an extended attribute to define the file
269 type.
270
271 You can see the context of a file using the -Z option to ls
272
273 Policy governs the access confined processes have to these files.
274 SELinux zoneminder policy is very flexible allowing users to setup
275 their zoneminder processes in as secure a method as possible.
276
277 STANDARD FILE CONTEXT
278
279 SELinux defines the file context types for the zoneminder, if you
280 wanted to store files with these types in a diffent paths, you need to
281 execute the semanage command to sepecify alternate labeling and then
282 use restorecon to put the labels on disk.
283
284 semanage fcontext -a -t zoneminder_var_run_t '/srv/myzoneminder_con‐
285 tent(/.*)?'
286 restorecon -R -v /srv/myzoneminder_content
287
288 Note: SELinux often uses regular expressions to specify labels that
289 match multiple files.
290
291 The following file types are defined for zoneminder:
292
293
294
295 zoneminder_content_t
296
297 - Set files with the zoneminder_content_t type, if you want to treat
298 the files as zoneminder content.
299
300
301
302 zoneminder_exec_t
303
304 - Set files with the zoneminder_exec_t type, if you want to transition
305 an executable to the zoneminder_t domain.
306
307
308
309 zoneminder_htaccess_t
310
311 - Set files with the zoneminder_htaccess_t type, if you want to treat
312 the file as a zoneminder access file.
313
314
315
316 zoneminder_initrc_exec_t
317
318 - Set files with the zoneminder_initrc_exec_t type, if you want to
319 transition an executable to the zoneminder_initrc_t domain.
320
321
322
323 zoneminder_log_t
324
325 - Set files with the zoneminder_log_t type, if you want to treat the
326 data as zoneminder log data, usually stored under the /var/log direc‐
327 tory.
328
329
330
331 zoneminder_ra_content_t
332
333 - Set files with the zoneminder_ra_content_t type, if you want to treat
334 the files as zoneminder read/append content.
335
336
337
338 zoneminder_rw_content_t
339
340 - Set files with the zoneminder_rw_content_t type, if you want to treat
341 the files as zoneminder read/write content.
342
343
344
345 zoneminder_script_exec_t
346
347 - Set files with the zoneminder_script_exec_t type, if you want to
348 transition an executable to the zoneminder_script_t domain.
349
350
351
352 zoneminder_spool_t
353
354 - Set files with the zoneminder_spool_t type, if you want to store the
355 zoneminder files under the /var/spool directory.
356
357
358
359 zoneminder_tmpfs_t
360
361 - Set files with the zoneminder_tmpfs_t type, if you want to store
362 zoneminder files on a tmpfs file system.
363
364
365
366 zoneminder_unit_file_t
367
368 - Set files with the zoneminder_unit_file_t type, if you want to treat
369 the files as zoneminder unit content.
370
371
372
373 zoneminder_var_lib_t
374
375 - Set files with the zoneminder_var_lib_t type, if you want to store
376 the zoneminder files under the /var/lib directory.
377
378
379
380 zoneminder_var_run_t
381
382 - Set files with the zoneminder_var_run_t type, if you want to store
383 the zoneminder files under the /run or /var/run directory.
384
385
386
387 Note: File context can be temporarily modified with the chcon command.
388 If you want to permanently change the file context you need to use the
389 semanage fcontext command. This will modify the SELinux labeling data‐
390 base. You will need to use restorecon to apply the labels.
391
392
394 If you want to share files with multiple domains (Apache, FTP, rsync,
395 Samba), you can set a file context of public_content_t and public_con‐
396 tent_rw_t. These context allow any of the above domains to read the
397 content. If you want a particular domain to write to the public_con‐
398 tent_rw_t domain, you must set the appropriate boolean.
399
400 Allow zoneminder servers to read the /var/zoneminder directory by
401 adding the public_content_t file type to the directory and by restoring
402 the file type.
403
404 semanage fcontext -a -t public_content_t "/var/zoneminder(/.*)?"
405 restorecon -F -R -v /var/zoneminder
406
407 Allow zoneminder servers to read and write /var/zoneminder/incoming by
408 adding the public_content_rw_t type to the directory and by restoring
409 the file type. You also need to turn on the zoneminder_anon_write
410 boolean.
411
412 semanage fcontext -a -t public_content_rw_t "/var/zoneminder/incom‐
413 ing(/.*)?"
414 restorecon -F -R -v /var/zoneminder/incoming
415 setsebool -P zoneminder_anon_write 1
416
417
418 If you want to allow ZoneMinder to modify public files used for public
419 file transfer services., you must turn on the zoneminder_anon_write
420 boolean.
421
422 setsebool -P zoneminder_anon_write 1
423
424
426 semanage fcontext can also be used to manipulate default file context
427 mappings.
428
429 semanage permissive can also be used to manipulate whether or not a
430 process type is permissive.
431
432 semanage module can also be used to enable/disable/install/remove pol‐
433 icy modules.
434
435 semanage boolean can also be used to manipulate the booleans
436
437
438 system-config-selinux is a GUI tool available to customize SELinux pol‐
439 icy settings.
440
441
443 This manual page was auto-generated using sepolicy manpage .
444
445
447 selinux(8), zoneminder(8), semanage(8), restorecon(8), chcon(1), sepol‐
448 icy(8) , setsebool(8), zoneminder_script_selinux(8), zone‐
449 minder_script_selinux(8)
450
451
452
453zoneminder 19-04-25 zoneminder_selinux(8)