1devicekit_selinux(8)       SELinux Policy devicekit       devicekit_selinux(8)
2
3
4

NAME

6       devicekit_selinux  -  Security  Enhanced Linux Policy for the devicekit
7       processes
8

DESCRIPTION

10       Security-Enhanced Linux secures the devicekit  processes  via  flexible
11       mandatory access control.
12
13       The  devicekit processes execute with the devicekit_t SELinux type. You
14       can check if you have these processes running by executing the ps  com‐
15       mand with the -Z qualifier.
16
17       For example:
18
19       ps -eZ | grep devicekit_t
20
21
22

ENTRYPOINTS

24       The  devicekit_t  SELinux  type can be entered via the devicekit_exec_t
25       file type.
26
27       The default entrypoint paths for the devicekit_t domain are the follow‐
28       ing:
29
30       /usr/libexec/devkit-daemon
31

PROCESS TYPES

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       devicekit  policy  is  very  flexible  allowing  users  to  setup their
40       devicekit processes in as secure a method as possible.
41
42       The following process types are defined for devicekit:
43
44       devicekit_t, devicekit_power_t, devicekit_disk_t
45
46       Note: semanage permissive -a  devicekit_t  can  be  used  to  make  the
47       process  type  devicekit_t  permissive. SELinux does not deny access to
48       permissive process types, but the AVC (SELinux  denials)  messages  are
49       still generated.
50
51

BOOLEANS

53       SELinux   policy  is  customizable  based  on  least  access  required.
54       devicekit policy is extremely flexible and has  several  booleans  that
55       allow  you to manipulate the policy and run devicekit with the tightest
56       access possible.
57
58
59
60       If you want to allow all daemons to write corefiles to /, you must turn
61       on the daemons_dump_core boolean. Disabled by default.
62
63       setsebool -P daemons_dump_core 1
64
65
66
67       If  you  want  to enable cluster mode for daemons, you must turn on the
68       daemons_enable_cluster_mode boolean. Enabled by default.
69
70       setsebool -P daemons_enable_cluster_mode 1
71
72
73
74       If you want to allow all daemons to use tcp wrappers, you must turn  on
75       the daemons_use_tcp_wrapper boolean. Disabled by default.
76
77       setsebool -P daemons_use_tcp_wrapper 1
78
79
80
81       If  you  want to allow all daemons the ability to read/write terminals,
82       you must turn on the daemons_use_tty boolean. Disabled by default.
83
84       setsebool -P daemons_use_tty 1
85
86
87
88       If you want to deny user domains applications to map a memory region as
89       both  executable  and  writable,  this  is dangerous and the executable
90       should be reported in bugzilla, you must turn on the deny_execmem bool‐
91       ean. Enabled by default.
92
93       setsebool -P deny_execmem 1
94
95
96
97       If  you  want  to deny any process from ptracing or debugging any other
98       processes, you  must  turn  on  the  deny_ptrace  boolean.  Enabled  by
99       default.
100
101       setsebool -P deny_ptrace 1
102
103
104
105       If  you  want  to  allow  any  process  to mmap any file on system with
106       attribute file_type, you must turn on the  domain_can_mmap_files  bool‐
107       ean. Enabled by default.
108
109       setsebool -P domain_can_mmap_files 1
110
111
112
113       If  you want to allow all domains write to kmsg_device, while kernel is
114       executed with systemd.log_target=kmsg parameter, you must turn  on  the
115       domain_can_write_kmsg boolean. Disabled by default.
116
117       setsebool -P domain_can_write_kmsg 1
118
119
120
121       If you want to allow all domains to use other domains file descriptors,
122       you must turn on the domain_fd_use boolean. Enabled by default.
123
124       setsebool -P domain_fd_use 1
125
126
127
128       If you want to allow all domains to have the kernel load  modules,  you
129       must  turn  on  the  domain_kernel_load_modules  boolean.  Disabled  by
130       default.
131
132       setsebool -P domain_kernel_load_modules 1
133
134
135
136       If you want to allow all domains to execute in fips_mode, you must turn
137       on the fips_mode boolean. Enabled by default.
138
139       setsebool -P fips_mode 1
140
141
142
143       If you want to enable reading of urandom for all domains, you must turn
144       on the global_ssp boolean. Disabled by default.
145
146       setsebool -P global_ssp 1
147
148
149
150       If you want to control the ability to mmap a low area  of  the  address
151       space,  as  configured  by /proc/sys/vm/mmap_min_addr, you must turn on
152       the mmap_low_allowed boolean. Disabled by default.
153
154       setsebool -P mmap_low_allowed 1
155
156
157
158       If you want to disable kernel module loading,  you  must  turn  on  the
159       secure_mode_insmod boolean. Enabled by default.
160
161       setsebool -P secure_mode_insmod 1
162
163
164
165       If  you want to boolean to determine whether the system permits loading
166       policy, setting enforcing mode, and changing boolean values.  Set  this
167       to  true  and  you  have to reboot to set it back, you must turn on the
168       secure_mode_policyload boolean. Enabled by default.
169
170       setsebool -P secure_mode_policyload 1
171
172
173
174       If you want to allow unconfined executables to make their  heap  memory
175       executable.   Doing  this  is  a  really bad idea. Probably indicates a
176       badly coded executable, but could indicate an attack.  This  executable
177       should   be   reported  in  bugzilla,  you  must  turn  on  the  selin‐
178       uxuser_execheap boolean. Disabled by default.
179
180       setsebool -P selinuxuser_execheap 1
181
182
183
184       If you want to  allow  all  unconfined  executables  to  use  libraries
185       requiring  text  relocation  that  are not labeled textrel_shlib_t, you
186       must turn on the selinuxuser_execmod boolean. Enabled by default.
187
188       setsebool -P selinuxuser_execmod 1
189
190
191
192       If you want to allow unconfined executables to make  their  stack  exe‐
193       cutable.   This  should  never, ever be necessary. Probably indicates a
194       badly coded executable, but could indicate an attack.  This  executable
195       should  be reported in bugzilla, you must turn on the selinuxuser_exec‐
196       stack boolean. Enabled by default.
197
198       setsebool -P selinuxuser_execstack 1
199
200
201
202       If you want to support X userspace object manager, you must turn on the
203       xserver_object_manager boolean. Enabled by default.
204
205       setsebool -P xserver_object_manager 1
206
207
208

MANAGED FILES

210       The  SELinux process type devicekit_t can manage files labeled with the
211       following file types.  The paths listed are the default paths for these
212       file types.  Note the processes UID still need to have DAC permissions.
213
214       file_type
215
216            all files on the system
217
218

FILE CONTEXTS

220       SELinux requires files to have an extended attribute to define the file
221       type.
222
223       You can see the context of a file using the -Z option to ls
224
225       Policy governs the access  confined  processes  have  to  these  files.
226       SELinux devicekit policy is very flexible allowing users to setup their
227       devicekit processes in as secure a method as possible.
228
229       STANDARD FILE CONTEXT
230
231       SELinux defines the file context types for the devicekit, if you wanted
232       to store files with these types in a diffent paths, you need to execute
233       the semanage command  to  sepecify  alternate  labeling  and  then  use
234       restorecon to put the labels on disk.
235
236       semanage  fcontext  -a  -t  devicekit_var_run_t  '/srv/mydevicekit_con‐
237       tent(/.*)?'
238       restorecon -R -v /srv/mydevicekit_content
239
240       Note: SELinux often uses regular expressions  to  specify  labels  that
241       match multiple files.
242
243       The following file types are defined for devicekit:
244
245
246
247       devicekit_disk_exec_t
248
249       - Set files with the devicekit_disk_exec_t type, if you want to transi‐
250       tion an executable to the devicekit_disk_t domain.
251
252
253       Paths:
254            /lib/udisks2/udisksd,                    /lib/udev/udisks-part-id,
255            /usr/lib/udisks2/udisksd,              /usr/libexec/udisks-daemon,
256            /usr/lib/udev/udisks-part-id,        /usr/libexec/udisks2/udisksd,
257            /usr/lib/udisks/udisks-daemon, /usr/libexec/devkit-disks-daemon
258
259
260       devicekit_exec_t
261
262       -  Set  files with the devicekit_exec_t type, if you want to transition
263       an executable to the devicekit_t domain.
264
265
266
267       devicekit_power_exec_t
268
269       - Set files with the devicekit_power_exec_t type, if you want to  tran‐
270       sition an executable to the devicekit_power_t domain.
271
272
273       Paths:
274            /usr/libexec/upowerd,                     /usr/lib/upower/upowerd,
275            /usr/libexec/devkit-power-daemon
276
277
278       devicekit_tmp_t
279
280       - Set files with  the  devicekit_tmp_t  type,  if  you  want  to  store
281       devicekit temporary files in the /tmp directories.
282
283
284
285       devicekit_var_lib_t
286
287       - Set files with the devicekit_var_lib_t type, if you want to store the
288       devicekit files under the /var/lib directory.
289
290
291       Paths:
292            /var/lib/udisks.*, /var/lib/upower(/.*)?, /var/lib/DeviceKit-.*
293
294
295       devicekit_var_log_t
296
297       - Set files with the devicekit_var_log_t type, if you want to treat the
298       data  as  devicekit  var  log  data,  usually stored under the /var/log
299       directory.
300
301
302       Paths:
303            /var/log/pm-suspend.log.*, /var/log/pm-powersave.log.*
304
305
306       devicekit_var_run_t
307
308       - Set files with the devicekit_var_run_t type, if you want to store the
309       devicekit files under the /run or /var/run directory.
310
311
312       Paths:
313            /var/run/udisks.*,  /var/run/devkit(/.*)?,  /var/run/upower(/.*)?,
314            /var/run/pm-utils(/.*)?, /var/run/DeviceKit-disks(/.*)?
315
316
317       Note: File context can be temporarily modified with the chcon  command.
318       If  you want to permanently change the file context you need to use the
319       semanage fcontext command.  This will modify the SELinux labeling data‐
320       base.  You will need to use restorecon to apply the labels.
321
322

COMMANDS

324       semanage  fcontext  can also be used to manipulate default file context
325       mappings.
326
327       semanage permissive can also be used to manipulate  whether  or  not  a
328       process type is permissive.
329
330       semanage  module can also be used to enable/disable/install/remove pol‐
331       icy modules.
332
333       semanage boolean can also be used to manipulate the booleans
334
335
336       system-config-selinux is a GUI tool available to customize SELinux pol‐
337       icy settings.
338
339

AUTHOR

341       This manual page was auto-generated using sepolicy manpage .
342
343

SEE ALSO

345       selinux(8),  devicekit(8), semanage(8), restorecon(8), chcon(1), sepol‐
346       icy(8)        ,        setsebool(8),         devicekit_disk_selinux(8),
347       devicekit_disk_selinux(8),                  devicekit_power_selinux(8),
348       devicekit_power_selinux(8)
349
350
351
352devicekit                          19-04-25               devicekit_selinux(8)
Impressum