1cupsd_selinux(8)             SELinux Policy cupsd             cupsd_selinux(8)
2
3
4

NAME

6       cupsd_selinux - Security Enhanced Linux Policy for the cupsd processes
7

DESCRIPTION

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

ENTRYPOINTS

23       The cupsd_t SELinux type can be entered via the cupsd_exec_t file type.
24
25       The default entrypoint paths for the cupsd_t domain are the following:
26
27       /usr/sbin/cupsd
28

PROCESS TYPES

30       SELinux defines process types (domains) for each process running on the
31       system
32
33       You can see the context of a process using the -Z option to ps
34
35       Policy  governs  the  access confined processes have to files.  SELinux
36       cupsd policy is very flexible allowing users to setup their cupsd  pro‐
37       cesses in as secure a method as possible.
38
39       The following process types are defined for cupsd:
40
41       cupsd_t, cupsd_config_t, cupsd_lpd_t, cups_pdf_t
42
43       Note:  semanage  permissive  -a cupsd_t can be used to make the process
44       type cupsd_t permissive. SELinux does not  deny  access  to  permissive
45       process  types, but the AVC (SELinux denials) messages are still gener‐
46       ated.
47
48

BOOLEANS

50       SELinux policy is customizable based on least access  required.   cupsd
51       policy is extremely flexible and has several booleans that allow you to
52       manipulate the policy and run cupsd with the tightest access possible.
53
54
55
56       If you want to allow all daemons to write corefiles to /, you must turn
57       on the allow_daemons_dump_core boolean. Disabled by default.
58
59       setsebool -P allow_daemons_dump_core 1
60
61
62
63       If  you want to allow all daemons to use tcp wrappers, you must turn on
64       the allow_daemons_use_tcp_wrapper boolean. Disabled by default.
65
66       setsebool -P allow_daemons_use_tcp_wrapper 1
67
68
69
70       If you want to allow all daemons the ability to  read/write  terminals,
71       you  must  turn  on  the  allow_daemons_use_tty  boolean.  Disabled  by
72       default.
73
74       setsebool -P allow_daemons_use_tty 1
75
76
77
78       If you want to allow all domains to use other domains file descriptors,
79       you must turn on the allow_domain_fd_use boolean. Enabled by default.
80
81       setsebool -P allow_domain_fd_use 1
82
83
84
85       If  you  want  to allow confined applications to run with kerberos, you
86       must turn on the allow_kerberos boolean. Enabled by default.
87
88       setsebool -P allow_kerberos 1
89
90
91
92       If you want to allow sysadm to debug or ptrace all processes, you  must
93       turn on the allow_ptrace boolean. Disabled by default.
94
95       setsebool -P allow_ptrace 1
96
97
98
99       If  you  want  to  allow  system  to run with NIS, you must turn on the
100       allow_ypbind boolean. Disabled by default.
101
102       setsebool -P allow_ypbind 1
103
104
105
106       If you want to enable cluster mode for daemons, you must  turn  on  the
107       daemons_enable_cluster_mode boolean. Disabled by default.
108
109       setsebool -P daemons_enable_cluster_mode 1
110
111
112
113       If  you  want to allow all domains to have the kernel load modules, you
114       must  turn  on  the  domain_kernel_load_modules  boolean.  Disabled  by
115       default.
116
117       setsebool -P domain_kernel_load_modules 1
118
119
120
121       If you want to allow all domains to execute in fips_mode, you must turn
122       on the fips_mode boolean. Enabled by default.
123
124       setsebool -P fips_mode 1
125
126
127
128       If you want to enable reading of urandom for all domains, you must turn
129       on the global_ssp boolean. Disabled by default.
130
131       setsebool -P global_ssp 1
132
133
134
135       If you want to enable support for upstart as the init program, you must
136       turn on the init_upstart boolean. Enabled by default.
137
138       setsebool -P init_upstart 1
139
140
141
142       If you want to allow confined applications to use nscd  shared  memory,
143       you must turn on the nscd_use_shm boolean. Enabled by default.
144
145       setsebool -P nscd_use_shm 1
146
147
148

MANAGED FILES

150       The SELinux process type cupsd_t can manage files labeled with the fol‐
151       lowing file types.  The paths listed are the default  paths  for  these
152       file types.  Note the processes UID still need to have DAC permissions.
153
154       cluster_conf_t
155
156            /etc/cluster(/.*)?
157
158       cluster_var_lib_t
159
160            /var/lib(64)?/openais(/.*)?
161            /var/lib(64)?/pengine(/.*)?
162            /var/lib(64)?/corosync(/.*)?
163            /usr/lib(64)?/heartbeat(/.*)?
164            /var/lib(64)?/heartbeat(/.*)?
165            /var/lib(64)?/pacemaker(/.*)?
166            /var/lib/cluster(/.*)?
167
168       cluster_var_run_t
169
170            /var/run/crm(/.*)?
171            /var/run/cman_.*
172            /var/run/rsctmp(/.*)?
173            /var/run/aisexec.*
174            /var/run/heartbeat(/.*)?
175            /var/run/cpglockd.pid
176            /var/run/corosync.pid
177            /var/run/rgmanager.pid
178            /var/run/cluster/rgmanager.sk
179
180       cupsd_interface_t
181
182            /etc/cups/interfaces(/.*)?
183
184       cupsd_lock_t
185
186
187       cupsd_log_t
188
189            /var/log/cups(/.*)?
190            /var/log/turboprint.*
191            /usr/local/Brother/fax/.*.log.*
192
193       cupsd_rw_etc_t
194
195            /etc/printcap.*
196            /etc/cups/ppd(/.*)?
197            /var/cache/cups(/.*)?
198            /etc/cups/certs/.*
199            /etc/cups/lpoptions.*
200            /var/cache/foomatic(/.*)?
201            /usr/local/Brother/(.*/)?inf(/.*)?
202            /usr/local/Printer/(.*/)?inf(/.*)?
203            /etc/cups/cupsd.conf.*
204            /var/lib/cups/certs/.*
205            /opt/gutenprint/ppds(/.*)?
206            /etc/cups/classes.conf.*
207            /etc/cups/printers.conf.*
208            /etc/cups/subscriptions.*
209            /usr/local/linuxprinter/ppd(/.*)?
210            /var/cache/alchemist/printconf.*
211            /etc/alchemist/namespace/printconf(/.*)?
212            /etc/cups/certs
213            /etc/cups/ppds.dat
214            /var/lib/cups/certs
215            /usr/share/foomatic/db/oldprinterids
216
217       cupsd_tmp_t
218
219
220       cupsd_var_run_t
221
222            /var/ccpd(/.*)?
223            /var/ekpd(/.*)?
224            /var/run/cups(/.*)?
225            /var/turboprint(/.*)?
226
227       faillog_t
228
229            /var/log/btmp.*
230            /var/log/faillog.*
231            /var/log/tallylog.*
232            /var/run/faillock(/.*)?
233
234       initrc_tmp_t
235
236
237       krb5_host_rcache_t
238
239            /var/cache/krb5rcache(/.*)?
240            /var/tmp/host_0
241            /var/tmp/HTTP_23
242
243       mnt_t
244
245            /mnt(/[^/]*)
246            /mnt(/[^/]*)?
247            /rhev(/[^/]*)?
248            /media(/[^/]*)
249            /media(/[^/]*)?
250            /etc/rhgb(/.*)?
251            /media/.hal-.*
252            /net
253            /afs
254            /rhev
255            /misc
256
257       pcscd_var_run_t
258
259            /var/run/pcscd.events(/.*)?
260            /var/run/pcscd.pid
261            /var/run/pcscd.pub
262            /var/run/pcscd.comm
263
264       print_spool_t
265
266            /var/spool/lpd(/.*)?
267            /var/spool/cups(/.*)?
268            /var/spool/cups-pdf(/.*)?
269
270       root_t
271
272            /
273            /initrd
274
275       samba_var_t
276
277            /var/nmbd(/.*)?
278            /var/lib/samba(/.*)?
279            /var/cache/samba(/.*)?
280
281       security_t
282
283
284       tmp_t
285
286            /tmp
287            /usr/tmp
288            /var/tmp
289            /tmp-inst
290            /var/tmp-inst
291            /var/tmp/vi.recover
292
293       usbfs_t
294
295
296

FILE CONTEXTS

298       SELinux requires files to have an extended attribute to define the file
299       type.
300
301       You can see the context of a file using the -Z option to ls
302
303       Policy governs the access  confined  processes  have  to  these  files.
304       SELinux  cupsd  policy  is  very flexible allowing users to setup their
305       cupsd processes in as secure a method as possible.
306
307       STANDARD FILE CONTEXT
308
309       SELinux defines the file context types for the cupsd, if you wanted  to
310       store  files  with  these types in a diffent paths, you need to execute
311       the semanage command  to  sepecify  alternate  labeling  and  then  use
312       restorecon to put the labels on disk.
313
314       semanage fcontext -a -t cupsd_var_run_t '/srv/mycupsd_content(/.*)?'
315       restorecon -R -v /srv/mycupsd_content
316
317       Note:  SELinux  often  uses  regular expressions to specify labels that
318       match multiple files.
319
320       The following file types are defined for cupsd:
321
322
323
324       cupsd_config_exec_t
325
326       - Set files with the cupsd_config_exec_t type, if you want  to  transi‐
327       tion an executable to the cupsd_config_t domain.
328
329
330       Paths:
331            /usr/sbin/hal_lpadmin,   /usr/libexec/hal_lpadmin,  /usr/bin/cups-
332            config-daemon, /usr/sbin/printconf-backend, /lib/udev/udev-config‐
333            ure-printer, /usr/libexec/cups-pk-helper-mechanism
334
335
336       cupsd_config_var_run_t
337
338       -  Set files with the cupsd_config_var_run_t type, if you want to store
339       the cupsd config files under the /run or /var/run directory.
340
341
342
343       cupsd_etc_t
344
345       - Set files with the cupsd_etc_t type, if you want to store cupsd files
346       in the /etc directories.
347
348
349       Paths:
350            /etc/cups(/.*)?, /usr/share/cups(/.*)?
351
352
353       cupsd_exec_t
354
355       -  Set  files  with the cupsd_exec_t type, if you want to transition an
356       executable to the cupsd_t domain.
357
358
359
360       cupsd_initrc_exec_t
361
362       - Set files with the cupsd_initrc_exec_t type, if you want  to  transi‐
363       tion an executable to the cupsd_initrc_t domain.
364
365
366
367       cupsd_interface_t
368
369       -  Set  files with the cupsd_interface_t type, if you want to treat the
370       files as cupsd interface data.
371
372
373
374       cupsd_lock_t
375
376       - Set files with the cupsd_lock_t type, if you want to treat the  files
377       as cupsd lock data, stored under the /var/lock directory
378
379
380
381       cupsd_log_t
382
383       - Set files with the cupsd_log_t type, if you want to treat the data as
384       cupsd log data, usually stored under the /var/log directory.
385
386
387       Paths:
388            /var/log/cups(/.*)?,                        /var/log/turboprint.*,
389            /usr/local/Brother/fax/.*.log.*
390
391
392       cupsd_lpd_exec_t
393
394       -  Set  files with the cupsd_lpd_exec_t type, if you want to transition
395       an executable to the cupsd_lpd_t domain.
396
397
398       Paths:
399            /usr/lib/cups/daemon/cups-lpd, /usr/lib64/cups/daemon/cups-lpd
400
401
402       cupsd_lpd_tmp_t
403
404       - Set files with the cupsd_lpd_tmp_t type, if you want to  store  cupsd
405       lpd temporary files in the /tmp directories.
406
407
408
409       cupsd_lpd_var_run_t
410
411       - Set files with the cupsd_lpd_var_run_t type, if you want to store the
412       cupsd lpd files under the /run or /var/run directory.
413
414
415
416       cupsd_rw_etc_t
417
418       - Set files with the cupsd_rw_etc_t type, if you want to store cupsd rw
419       files in the /etc directories.
420
421
422       Paths:
423            /etc/printcap.*,    /etc/cups/ppd(/.*)?,    /var/cache/cups(/.*)?,
424            /etc/cups/certs/.*,                         /etc/cups/lpoptions.*,
425            /var/cache/foomatic(/.*)?,     /usr/local/Brother/(.*/)?inf(/.*)?,
426            /usr/local/Printer/(.*/)?inf(/.*)?,        /etc/cups/cupsd.conf.*,
427            /var/lib/cups/certs/.*,                /opt/gutenprint/ppds(/.*)?,
428            /etc/cups/classes.conf.*,               /etc/cups/printers.conf.*,
429            /etc/cups/subscriptions.*,      /usr/local/linuxprinter/ppd(/.*)?,
430            /var/cache/alchemist/printconf.*,  /etc/alchemist/namespace/print‐
431            conf(/.*)?,          /etc/cups/certs,          /etc/cups/ppds.dat,
432            /var/lib/cups/certs, /usr/share/foomatic/db/oldprinterids
433
434
435       cupsd_tmp_t
436
437       - Set files with the cupsd_tmp_t type, if you want to store cupsd  tem‐
438       porary files in the /tmp directories.
439
440
441
442       cupsd_var_run_t
443
444       -  Set  files  with  the cupsd_var_run_t type, if you want to store the
445       cupsd files under the /run or /var/run directory.
446
447
448       Paths:
449            /var/ccpd(/.*)?, /var/ekpd(/.*)?, /var/run/cups(/.*)?, /var/turbo‐
450            print(/.*)?
451
452
453       Note:  File context can be temporarily modified with the chcon command.
454       If you want to permanently change the file context you need to use  the
455       semanage fcontext command.  This will modify the SELinux labeling data‐
456       base.  You will need to use restorecon to apply the labels.
457
458

COMMANDS

460       semanage fcontext can also be used to manipulate default  file  context
461       mappings.
462
463       semanage  permissive  can  also  be used to manipulate whether or not a
464       process type is permissive.
465
466       semanage module can also be used to enable/disable/install/remove  pol‐
467       icy modules.
468
469       semanage boolean can also be used to manipulate the booleans
470
471
472       system-config-selinux is a GUI tool available to customize SELinux pol‐
473       icy settings.
474
475

AUTHOR

477       This manual page was auto-generated using sepolicy manpage .
478
479

SEE ALSO

481       selinux(8), cupsd(8), semanage(8),  restorecon(8),  chcon(1)  ,  setse‐
482       bool(8),          cups_pdf_selinux(8),         cupsd_config_selinux(8),
483       cupsd_lpd_selinux(8)
484
485
486
487cupsd                              15-06-03                   cupsd_selinux(8)
Impressum